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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.11.2015, 17:23   #1  
anlex is offline
anlex
Участник
 
38 / 10 (1) +
Регистрация: 20.03.2009
NAV 2009 R2

у стороннего функционала при импорте XML-файла, полученного из NAV, есть условие на существование определенного узла в ветке....

Вопрос.

Можно ли каким-то образом по определенному условию не выводит строку Node с его содержимым (например, если дальнейшая ветка пустая)
-очищал значения
-MinOccurs в Zero
не помогает
выходит с пустыми значениями.



P.S.
Статформы для таможни узел SupplementaryQuantity ветки GoodsInfo не должен совсем выводится, если у кода ТНВЭД не требуются инфы по ед.измерениям
Старый 13.11.2015, 12:59   #2  
Captain is offline
Captain
Участник
Лучший по профессии 2017
 
300 / 81 (3) ++++
Регистрация: 28.02.2003
.SKIP; На узле при заданных условиях.
__________________
---------------------------------------------------------------------------------------------
"Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица
Старый 13.11.2015, 13:31   #3  
anlex is offline
anlex
Участник
 
38 / 10 (1) +
Регистрация: 20.03.2009
Цитата:
Сообщение от captain Посмотреть сообщение
.SKIP; На узле при заданных условиях.

Спасибо за ответ.

Да, только при вставке в

[Node Name] - Export::OnBeforePassVariable()

IF ..... THEN
currXMLport.SKIP;

сам [Node Name] в файл попадает, но уже без вложенных веток (что уже хорошо)....

а можно ветку полностью убрать? т.е. сам [Node Name]
Старый 13.11.2015, 15:38   #4  
Captain is offline
Captain
Участник
Лучший по профессии 2017
 
300 / 81 (3) ++++
Регистрация: 28.02.2003
Не проверял, но может на триггере AfterGetRecord сделать попытку. Узлы с MinOccurs =0 убираются только скипами.
__________________
---------------------------------------------------------------------------------------------
"Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица
Старый 17.05.2016, 19:28   #5  
Predatore is offline
Predatore
Участник
 
163 / 17 (1) ++
Регистрация: 29.09.2010
А у меня тоже вопрос про XMLPort, только про выгрузку в текстовый файл. Всё просто, указываем
Format: Variable Text
FieldSeparator: ;
Остальное оставляем как есть. Прошу заметить, что FieldDelimiter по умолчанию, это пустая строка. Но что же видим на выходе? Все поля почему-то взяты в кавычки! WTF? Само по себе это не напрягает, создаю я csv файл и эксель нормально игнорит эти кавычки, если вдруг в поле не встретятся такие же кавычки. И вот тут начинается черотовщина с кривой экранизацией и прочим.
Как лечить?
Старый 17.05.2016, 22:59   #6  
Predatore is offline
Predatore
Участник
 
163 / 17 (1) ++
Регистрация: 29.09.2010
Цитата:
Сообщение от Predatore Посмотреть сообщение
А у меня тоже вопрос про XMLPort, только про выгрузку в текстовый файл. Всё просто, указываем
Format: Variable Text
FieldSeparator: ;
Остальное оставляем как есть. Прошу заметить, что FieldDelimiter по умолчанию, это пустая строка. Но что же видим на выходе? Все поля почему-то взяты в кавычки! WTF? Само по себе это не напрягает, создаю я csv файл и эксель нормально игнорит эти кавычки, если вдруг в поле не встретятся такие же кавычки. И вот тут начинается черотовщина с кривой экранизацией и прочим.
Как лечить?
Сам нашёл решение. Оно довольно простое. Не верьте свойству установленному в дизайнере, врёт оно, напишите в коде currXMLport.FIELDDELIMITER := ''; и будет счастье.
Старый 20.05.2016, 08:49   #7  
Constantine_imported is offline
Constantine_imported
Участник
 
126 / 10 (1) +
Регистрация: 28.04.2011
Попробуйте в свойствах указать <None>, для датапорта это работает.
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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