|
![]() |
#1 |
Участник
|
Sorry, переменная, естественно, называется curTime и объявляется
timeofday curTime |
|
![]() |
#2 |
Участник
|
посмотрите в обозреватале таблицы SalesTable для данного конкретного заказа, у которого в отчет 0 выводится - поле CreatedTime заполнено?
Если заполнено, то в месте, где выводится это поле в отчет, выведите еще в инфолог: info(int2str(curTime)) - должно быть целое число >0. Если все правильно, то что-то не так в самом отчете. |
|
![]() |
#3 |
Участник
|
И еще покажите, как у вас переменная SalesTable инициализируется - какой запрос или метод find?
|
|
![]() |
#4 |
Участник
|
Значение для строки заказа есть. Инфолог выводит 0.
Вот кусок кода отчета: if (!firstRow) { //Выводим строку для предыдущей группы s += curRow + colsDelim + strfmt("%1", decround(curWeight, 2)) + colsDelim + strfmt("%1", decround(curConfirmedWeight, 2)) + colsDelim + strfmt("%1", decround(curWeightBrutto, 2)) + colsDelim + strfmt("%1", decround(curVolume, 2)) + colsDelim + strfmt("%1", decround(curPalletQty, 2)) + colsDelim + strfmt("%1", decround(curAmount, 2)) + colsDelim + strfmt("%1", time2str(curTime, 99, 1)); allWeight += curWeight; allConfirmedWeight += curConfirmedWeight; allWeightBrutto += curWeightBrutto; allVolume += curVolume; allPalletQty += curPalletQty; allAmount += curAmount; s += rowsDelim; } firstRow = false; curRow = int2str(i) + colsDelim + excelExp.formatValue(salesTable.SalesId) + colsDelim + excelExp.formatValue(salesTable.PurchOrderFormNum) + colsDelim + excelExp.formatValue(salesTable.CustAccount) + colsDelim + excelExp.formatValue(CustTable.NameAlias) + colsDelim + excelExp.formatValue(salesTable.DeliveryAddress) + printInventLocation(); // valio shol 09/05/14 curWeight = salesLine.QtyOrdered * inventTable.NetWeight; curConfirmedWeight = confirmInventQty * inventTable.NetWeight; curWeightBrutto = confirmInventQty * (inventTable.NetWeight + inventTable.TaraWeight); curVolume = confirmInventQty * ((inventTable.Height/1000) * (inventTable.Width/1000) * (inventTable.Depth/1000)); curPalletQty = inventTable.standardPalletQuantity ? (decround(confirmInventQty/inventTable.standardPalletQuantity,2)) : 0; curAmount = custConfirmjour.ConfirmAmount; curTime = salesTable.CreatedTime; info(int2str(curTime)); } |
|
![]() |
#5 |
Участник
|
Покажите select, который выбирает данные из SalesTable.
Может, у вас там перечислены отдельные поля, и среди них нет CreatedTime. |
|
![]() |
#6 |
Участник
|
void makeReport()
{ Query query = new Query(); QueryBuildDataSource qbdsSalesTable, qbdsSalesLine; QueryRun qrRun; int i; SalesTable salesTable; CustTable custTable; SalesLine salesLine; InventTable inventTable; |
|
![]() |
#7 |
Участник
|
Покажите весь код от начала метода до строки
X++: While(qrRun.next()) ![]() |
|
![]() |
#8 |
Участник
|
Чтобы не париться, предлагаю следующий способ:
Объявляете новую переменную с типом SalesTable X++: SalesTable localSalesTable; X++: localSalesTable = salesTable::find(salesTable.SalesId); curTime = localSalesTable.CreatedTime; info(int2str(curTime)); |
|
|
За это сообщение автора поблагодарили: Ulyxess (1). |
![]() |
#9 |
Участник
|
Спасибо, Ace, помогла новая переменная
![]() А смысл можете объяснить? Какой группировки не было? |
|
![]() |
#10 |
Участник
|
|
|
Теги |
query, select, field |
|
|