I have since taken a combinatorics course and decided to share what I learned.
You use generating functions. First, examine the case where the order the objects are chosen does not matter. If you have 3 red objects, 5 green objects, and 4 blue objects, we can represent the question as a polynomial, specifically
$(1+x+x^2+x^3)(1+x+x^2+x^3+x^4+x^5)(1+x+x^2+x^3+x^4)$
where the first factor represents the red objects, the second represents the green, and the third represents the blue. After multiplying out the polynomial and combining like terms, simply look at the coefficient of the correct term. If you wanted to know how many ways to choose $n$ objects, you would look at the coefficient of the $x^n$ term. In this example, the expanded then simplified polynomial is
$1+3x+6x^2+10x^3+14x^4+17x^5+18x^6+17x^7+14x^8+10x^9+6x^{10}+3x^{11}+x^{12}$
So if we want to know how many ways to pick 6 objects where the order of the objects doesn't matter, we would look at the $x^6$ coefficient, which is 18 in this case.
Notice that the coefficient of $x^{12}$ is 1. This makes sense because choosing twelve chooses all the objects, and since order is irrelevant, only one way exists, i.e. choosing all of them. In general this method works because when you multiply the polynomial, you are getting all the possible ways to add up to each degree. So for $x^6$, we are seeing the instance where there are 3 reds, 3 greens, and 0 blues (multiply the $x^3$ term from the reds, the $x^3$ term from the greens, and the 1 term from the blues) which is added to the case where there are two of each (multiplying the $x^2$ term from each factor), which is added to all the other possible ways to add up to 6 using the numbers at hand.
For the general process asked for in the question, look for the coefficient of $x^m$ in the polynomial
$(1+x+x^2+...+x^{k_1})(1+x+x^2+...+x^{k_2})(1+x+x^2+...+x^{k_3})...(1+x+x^2+...+x^{k_n})$
For the case where order matters, which was what the question really asked for, you use an exponential generating function. The main difference is that every $x^n$ is divided by $n!$ (so each term looks like $\frac{x^n}{n!}$). You also look at the coefficient of $\frac{x^m}{m!}$It's just like the first example and the reasoning is similar. The $x^3$ term still represents the cases where 3 objects are chosen from that category, but now it has an extra bit attached that says how many different ways there are to order those three objects.
The first example rewritten for when order matters looks like this:
$(1+x+\frac{x^2}{2!}+\frac{x^3}{3!})(1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\frac{x^5}{5!})(1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!})$
So to be clear, the answer to how many ways there are to pick $m$ objects from this pool where the order matters is the coefficient of $\frac{x^m}{m!}$, which is just like asking for the coefficient of $x^m$ and multiplying it by $m!$.
Notice that the coefficient of $\frac{x^{12}}{12!}$ in this example is $\frac{12!}{3!5!4!}$, which corresponds to the formula posted in the question where $m=\sum_{i=1}^{n}k_i$.
For the general process asked for in the question, look for the coefficient of $x^m$ in the polynomial
$(1+x+\frac{x^2}{2!}+...+\frac{x^{k_1}}{k_1!})(1+x+\frac{x^2}{2!}+...+\frac{x^{k_2}}{k_2!})(1+x+\frac{x^2}{2!}+...+\frac{x^{k_3}}{k_3!})...(1+x+\frac{x^2}{2!}+...+\frac{x^{k_n}}{k_n!})$
and multiply the answer by $m!$