Имя: Пароль:
1C
1С v8
Странно ведет себя выгрузка 7.7-8.2
,
0 kn
 
20.04.14
16:48
Приветствую.
Делаю выгрузку из ТИС 9.2 в БП 2.0 номенклатуры.Если выгружать номенклатуру просто без функции ПередОбработкой в ПВД, то она выгружается - Ок,если в немного усложнить написать способ выборки Произвольный алгоритм и в ПередОбработкой вызов несложного алгоритма
,то работать перестает, судя по комментарию выгружать начинает пустую ссылку, посмотрите ,уважаемые форумчане, что не так.

Запрос=СоздатьОбъект("Запрос");
    
ТекстЗапроса="
    |Период с ДатаНачала1 по ДатаОкончания1;
    |Номенклатура=Регистр.ОстаткиТМЦ.Номенклатура;
    |Количество=Регистр.ОстаткиТМЦ.Количество;
    |Функция КонОст=КонОст(Количество);
    |Функция Приход=Приход(Количество);
    |Функция Расход=Расход(Количество);
    |Группировка Номенклатура Без Групп;";
    
ДатаНачала1 = Дата(2014,4,17);
ДатаОкончания1 = Дата(2014,4,18);
    
Запрос.Выполнить(ТекстЗапроса);
Пока Запрос.Группировка(1)=1 Цикл  
   Если (Запрос.КонОст=0)и
      (Запрос.приход=0)и(Запрос.Расход=0) Тогда                       Продолжить;
   КонецЕсли;
        
  //1.Сообщить("Наименование = " + Запрос.Номенклатура.Наименование);
  //1.Сообщить("Код = " + Запрос.Номенклатура.Код);

  ИсходящиеДанные = СоздатьОбъект("СписокЗначений");
  ИсходящиеДанные.Установить("Код", Запрос.Номенклатура.Код);
  ИсходящиеДанные.Установить("Наименование", Запрос.Номенклатура.Наименование);
  ИсходящиеДанные.Установить("Артикул", Запрос.Номенклатура.Артикул);
  ИсходящиеДанные.Установить("Комментарий", Запрос.Номенклатура.Комментарий);
  ИсходящиеДанные.Установить("НомерГТД", Запрос.Номенклатура.НомерГТД);
  ИсходящиеДанные.Установить("ПометкаУдаления", Запрос.Номенклатура.ПометкаУдаления());
  ИсходящиеДанные.Установить("Родитель", Запрос.Номенклатура.Родитель);
  ИсходящиеДанные.Установить("СтавкаНДС", Запрос.Номенклатура.СтавкаНДС);
  ИсходящиеДанные.Установить("СтранаПроисхождения", Запрос.Номенклатура.СтранаПроисхождения);
  ИсходящиеДанные.Установить("ЭтоГруппа", Запрос.Номенклатура.ЭтоГруппа());
  ИсходящиеДанные.Установить("БазоваяЕдиница", Запрос.Номенклатура.БазоваяЕдиница);
  ИсходящиеДанные.Установить("ПолнНаименование", Запрос.Номенклатура.ПолнНаименование);
  ИсходящиеДанные.Установить("ВидНоменклатуры", Запрос.Номенклатура.ВидНоменклатуры);
        
ВыгрузитьПоПравилу(,, ИсходящиеДанные,, "Номенклатура");

Прервать;
КонецЦикла;          
    
Для теста выгружаю только один элемент Спр.
1.Сообщить - все Ок, есть наименование и код,а дальше выгрузка пишет
Конвертация объекта или получение ссылки:    ()
и в файле все поля(Код,Наименование ...) пусты.
1 ДенисЧ
 
20.04.14
16:50
ВыгрузитьПоПравилу(,, ИсходящиеДанные,, "Номенклатура");


тут с порядком точно всё правильно? Что-то мне не нравится, правда, не знаю что, а посмотреть негде сейчас
2 Wobland
 
20.04.14
16:53
объект, хня, входящие, исходящие, правило
3 Wobland
 
20.04.14
16:54
а вот как их ловить в ПКО, я не помню
4 kn
 
20.04.14
17:07
(1)Прверено ,,
(2)Ну ведь если я выгружаю эту номенклатуру по простому, все выгружается, а если чуть усложнить то все даже без родителя пробую , а если ловлю то да
Попытка
лКод = Источник.Код
Исключение
КонецПопытки
Падает в исключение в ПКО Код
5 Wobland
 
20.04.14
17:10
а структуры нет в семёрке?
6 kn
 
20.04.14
17:20
(5)нет, в типовых правилах тоже делают через СписокЗначений
и через ВыгрузитьПоПравилу(,, ВходящиеДанные,, "ВводНачальныхОстатков");
Сразу так и было.Ну попробую еще раз поменять на ВходящиеДанные
7 Wobland
 
20.04.14
17:23
местами пробуй менять. процедуре поровну, как называется твоя переменная
8 Wobland
 
20.04.14
17:24
можешь попробовать поспрошать меня часов через 20. где-то должны валяться мои семёрочные правила, я там выгружал
9 kn
 
20.04.14
17:32
да поровну, если не решится через 20 ч, то поспрашиваю, ок.
10 kn
 
20.04.14
17:35
Дошло вроде, чтобы так выгружать надо не объект в объект указывать.
11 ДенисЧ
 
20.04.14
17:39
ну вот, я ж говорил, что что-то не нравится :-)
Покажи описание ВыгрузитьПоПравилу()...
12 Wobland
 
20.04.14
17:46
>не объект в объект указывать
эээ.. щито?
13 kn
 
20.04.14
17:53
Ну в ПКО Объект Источник - Пусто, но не помогло
14 kn
 
20.04.14
17:59
(11)не нашлось описания ВыгрузитьПоПравилу(), может КД 2.1.3 не совсем новая, в справке не нашлось, но в примерах типовых
синтаксис такой.
15 Wobland
 
20.04.14
18:00
(14) в обработке ищи
16 ДенисЧ
 
20.04.14
18:01
(14) СИнтаксис чего? Неужели ты думал, что это платформенное? О_о
Оно лежит в обработке выгрузки....
Да и в тексте, который ты повинен вставлять в тую обработку, чтобы твои обработчики (блин, заклинило)... Он тоже есть.
17 Wobland
 
20.04.14
18:03
(16) всяческие ПриВызгузке тоже не особо платформенные. однако, в справке описаны. в отличие от ВыгрузитьПоПравилу. я негодую
18 ДенисЧ
 
20.04.14
18:04
(17) Продолжайте негодовать, мы заинтригованы.
19 kn
 
20.04.14
18:10
если что я не думал, но думаю это к делу не относиться
а описание вот
Функция ВыгрузитьПоПравилу(Источник, Приемник, ВходящиеДанные, ИсходящиеДанные, ИмяПКО = "", УзелСсылки = "", ТолькоПолучитьУзелСсылки = 0, НомерПКО = 0) Далее
20 ДенисЧ
 
20.04.14
18:12
(19) Я в таких случаях список совал первым параметром.
В тобой же описанной картине у всех реквизитов в пко должна стоять галка получить из входящих
21 kn
 
20.04.14
18:24
Флажок ПолучитьИзВходящих - да, параметры первыми не взяло.
Миста - отладчик - помоги.
22 ДенисЧ
 
20.04.14
18:26
(21) А своего уже нету?
"Если ничего не помогает, запусти, наконец, отладчик!"
23 kn
 
20.04.14
18:27
не самый быстрый путь для меня, по Сообщить вроде картина ясна
24 Wobland
 
20.04.14
18:47
а откладчик на стороне семёрки в КД хорошо работает? а то мне проще было вещать
25 ДенисЧ
 
20.04.14
18:52
(24) А куда он денется, если это просто внешняя обработка?
26 Wobland
 
20.04.14
18:54
(25) ясно. выходит, просто мой облагороженный восьмёркой мозг отказался его принимать
27 ДенисЧ
 
20.04.14
18:57
(26) Разжиженный восьмеркой, ты хотел сказать?
28 Wobland
 
20.04.14
18:57
глПоказать(ТЗ) у меня была. с разными цветами, песнями и плясками. дьявольски удобная штучка
29 Wobland
 
20.04.14
18:59
(27) ПустоеЗначение(хня)<>0, запуск отладчика отдельным процессом, отсутсвие внятного шифт+ф9... мои яйца не настолько стальны
30 kn
 
20.04.14
19:12
Срисовано все с правил 8->8, проверено, может просто глаз намылился, может выложить картинки?
31 Wobland
 
20.04.14
19:17
(30) не уверен, что полегчает, но ты попробуй
32 kn
 
20.04.14
19:29
А еще тут какое-то путешествие во времени, файл который создаю
на своем компьютере на удаленном выглядит как созданный на час вперед, хотя в трее на удаленном и моем одинаковое время,может
это как-то влиять?
33 Wobland
 
20.04.14
19:30
(32) ага. ВыгрузитьПоПравилу обязательно требует совпадения часовых поясов, в противном случае включает ГСЧ ;)
34 kn
 
20.04.14
19:39
Часовой пояс то у нас один, и файл один, а время создания его
показывается разным в зависимости от того где смотрю.
35 kn
 
20.04.14
19:40
По-моему пора отдыхать
36 kn
 
20.04.14
20:24
УФ, после проверки на битость
Попытка
  лКод = Запрос.Номенклатура.Код;
Исключение
  флБитая = 1;    
КонецПопытки;
        
Если флБитая = 1 ИЛИ ПустоеЗначение(лКод)=1 Тогда
  Сообщить("Проверка на битость - ссылка битая");
и отсева таких позиций вроде начало выгружаться нормально.
Есть кому сказать спасибо - Wobland и ДенисЧ)
37 Wobland
 
20.04.14
20:26
взлетело? поздравляю. вместо спасибы достаточно 80 тыщ на телефон
38 ДенисЧ
 
20.04.14
20:33
(37) Жадность погубит тебя, падаван юный...
39 Wobland
 
20.04.14
20:36
(38) это не жадность, а мгновенная амортизация знаний и опыта
40 Wobland
 
20.04.14
20:36
+(39) и это ещё со скидкой
41 Torquader
 
20.04.14
21:12
(40) Сейчас тебе 80 тыс.рекламных SMS пришлют, чтобы про телефон не вспоминал.
42 kn
 
20.04.14
21:50
Обойдемся без денег, обойдемся без фото
Завтра что? Понедельник?
Завтра всем на работу.
43 Torquader
 
20.04.14
22:01
Так чего же тогда - недотёпы бездельники.
Задают тут вопросы, пока нет понедельника ?
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс