21.04.2015, 08:43 | #1 |
Программатор
|
SumBy в 12-ке
Коллеги, доброго времени суток! Делаю разноску списка прихода из журнала прибытия. Нужна суммарная обработка. Вот код
X++: purchFormLetter = PurchFormLetter::construct(DocumentStatus::ReceiptsList, "", "", SysOperationExecutionMode::Synchronous, callerMenuItem); purchFormLetter.parmCallerMenuItem(callerMenuItem); purchFormLetter.purchTable(purchTable); purchFormLetter.specQty(PurchUpdate::ReceiveNow); q.dataSourceTable(tableNum(WMSJournalTrans)).addRange(fieldNum(WMSJournalTrans, JournalId)).value(queryValue(WMSJournalId)); purchFormLetter.chooseLinesQuery(new SysQueryRun(q)); purchFormLetter.chooseLines(true); ttsBegin; purchParmUpdate = purchFormLetter.purchParmUpdate(); purchParmUpdate.selectForUpdate(true); purchParmUpdate.SumPurchId = purchTable.PurchId; purchParmUpdate.SumBy = AccountOrder::Order; purchParmUpdate.update(); ttsCommit; purchFormLetter.purchParmUpdate(purchParmUpdate); if (!purchFormLetter.shouldSkipPrompt() && purchFormLetter.prompt()) Заранее спасибо! |
|
21.04.2015, 09:59 | #2 |
Гость
|
Могу ошибаться так как под рукой нет тестовых данных но на самой форме PurchEditLines меня смущает код в
методе run типа sumBy.selection(purchEditLinesForm.sumByIndex2Selection(purchEditLinesForm.sumBy())); purchParmUpdate.SumBy = purchEditLinesForm.sumBy(); element.sumByChanged(true); который возможно и отправляет в сад все остальное Последний раз редактировалось axm2013; 21.04.2015 в 10:24. |
|
21.04.2015, 10:18 | #3 |
Программатор
|
Сразу после super в run в форме рождается purchParmUpdate, но уже без нужных полей... Этот код видел...(Его тоже надо будет обойти в моем случае).Даже если его просто закомментить, то результата не дает. Где то не пакуется? перезатирается? я в замешательстве...
|
|
21.04.2015, 10:31 | #4 |
Гость
|
А как закомментили? Только выделенную строчку или ниже тоже?
И собственно элемент формы SumBy инициализируете где? Последний раз редактировалось axm2013; 21.04.2015 в 10:36. |
|
21.04.2015, 10:31 | #5 |
Программатор
|
X++: /*
sumBy.selection(purchEditLinesForm.sumByIndex2Selection(purchEditLinesForm.sumBy()));
purchParmUpdate.SumBy = purchEditLinesForm.sumBy();
element.sumByChanged(true);
*/ if (purchParmUpdate.ParmId) вот purchParmUpdate без sumPurchId |
|
21.04.2015, 10:38 | #6 |
Программатор
|
нашел \Forms\PurchEditLines\Methods\sumByChanged
в этом методе есть переменная initSumPurchId, которая нигде не инициализируется... Вот если ее проинициализировать в методе run, где инициализируется initSumNum, то суммарный заказ подставляется! ураааааааа |
|
21.04.2015, 10:46 | #7 |
Гость
|
Забавно но такая же ошибка и в SalesEditLines/ (initSumSalesId)
К чему бы это? Это же явно какой то знак. |
|
21.04.2015, 10:50 | #8 |
Программатор
|
копипаста?)
|
|
21.04.2015, 11:04 | #9 |
Гость
|
|
|
21.04.2015, 11:27 | #10 |
Программатор
|
|
|