AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.10.2005, 12:46   #1  
Saska is offline
Saska
Участник
 
18 / 10 (1) +
Регистрация: 09.12.2004
Пытаюсь через датапорт в таблицу Покупка Заголовок внести данные, которые готовятся сторонней программой. Фвйл читается, все поля вроде нормально разбираются. НО! Номера документов в Покупка Заголовок проставляются автоматически. Все это делается в тригере OnInsert этой таблицы. Так вот я столкнулся с тем, что если вставлять запись в эту таблицу вручную (например нажатием F3) то триггер отрабатывает. А вот если делать в датапорте "Покупка Заголовок".INSERT то триггер не срабатывает и, соответственно, документ не получает номер.

ЧТо я делаю неправильно? Может, с нумерацие из-под датапортов надо работать по-другому?
Старый 07.10.2005, 12:54   #2  
Alterant is offline
Alterant
Участник
 
378 / 10 (1) +
Регистрация: 31.03.2004
Глобальный совет - читайте документацию, хотя бы справку.

А что касается вставки, то делайте
<div class='CALtop'>C/AL</div><div class='CAL'>
"Покупка Заголовок".INSERT(TRUE);
</div>
Старый 07.10.2005, 16:42   #3  
johndoe is offline
johndoe
Участник
 
88 / 10 (1) +
Регистрация: 15.10.2004
Адрес: Москва
Цитата:
Сообщение от Alterant
Глобальный совет - читайте документацию, хотя бы справку.

А что касается вставки, то делайте
<div class='CALtop'>C/AL</div><div class='CAL'>
"Покупка Заголовок".INSERT(TRUE);
</div>
... Alterant имеет в виду триггер OnAfterImportRecord. А в триггер OnBeforeImportRecord лучше включить вызов Init, чтобы при чтении из файла каждый заголовок покупки был "свежим" и не содержал данных предшествующей записи
Старый 07.10.2005, 16:57   #4  
Шрэк is offline
Шрэк
Участник
Аватар для Шрэк
 
645 / 24 (2) +++
Регистрация: 09.02.2004
Адрес: Москва
Цитата:
Сообщение от johndoe
А в триггер OnBeforeImportRecord лучше включить вызов Init, чтобы при чтении из файла каждый заголовок покупки был "свежим" и не содержал данных предшествующей записи
Прямо, по книжке Девелопмент сказано!
__________________
MBS Certified Master in Navision Developer
Старый 07.10.2005, 17:17   #5  
Галина is offline
Галина
Участник
 
1,132 / 28 (3) +++
Регистрация: 01.07.2003
Замечу что не всегда помогает INIT. Когда программно вставляешь записи например, в таблицу Клиент, там очень интересно прописано присвоение Номера клиенту(используются серии номеров). И в этом случае при вставке первой записи все отрабатывает нормально, а перед вставкой второй записи хоть и делаешь INIT- увы номер не очищается и приходится в ручную его очищать , а уже после при INSERT(TRUE) присваивается следующий номер. Аналогично и в Поставщиках.
Старый 11.10.2005, 19:47   #6  
apanko is offline
apanko
MCTS
MCBMSS
Лучший по профессии 2009
 
1,164 / 139 (7) +++++
Регистрация: 24.02.2005
Здравствуйте Коллеги,

Что-то у меня с дата-портом не идет. Хочу загрузить журнал переоценки.
Если заполнять его руками: то указываем товар, выбираем операцию к которой будем применять переоценку и новую цену. Все остальное заполняется автоматически.
Шаблон, раздел и строку я указал в файле загрузки. Указал Номер и дату документа и дату учета. Указал тип операции Приход и тип операции стоимости Переоценка.

Последними у меня стоят Товар, Applies-to Entry и Unit Cost. У всех опция CallFieldValidate стоит ДА.
Подскажите еще что-нибудь указывать надо? А то ничего само рассчитываться не хочет (единица измерения после Товар Но., количество и склад, после applies-to). Да еще и орет про то что Количество в ед. измерения не должно быть 0. Книжку про объекты - читал, хелп тоже.

C/Al код никакой не писал.



АП
Старый 17.10.2005, 11:59   #7  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Цитата:
Сообщение от Галина
Замечу что не всегда помогает INIT. Когда программно вставляешь записи например, в таблицу Клиент, там очень интересно прописано присвоение Номера клиенту(используются серии номеров). И в этом случае при вставке первой записи все отрабатывает нормально, а перед вставкой второй записи хоть и делаешь INIT- увы номер не очищается и приходится в ручную его очищать , а уже после при INSERT(TRUE) присваивается следующий номер. Аналогично и в Поставщиках.
INIT не чистит полей первичного ключа. Поэтому их нужно очищать руками, если это необходимо. В любых таблицах, хоть в Поставщиках, хоть где угодно.
Старый 17.10.2005, 12:03   #8  
SVG is offline
SVG
Участник
 
201 / 10 (1) +
Регистрация: 15.11.2004
1. об этом кстати в хелпе написано.
2. как вариант - вместо INIT юзать CLEAR - он чистит.
Старый 17.10.2005, 12:10   #9  
Галина is offline
Галина
Участник
 
1,132 / 28 (3) +++
Регистрация: 01.07.2003
Цитата:
Сообщение от SVG
1. об этом кстати в хелпе написано.
2. как вариант - вместо INIT юзать CLEAR - он чистит.
Romeo и SVG - спасибо-не увидела
Старый 17.10.2005, 12:18   #10  
Jackal1 is offline
Jackal1
Участник
 
54 / 10 (1) +
Регистрация: 29.07.2005
Адрес: Киев
Цитата:
Сообщение от apanko
Здравствуйте Коллеги,

Что-то у меня с дата-портом не идет. Хочу загрузить журнал переоценки.
Если заполнять его руками: то указываем товар, выбираем операцию к которой будем применять переоценку и новую цену. Все остальное заполняется автоматически.
Шаблон, раздел и строку я указал в файле загрузки. Указал Номер и дату документа и дату учета. Указал тип операции Приход и тип операции стоимости Переоценка.

Последними у меня стоят Товар, Applies-to Entry и Unit Cost. У всех опция CallFieldValidate стоит ДА.
Подскажите еще что-нибудь указывать надо? А то ничего само рассчитываться не хочет (единица измерения после Товар Но., количество и склад, после applies-to).  Да еще и орет про то что Количество в ед. измерения не должно быть 0. Книжку про объекты - читал, хелп тоже.

C/Al код никакой не писал. 



АП
Дело в том что CallFieldValidate = ДА, не всегда коректно отрабатывает (даже очень не всегда).
Поэтому в подобной ситуации поможет явный валидэйт полей из кода.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:05.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.