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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.07.2015, 06:17   #1  
ruselhope is offline
ruselhope
Участник
 
71 / 10 (1) +
Регистрация: 26.10.2006
Добрый день, уважаемые и опытные форумчане!

Есть отдельная програмка, в которой юзеры создают товары, спецификации и квоты. Нужно эти товары, спецификации и квоты импортировать в Навижн.
Импорт должен идти по расписанию, без участия юзеров.
Проблема в том, что Navision4 SP2, и 10 лет назад никто не подумал купить парочку датапортов.
Слава Богу, есть 1 кодеюнит.

У меня вопросы такие:
1)есть еще какие-то варианты, кроме создания функции в кодеюните, которая будет считывать файл, и делать insert, update, validate и прочее?
2)Если других вариантов нет, то насколько критично такое прямое "запихивание" в базу данных (таблицы Item, Item Unit of Measure, Sales Header, Sales Line)?
3)На что обратить внимание?

Буду благодарна за ваши мысли и идеи.
Старый 24.07.2015, 10:42   #2  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от ruselhope Посмотреть сообщение
2)Если других вариантов нет, то насколько критично такое прямое "запихивание" в базу данных (таблицы Item, Item Unit of Measure, Sales Header, Sales Line)?
Ну попробуйте например запихнуть в Sales Line напрямую без валидейтов какую-нибудь ерунду (Item No. которого в ДБ нет) и попробуйте для оной сделать проводку.
И чем вам не нравится "запихивать" данные кодеюнитом используя валидейты и прочее?
Старый 24.07.2015, 12:42   #3  
Smart is offline
Smart
Участник
 
51 / 13 (1) ++
Регистрация: 09.06.2005
Добрый день,
- "стандартных" датапортов нет? Если есть, то можно их переписать
- почему же только кодеюнит, еще репорты есть
Старый 24.07.2015, 15:03   #4  
ruselhope is offline
ruselhope
Участник
 
71 / 10 (1) +
Регистрация: 26.10.2006
Цитата:
Сообщение от Smart Посмотреть сообщение
Добрый день,
- "стандартных" датапортов нет? Если есть, то можно их переписать
- почему же только кодеюнит, еще репорты есть
1) стандартные все уже переписаны ( Больше нет.
2) меня волнует, что я буду писать в базу, минуя датапорты. Кто-то такое реализовывал? Если я правильно помню, случалось, что какой-то триггер не срабатывал или срабатывал не так, когда его писали напрямую в коде. Или написание через репорт и кодеюнит не считается записью напрямую в базу? И там все нормально проходит.
Старый 24.07.2015, 15:08   #5  
ruselhope is offline
ruselhope
Участник
 
71 / 10 (1) +
Регистрация: 26.10.2006
Цитата:
Сообщение от AlexB Посмотреть сообщение
Цитата:
Сообщение от ruselhope Посмотреть сообщение
2)Если других вариантов нет, то насколько критично такое прямое "запихивание" в базу данных (таблицы Item, Item Unit of Measure, Sales Header, Sales Line)?
Ну попробуйте например запихнуть в Sales Line напрямую без валидейтов какую-нибудь ерунду (Item No. которого в ДБ нет) и попробуйте для оной сделать проводку.
И чем вам не нравится "запихивать" данные кодеюнитом используя валидейты и прочее?
я попробую сделать проводку, только я опасаюсь, что косяки полезут тогда, когда откатить не будет возможности. Или в случае моих таблиц ждать косяков не приходится?
мне не хочется использовать для импорта кодеюнит, потому что там начинаются проблемы с файлами, кодировками, разделителями, а потом обработками каждого поля, которое надо правильно валидейтить. Вот я интересуюсь, может, есть какой-то другой метод? И есть ли кто-нибудь, кто писал из файла напрямую в Навижн, и что у вас после этого получилось?
Старый 24.07.2015, 15:26   #6  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Используйте хоть кодъюнит, хоть репорт, хоть форму.
Можно читать стримы, можно общаться с офисными документами (эксель, например), да хоть бинарники разбирайте
Заполняя данные в Наве, используйте VALIDATE, INSERT(TRUE), MODIFY(TRUE)
Все будет хорошо (рано или поздно)
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 24.07.2015, 16:14   #7  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от ruselhope Посмотреть сообщение
Или написание через репорт и кодеюнит не считается записью напрямую в базу?
Вы серьёзно? Тогда посмотрите ну хотя бы стандартный Codeunit 80, там много "INSERT"-ов и MODIFY. Считается это записью напрямую в базу или не считается, хотя производится из codeunit'a? Вы NAV-программист или что другое?
Старый 24.07.2015, 17:46   #8  
ruselhope is offline
ruselhope
Участник
 
71 / 10 (1) +
Регистрация: 26.10.2006
Цитата:
Сообщение от AlexB Посмотреть сообщение
Цитата:
Сообщение от ruselhope Посмотреть сообщение
Или написание через репорт и кодеюнит не считается записью напрямую в базу?
Вы серьёзно? Тогда посмотрите ну хотя бы стандартный Codeunit 80, там много "INSERT"-ов и MODIFY. Считается это записью напрямую в базу или не считается, хотя производится из codeunit'a? Вы NAV-программист или что другое?
Согласна, при учете идет аналог того, что мне, видимо, придется написать.
Датапорт-то не просто так изобретали. Если бы все было просто с Insert и Modify, все бы это делали направо-налево, но что-то не пишут тут люди, которые это сделали и у них потом все было ок. Хочется избежать ошибок, или по крайней мере минимизировать риск.
Дуд, спасибо за подсказку. Фраза "рано или поздно" внушает сдержанный оптимизм
AlexB, вам тоже спасибо за идею покопаться в 80 кодеюните.
Старый 24.07.2015, 20:09   #9  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
имхо, вашей квалификации недостаточно чтобы написать импорт, и при этом "все бы было хорошо".
давайте задачу решать.
у нас 2 пути: либо вы начинаете программировать в Nav самостоятельно, читаете мануалы, разбираете куски кода, либо вы ставите задачу так:
"вот формат текстового файла с тестовым примером, мне надо чтобы это загружалось в Нав на регулярной основе."
и, возможно, кто-то из форумчан за приемлемую денежку для вас это сделает (на вскидку трудозатраты 2-3 часа на само задание + настройка регламентного автозапуска).
потому что полноценно проконсультировать вас как программачить в Наве раз в 30 продолжительнее.
так что проще озвучить бюджет задачи и наверняка найдутся желающие.
 


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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:58.