04.08.2003, 18:18 | #1 |
Участник
|
Как автоматически заполнить поле InventDimId в таблице PriceDiscTable при импорте?
Если экспортировать таблицу, поля заполнены автоматически сгенерированными записями.
Вопрос: как заполнить эти поля при импорте данных? Пробовал ставить "" - запись импортируется, но не появляется в форме. |
|
04.08.2003, 19:19 | #2 |
NavAx
|
Это в трешке такое поле появилось? В 2.5 нет такого поля и не хватает его очень :-(
P.S. А вот itemCode безумная задумка, можно подумать, бывают группы товаров, в которых цена на все позиции одинаковая... |
|
05.08.2003, 00:08 | #3 |
Участник
|
Если импорт из текстового фалйа, то надо воспользоваться обработчиком поля на Х++.
Примерно так, как это сделано в пункте 7 статьи о импорте из текстового файла. http://axapta.mazzy.ru/hints/import/ |
|
05.08.2003, 10:48 | #4 |
Участник
|
Насколько я понимаю, данная
На указанной странице приведен код:
str convert(str input) { input = strfmt("%1", LedgerTable::find(input).RecID); return input; } Как я понял, он генерирует RecId для генерации inventdimid я преддположил, что нужно использовать следующий код str convert(str input) { input = inventDim::FindOrCreate(); return input; } однако компилятор выдает ошибку: *** Ошибка: 10, Задано неправильное число аргументов функции. Вопрос: Правильно ли я пытаюсь присвоить новый InventItemID, если да, то какой синтаксис у этой команды, в help ничего по этому объекту найти не могу... |
|
05.08.2003, 12:48 | #5 |
Участник
|
Если тебе нужен "пустой" InventDimId, то вот так:
input = inventDim::inventDimIdBlank(); |
|
05.08.2003, 16:20 | #6 |
Участник
|
Спасибо, таблицу импортнул.
Обнаружил интересную деталь - раньше (до импорта) в поле INVENTDIMID система автоматически кидала записи, сделанные на основе шаблона из серий документов - Шаблон Управление запасами- Номер аналитики , формата ХХХ000001, ХХХ00002 и т.д. А в процессе импорта туда забивались записи "Axapta". Теперь же, после импорта, запись, введенная вручную тоже получает INVENTDIMID "Axapta". Очень интересно, почему так получается и не является ли это ошибкой? |
|
06.08.2003, 11:29 | #7 |
Участник
|
Тут следующая фишка - если при вызове InventDimIdBlank в таблице InventDim записи с "пустым" InventDimId еще нет, то он создаст эту запись с InventDimId = 'Axapta'.
Если "Axapta" раздражает, то перед импортом можно создать "пустую" запись самим: InventDim di; ; di.clear(); InventDim::findOrCreate(di); Тогда он проставит ей InventDimId в соответсвии с номерной серией складской аналитики (ХХХ00000X), и InventDimIdBlank() будет возвращать его. А чем "Axapta" плох? |
|