Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Вопрос о Загрузка данных из табличного документа

Вопрос о Загрузка данных из табличного документа
Я
   KazSever
 
12.10.16 - 14:47
Добрый день, ситуация такая - нужно сообщить о не найденной номенклатуре.
Кто может подсказать как это сделать?

    РезПоиска = Справочники.Номенклатура.НайтиПоНаименованию(ТекстЯчейки);
    Если РезПоиска = Справочники.Номенклатура.ПустаяСсылка() Тогда
        Сообщить("Объект не найден: """ + ТекстЯчейки +"""");
    Иначе 
        Сообщить("Объект найден " + РезПоиска);
    КонецЕсли;
        Результат = РезПоиска; 
Данный код хоть и выдает сообщения нашел/не нашел но при этом ни каких изменений не делает с номенклатурой, хот стоит настройка, что если находит, то устанавливать ИСТИНА,но такое не происходит...
 
 
   DrShad
 
1 - 12.10.16 - 14:52
а Результат это что? может типы не совпадают?
   KazSever
 
2 - 12.10.16 - 14:53
(1) есть такое подозрение, но гугл не помог найти ответ
   KazSever
 
3 - 12.10.16 - 14:54
(1) пробовал ПолучитьОбъект - вообще выдавало ошибку метаданных
   DrShad
 
4 - 12.10.16 - 14:55
и все таки что есть Результат?
   KazSever
 
5 - 12.10.16 - 14:57
В тексте выражения можно использовать следующие предопределенные параметры:
   Результат      - результат вычисления (на входе - значение по умолчанию)
   ТекстЯчейки    - текст текущей ячейки
   ТекстыЯчеек    - массив текстов ячеек строки
   ТекущиеДанные  - структура загруженных значений
   ОписаниеОшибки - описание ошибки, выводимое в примечание ячейки и в окно сообщений
Встроенные функции, функции общих модулей.
   DrShad
 
6 - 12.10.16 - 14:58
а я то все голову ломаю к чему тут Загрузка данных из ТД
   DrShad
 
7 - 12.10.16 - 14:59
теперь бы контекст выполнения кода из (0)
   KazSever
 
8 - 12.10.16 - 15:00
согласен, это обработка
   KazSever
 
9 - 12.10.16 - 15:01
(7) не совсем понял
   DrShad
 
10 - 12.10.16 - 15:09
(9) код полностью твой?
 
 Рекламное место пустует
   KazSever
 
11 - 12.10.16 - 15:11
это весь код (0)
   DrShad
 
12 - 12.10.16 - 15:15
(11) ок, для какого реквизита справочника используется данный алгоритм?
   KazSever
 
13 - 12.10.16 - 15:23
Вообще у нас свой реквизит, не из типовой конфы, тип булево
   DrShad
 
14 - 12.10.16 - 15:28
(13) и ты для Булево присваиваешь ссылку и возмущаешься что Результат не отображается?
   KazSever
 
15 - 12.10.16 - 15:31
хм...
мысль понял, попробую сейчас
   KazSever
 
16 - 12.10.16 - 15:35
хотя нет, это ведь поиск, а присваивание идет отдельно, в своем параметре.
Если изменить режим загрузки у "Наименование" на "Искать", то все отрабатывает на ура, только не выдает какую номенклатуру не удалось найти
   DrShad
 
17 - 12.10.16 - 15:37
что-то ты делаешь не так
   KazSever
 
18 - 12.10.16 - 15:38
определенно...
   DrShad
 
19 - 12.10.16 - 15:40
обычно те строки в которых нет найденных ссылок подсвечены примечанием или наоборот уже не помню
   KazSever
 
20 - 12.10.16 - 15:43
увы такого нет (19)
   Михаил Козлов
 
21 - 12.10.16 - 16:14
(20) На кнопку "Контроль заполнения" жали?
   Has
 
22 - 12.10.16 - 16:19
РезПоиска = Справочники.Номенклатура.НайтиПоНаименованию(ТекстЯчейки);
...
Результат = РезПоиска; 

я так и не понял как после (11) и (13) следует (16)
   T3Mka
 
23 - 12.10.16 - 16:56
(22) это фетишь
   KazSever
 
24 - 12.10.16 - 18:00
(23) Конечно, каждый мыслит в меру своей испорченности...
   KazSever
 
25 - 12.10.16 - 18:01
(21) На кнопку контроль нажимал - происходит вывод сообщений согласно условию в (0), никаких примечаний и красных черточек нет.
   KazSever
 
26 - 12.10.16 - 18:05
Вот ссылка на скриншот 
https://drive.google.com/open?id=0B6JiLTBC0aMgNWdXRXJhX2c0bFU
   KazSever
 
27 - 12.10.16 - 18:06
(26) Скриншот обработки "агрузка данных из табличного документа"
   KazSever
 
28 - 12.10.16 - 18:09
Вот так выглядит после нажатия кнопки "Контроль заполнения"

https://drive.google.com/open?id=0B6JiLTBC0aMgYWE3RlN0QkJ6S0k
   Михаил Козлов
 
29 - 12.10.16 - 18:54
(26) А почему не просто искать по наименованию?
   KazSever
 
30 - 12.10.16 - 18:59
(29) Если просто искать, то в служебных сообщениях появляются записи, которые были изменены (т.е. найдены в базе), но нужно знать и те позиции, которые не удалось найти.
   KazSever
 
31 - 13.10.16 - 06:30
Похоже, что решение только такое 
https://drive.google.com/open?id=0B6JiLTBC0aMgd3FTWE96RExXblU
   MaxS
 
32 - 13.10.16 - 07:15
Допустим загружается 50 тысяч позиций номенклатуры.
Какой смысл будет от 50 тыс строк, сформированных командой "Сообщить"?
И традиционная проблема - запрос в цикле.
   KazSever
 
33 - 13.10.16 - 09:51
(32)  я готов рассматривать все варианты
 
 


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует