I'm reading up on Linear Programming and wanted to build a model for a scenario where there a set of N nodes should be found to be source for an order that has S set of items
\begin{align} N_1, N_2, \ldots, N_n &\Rightarrow \text{ Nodes that hold items} \\ S_1, S_2, \ldots, S_m &\Rightarrow \text{ Items requested in an order} \\ n &= \text{ Total number of nodes} \\ m &= \text{ Total number of items in the order} \\ R(S_j) &= \text{ Requested quantity of item } S_j \\ T(N_i) &= \text{ Shipping cost to ship the order from $N_i$ (or part of the order} \\ & \quad\,\,\text{ if only some of the items are decided to be shipped from $N_i$)} \\ A(Ni, Sj) &= \text{ Quantities of $S_j$ available at node $N_i$} \end{align}
These values are available. The following values will be produced as solution: \begin{align} Q(N_i, S_j) &= \text{ Quantity of item $S_j$ that will be shipped from node $N_i$} \\ Y(N_i) &= \text{ Binary variable to denote if Node $N_i$ was selected as one of the} \\ &\quad\,\,\text{ source nodes. Allowed value $= 0$ (if not selected) or $1$ (if selected)} \\ 1 \leq i &\leq n \\ 1 \leq j &\leq m \end{align} With these variables, I build the following objective function-
$$f = \sum_i [T(N_i)\cdot Y(N_i)] \text{ Total shipping cost from all the selected nodes}$$ such that
\begin{align} \textstyle\sum_i [Q(N_i,S_j)] &= R(S_j) \text{ Quantities of item $S_j$ shipped from all the nodes} \\ &\quad\text{ should be equal to the requested quantity} \\ Q(N_i,S_j) &\leq A(N_i,S_j) \text{ Quantities of $S_j$ shipping from node $N_i$ should} \\ &\quad\text{ be less than or equal to available quantity of $S_j$ at node $N_i$} \end{align} Does this model look right? Am I missing something in building the model?
Also, how good of an option is linear programming for this type of scenarios in real world?