Добрый день!
Есть следующая задача: необходимо проимпортировать из 1C данные типа Документы. Одним из полей импорта является номер счета. Счета уже проимпортированны и номер счета совпадает с полем [НомерДок]. Для того, чтобы заполнить поле [Счет] в скрипте инпорта пишу следующее:
function OnBeforeRecordImport(Param, Dataset, Select1C) {
var InvoiceNumber = Select1C.QueryLink.НомерДок;
var DatasetInvoice = Services.GetSingleItemByUSI('ds_Invoice');
DatasetInvoice.Close();
ApplyDatasetFilter(DatasetInvoice, 'InvoiceNumber', InvoiceNumber, true);
DatasetInvoice.Open();
Dataset.Values('InvoicesID') = DatasetInvoice.Values('ID');
Dataset.Values('Number') = InvoiceNumber;
DatasetInvoice.Close();
EnableDatasetFilters(DatasetInvoice, false, 'InvoiceNumber');
}
Но после фильтрации записей в DatasetInvoice нет, хотя точно известно, что запись с номером [InvoiceNumber] существует. Если вместо InvoiceNumber поставить конкретное число, например,
ApplyDatasetFilter(DatasetInvoice, 'InvoiceNumber', 1, true) , то все работает.