Факты:
1) В названии сф присутвовал обратный слэш, например так: CF\32.
2) Один из классов участвующей в механизме разнесения накл. расходов:
\Classes\MarkupAllocation_VendInvoiceTrans\queryBuild
PHP код:
QueryRun queryBuild()
{
QueryRun query;
;
query = new QueryRun(querystr(VendInvoiceTrans));
query.query().dataSourceTable(tablenum(VendInvoiceTrans)).rangeField(fieldnum(VendInvoiceTrans, purchID)).value(strFmt('%1',purchId));
query.query().dataSourceTable(tablenum(VendInvoiceTrans)).rangeField(fieldnum(VendInvoiceTrans, invoiceId)).value(strFmt('%1',invoiceId));
return query;
}
Особенно вот:
PHP код:
.... value(strFmt('%1',invoiceId));
3) Так вот - vendInvoiceTrans с таким invoiceId не будет найден, хотя он в таблице есть.
Выводы:
1) помогает
PHP код:
.value(strFmt('%1',queryValue(invoiceId)));
2) Но лучше запретить пользователям использовать обратный слэш вообще.
Почему? Да потому что по все системе это может аукнуться. Например я заказ создал
в названии которого обратный слэш - и все
приплыли, счет фактуру по нему не получиться сделать - не находяться строки заказа
при фактуровании.
3) И еще один момент : возможно это и было исправлено каким либо сервис паком.. у
нас только второй стоит. Кстати дата последней модификации класса этого:
01.11.2000, слой CUS. Выше слоев нет.