Имя: Пароль:
1C
1C 7.7
v7: КД 2.0 выгрузка из тис 7.7 в бп 3.0 дает ошибку
,
0 tgu82
 
14.12.21
21:50
Ошибка при выгрузке отчета ккм который должен превратиться в Отчет о розничных продажах БП 3.0

Вот это было добавлено после этого перестало работать:

Функция ПКГС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_ТабличнаяЧасть24(
            Источник, Приемник, ВходящиеДанные, ИсходящиеДанные, ОбъектКоллекции, УзелКоллекцииОбъектов)


    Отказ = 0;


    Попытка

        Если Источник.СуммаБезНал = 0 Тогда
            Отказ = 1;
        КонецЕсли;
        
    Исключение
    
        Сообщить("Ошибка исполнения обработчика:  ПКГС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_ТабличнаяЧасть24", "!!!");
        Сообщить("  - " + ОписаниеОшибки());
        ЗафиксироватьОшибку("Ошибка исполнения обработчика:  ПКГС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_ТабличнаяЧасть24" + ": " + ОписаниеОшибки());

    КонецПопытки;



    Возврат Отказ;


КонецФункции // ПКГС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_ТабличнаяЧасть24()

Функция ПКС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_СуммаОплаты_Реквизит26(
            Источник, Приемник, ВходящиеДанные, ИсходящиеДанные, НомерПКС, НомерПКО, ОбъектКоллекции, Значение, ТипПриемника, ИмяПКО, ИмяПКОВидСубконто, Пусто, Выражение, НеЗамещать, УзелКоллекцииСвойств)


    Отказ = 0;


    Попытка


        Значение = Источник.СуммаБезНал;

    Исключение
    
        Сообщить("Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_СуммаОплаты_Реквизит26", "!!!");
        Сообщить("  - " + ОписаниеОшибки());
        ЗафиксироватьОшибку("Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_СуммаОплаты_Реквизит26" + ": " + ОписаниеОшибки());

    КонецПопытки;



    Возврат Отказ;


КонецФункции // ПКС_ПередВыгрузкой_ОтчетОРозничныхПродажах_Оплата_СуммаОплаты_Реквизит26()



Отчет ККМ П300000236 (28.08.21) ДвижениеДенежныхСредств
Конвертация объекта или получение ссылки:  Отчет ККМ  (Справочник)
Отчет ККМ П300000236 (28.08.21) Оплата
Значение = Объект.ПолучитьАтрибут(Имя);
{D:\13-12-2021\XMLВЫГРУЗКАДАННЫХВБП300.ERT(11076)}: Неверное имя атрибута
42 Ёпрст
 
15.12.21
20:17
43 Ёпрст
 
15.12.21
20:17
и им подобные картинкопомойки
44 tgu82
 
15.12.21
20:24
(43) Ну я в файлопомойке сохраню скриншот. А как его на Мисту загрузить потом?
45 tgu82
 
15.12.21
20:25
(41) ПКО_ВидыОплатОрганизаций в обработчик надо что-то писать?
Перед, после....
46 Злопчинский
 
15.12.21
20:25
(44) ссылку на картинку сюда кладешь. файлопомойки дают такие ссылки
47 Ёпрст
 
15.12.21
20:29
(45) в (38) жешь
48 Ёпрст
 
15.12.21
20:29
у тя всега по полям поиска идёт поиск.
49 tgu82
 
15.12.21
20:31
(47) (38) сделано.
А это другое - это не ПКС а ПКО
50 Ёпрст
 
15.12.21
20:33
(49) че ?

ты создаешь ПКО ВидыОплатОрганизаций у него есть свойство ПКС Наименование, вкотором стоит галка поиск и в Перед загрузкой как в (38)
51 tgu82
 
15.12.21
20:35
(50) Все так. А в самом ПКО надо что-то в обработчиках писать?
52 Ёпрст
 
15.12.21
20:35
далее в другом ПКО, например Документ.Вася есть табличная часть ПКГС Оплаты, в котором создаешь новое свойство ПКС ВидОплаты или че там у тебя, в котором Источник = пусто, при1ёмник Справочник.ТвойВидОплаты, Правило - ПКО_ВидыОплатОрганизаций , в Перед выгрузкой Значение = "Сбер"

так понятнее ?
53 tgu82
 
15.12.21
20:38
(52) Ну да. Я так все и сделал!!!
54 Ёпрст
 
15.12.21
20:39
если у тебя не только Сбер но и другие, которые можно сопоставить по наименованию или коду, то в Значение пихай че надо в зависимости от ОбъектКоллекции.НужныйРеквизит.Наименование, например
55 Ёпрст
 
15.12.21
20:39
(53) и ? Че не работает ? :)
56 big
 
15.12.21
20:40
ВОЮШМАТЬ!! (рукалицо)   )))

Не, если честно, я почти месяц втыкал (а то и больше, с учетом того-сего), пока не понял в основном как это работает )))



Надо вернуться взад (зачеркнуто) в НАЧАЛО и по-новой (с учетом полученных знаний) озвучить задачу

Лично я тут вообще проблем не вижу

(52) Вот что ты его путаешь, а? В (10) тупее некуда было показано решение!! ))
57 Ёпрст
 
15.12.21
20:41
(56) не.. пкгс не осилит, :)
58 Ёпрст
 
15.12.21
20:41
там опять вид оплаты надо передать, которого у него нет в клюшках.
59 Ёпрст
 
15.12.21
20:42
и есть только поиск по наименованию.
60 big
 
15.12.21
20:42
(57) Дык, чего там осиливать то?? Сделать ТЗ с колонкам-именами реквизитов и заполнить их тем, что тебе надо?
61 Ёпрст
 
15.12.21
20:43
(60) не осилит :)
62 Ёпрст
 
15.12.21
20:44
ща погоди, мот ответит че.. какой-то примитив не могёт сделать.

Хотя да, есть там пару затыков с клюшками, типа нет передачи параметров, которую можно обойти, напрямую создавая узел и добавитьПодчиненные..
63 tgu82
 
15.12.21
20:44
(61) ТАк это я давно сделал
64 big
 
15.12.21
20:44
(58) Вид оплаты это что? Справочник, перечисление?
65 tgu82
 
15.12.21
20:45
(64) Справочник ВидыОпатОрганнизаций
66 Ёпрст
 
15.12.21
20:45
(63) и ? Работает ?
67 tgu82
 
15.12.21
20:46
(66) Для СуммаОплаты - да работает. У меня просто 8-ные базы архивируются сейчас, минут через 5-10 попробую
68 tgu82
 
15.12.21
20:48
Перед обарботкой

КоллекцияОбъектов = СоздатьОбъект("ТаблицаЗначений");
КоллекцияОбъектов.УдалитьСтроки();
КоллекцияОбъектов.НоваяКолонка("ВидОплаты");
КоллекцияОбъектов.НоваяКолонка("СуммаОплаты","Число",15,2);
КоллекцияОбъектов.НоваяСтрока();
КоллекцияОбъектов.СуммаОплаты=Источник.СуммаБезНал;
69 tgu82
 
15.12.21
20:51
(56) Я по сути и сделал как в (10). Вопрос был в том как заполнять ВидОплаты в КоллекцияОбъектов.
На этом и застрял. А СуммаОплаты прекрасно в 8-ке заполнилась
70 big
 
15.12.21
20:52
ЗАлез в конфу БП3, поглядел. По идее надо делать отдельное ПКО (а можно и не отдельное), куда передавать ВходящиеДанные для конвертации. По большому счету там это всё практически предопределенное
71 big
 
15.12.21
20:53
(70) В принципе, можно даже в процедуре "ПослеЗагрузки" заполнять это поле. Но ИМХО это не кошерно, хотя и нормально ))))
72 tgu82
 
15.12.21
20:53
Сейчас БП 3.0 откроется и запущу загрузку из ТИС 7.7 Проверим!
73 tgu82
 
15.12.21
20:54
(71) Не получилось. ЕПРСТ вообще сказал что это бред - то что я там прописал
74 Ёпрст
 
15.12.21
20:54
(69) пихай туда просто строку Сбер и всё, дальше, если прописал пко, оно само загрузится
75 tgu82
 
15.12.21
20:56
(74) Вот это никак не могу понять.
И тогда получается что мне просто надо ПКО для Оплата как я и делал и в ней в ПКГС
КоллекцияОбъектов.ВидОплаты="Сбер"  ?
76 Ёпрст
 
15.12.21
20:58
Если делаешь через пкгс как в (68) в видОплаты там просто установи сбер, далее пропиши ПКО для справочника и всё.
оно будет само искать по наименованию

Ни или в самом ПКО пропиши в после загрузки

СпрВид=Справочники.ВидыОплатОрганизаций.НайтиПоНаименованию("Сбер");
Для каждого СтрТЧ из Объект.Оплата Цикл      
  СтрТЧ.ВидОплаты=СпрВид;
КонецЦикла
77 Ёпрст
 
15.12.21
20:59
Только в послезагрузки не всегда работает, зависит от многих факторов и условий.
78 big
 
15.12.21
21:06
(76) ИМХО не получится. Передав в ПКО справочника (!!!) просто строку - результата не будет. По крайней мере или на входе этого ПКО надо анализировать входящую строку, или же просто заполнять ВходящиеДанные = Код, Наименование и т.п.  Кстати, у ВидовОплатОрганизаций там доФейХоа реквизитов )))
79 tgu82
 
15.12.21
21:08
(77,78) Загружаю. Скоро виден будет результат
80 Ёпрст
 
15.12.21
21:09
(78) найдёт. главное, что б пко подцепило
81 tgu82
 
15.12.21
21:13
(80) сработало вроде.
82 big
 
15.12.21
21:13
(80) в ПКО не передано никакого объекта, только строка. Кто чего и где будет искать? )))
83 big
 
15.12.21
21:14
(81) а что в фале выгрузки в целевом поле?
84 Ёпрст
 
15.12.21
21:16
(83) см (37) и (38)

в ПКО он передаст Наименование, по которому будет поиск в приёмнике. всё.
85 tgu82
 
15.12.21
21:17
86 Ёпрст
 
15.12.21
21:18
на всякий, можно еще в ПКГС, в вкс ВидОплаты указать, источник пусто, приёмник видОплаты, правило то что создал для справочника и в Перед выгрузкой значение = ОбъектКоллекции.видоплаты
87 tgu82
 
15.12.21
21:19
(86) КоллекцияОбъектов или ОбъектКоллекции?
88 Ёпрст
 
15.12.21
21:19
(85) типа, работает ? )
с вас 5к руб за консультацию :)
89 big
 
15.12.21
21:19
(84) вот тут я "туплю" ибо... ибо... ну, вот в (82)    )))
90 Ёпрст
 
15.12.21
21:20
(87) ОбъектКоллекции
91 big
 
15.12.21
21:20
(87) КоллекцияОбъектов - это ПередОбработкой, а ОбъектыКоллекции - это уже далее
92 Ёпрст
 
15.12.21
21:21
но, это лишнее, не помню, если указываешь явно в ПКГС как у тебя на свою коллекцию, то то, что ниже в пкс не отрабатывается
93 tgu82
 
15.12.21
21:24
(88) Не типа, а вполне всерьез работает. А можно было не прописывать правило для справочника?
ТЕперь запинаю табличную часть "Возвраты" и потом "Безналичные возвраты" (как раз опять ВидОплаты понадобится).

Насчет 5 клруб - нет проблем. Просто еще есть кое-какие вопросики по конвертации!
94 tgu82
 
15.12.21
21:25
(93)+ Моя почта не скрыта
95 big
 
15.12.21
21:26
(92) Удобно. Сделал ТЧ перед выгрузкой - и нет вопросов.

(93) Надо тебе все-таки по-плотнее с этим всем разобраться. Я сам из 7.7 всё выгружаю, много чего "ХИТРОГО" приходится делать )))
96 big
 
15.12.21
21:28
(95) ломал тут мозги с сопоставлением объектов в 8-ке и в 7-ке. В силу страчества пришлось потратить неделю времени ))))
97 tgu82
 
15.12.21
21:39
(95) Да трудно. Сложные механизмы. Хорошо когда почти все штатно. А вот у много нештатно.
98 Ёпрст
 
15.12.21
21:43
(97) фигня какая ..почти всё есть в типовых правилах, ну, почти всё.
99 Ёпрст
 
15.12.21
21:43
просто правила из 7.7 в 8 - ограниченные, там всё немножка по-другому.
100 Ёпрст
 
15.12.21
21:44
аот и приходится изворачиваться, либо передачей самодельных параметров, либо запихиванием чего либа в левые пкс и т.п..
101 Ёпрст
 
15.12.21
21:44
Правда, всё это делается один раз, переносится и забывается :)
102 big
 
15.12.21
21:49
(97) Мне всего 2 раза пришлось поправить конфу Конвертация. Есть там в ней некоторые недочеты ))

(98) ++1

(99) Дело не в том, что по ...  В общем, при загрузке из 8 в 7.7 тоже интересности имеются )))
103 Ёпрст
 
15.12.21
22:03
Есть еще и прикол в самой ОбработкеXML, если по планам обмена выгрузка..он до сих пор с ошибкой, если вместе с доком выгружаешь движения - оно трёт их, считает, что док должен в базе сам проводится всегда в момент загрузки. Причем, через универсальный обмен xml как надо отрабатывает.
104 Ёпрст
 
15.12.21
22:04
В последней УПП, так точно еще эта ошибка осталась.
105 tgu82
 
15.12.21
22:09
(103) Есть табличная часть "Возвраты" и мне ее надо заполнить из 7.7.
Никак не пойму - мне надо заполнять Номенклатура, количество и т.д. - то есть то что есть в приемнике.

Мне что вручную надо на каждый реквизит создать ПКС? Как-то автоматом на все нельзя?
106 tgu82
 
15.12.21
22:24
(105)+ Если уже есть ПКГС для табличной части приемника, то зачем для каждой ее колонки добавлять ПКС ???
107 Ёпрст
 
15.12.21
22:41
(106) если у тебя есть табличная часть в Источнике, то в ПКГС ничего делать не надо, надо просто сопоставить ПКС в табличной части..как обычные реквизиты шапки
108 Ёпрст
 
15.12.21
22:41
а вот если нету, тут в ПКГС просто делаешь свою коллекцию.
109 Ёпрст
 
15.12.21
22:41
аналогично, движения документа
110 Ёпрст
 
15.12.21
22:41
это тоже "таб часть" в правилах конвертации
111 tgu82
 
15.12.21
22:47
(110) То есть добавлять ПКС типа Номенклатура - Номенклатура не нужно?
Он из КоллекцияОбъектов источника возьмется и будет синхронизироваться по гаименованию или по коду?
112 Ёпрст
 
15.12.21
22:51
(111) нужно
113 Ёпрст
 
15.12.21
22:52
для каждого ссылочного типа должен создать ПКО, например Справочник.Номенклатура - Справочник.Номенклатура

в ПКО Реализация, есть ТЧ Товары, вот в ней есть все ПКС - Номенклатура/Количество/единица/ и т.д..
нажимаешь синхронизировать и галки ставишь только на нужное, оно само всё создаст
114 tgu82
 
15.12.21
22:54
(111) А зачем если источник будет пустой? Ведь все будет браться из КоллекцияОбъектов
115 Ёпрст
 
15.12.21
23:27
(114) пкс там нужны, если есть сама табличная часть
116 Ёпрст
 
15.12.21
23:27
и если источник не пустой, например, табличная часть документа любого
117 tgu82
 
16.12.21
08:36
(115) Табличная часть в приемнике есть. Но в источнике просто КоллекцияОбъектов.
Получается что ПКС не нужны? Номенклатура по умолчанию по наименованию или коду.
А остальное числовое уже.
Как-то можно номер ГТД и страну происхождения исключить из конвертации.
ИП на упрощенке всего навсего.
Чтоб не три строки на товаре были а одна.
118 big
 
16.12.21
10:15
(117) Выше в (113) уже сказали, что в случае реквизита ссылочного типа нужно создавать ПКС, в том числе и для КоллекцииОбъектов. У тебя же в коллекции точно такие же справочники, перечисления и т.п. Так ведь?
119 tgu82
 
16.12.21
10:29
(118) Ну там одна номенклатура а для нее же уже было создано ПКО раньше
120 Ёпрст
 
16.12.21
10:30
(119) и ? Не путай ПКО с ПКС
121 tgu82
 
16.12.21
10:33
(120) То есть мне кроме ПКГС Перед обработкой еще нужно ПКС для Номенклатура добавить в табличную часть "Возвраты"?
А что в ее обработчике написать?
122 tgu82
 
16.12.21
10:35
(121)+ И потом это же Номенклатура из Коллекции и тогда в ПКС надо писать что источник пустой?
123 Ёпрст
 
16.12.21
10:38
(121) ну и каша.

1. в источнике есть заполненная табличная часть ?
2. если есть, табличную часть нужно переносить в одну табличную часть или в несколько ? (Товары/услуги)
124 Ёпрст
 
16.12.21
10:39
Если че, в самих обработчиках ПКГС переопределение коллекции делают только тогда, когда нет изначально в источнике табличных частей, или хотят заполнить её по данным, запроса, например.
125 tgu82
 
16.12.21
10:55
(124) По-сути так и есть - из запроса.
Но ругается!
Начало выгрузки:   16.12.21 10:44:37
Возвраты:  17
Если СвойстваГруппы.КоличествоСтрок() > 0 Тогда
{D:\DB\EXTFORMS\XML_ПРОБАТИС_БП300.ERT(11314)}: Значение не представляет агрегатный объект (КоличествоСтрок)

а запрос вот он:
                Док=СоздатьОбъект("Документ.ВозвратОтПокупателя");
                Док.ВыбратьДокументы(Источник.ДатаДок,Источник.ДатаДок);
                Пока Док.ПолучитьДокумент()=1 Цикл
                 Если Док.Проведен()=0 Тогда Продолжить;КонецЕсли;
                 Если Док.Фирма<>Источник.Фирма Тогда Продолжить;КонецЕсли;
                 Если Док.Склад<>Источник.Склад Тогда Продолжить;КонецЕсли;
                 Рег.ВыбратьДвиженияДокумента(Док);        
                 Пока Рег.ПолучитьДвижение() = 1 Цикл  
                  КоллекцияОбъектов.НоваяСтрока();
                  КоллекцияОбъектов.Номенклатура=Рег.Номенклатура;
                  КоллекцияОбъектов.Количество=Рег.Количество;
                  КоллекцияОбъектов.Единица=Рег.Номенклатура.БазоваяЕдиница;
                  КоллекцияОбъектов.Цена=Рег.ПродСтоимость/Рег.Количество;
                  КоллекцияОбъектов.Сумма=Рег.ПродСтоимость;
                  КоллекцияОбъектов.СтавкаНДС=Перечисление.СтавкиНДС.БезНДС;
                  КоллекцияОбъектов.СуммаНДС=0;
                КонецЦикла;    
                КонецЦикла;    
                КоллекцияОбъектов.Свернуть("Номенклатура, Единица, Коэффициент, Цена","Количество, Сумма");
Коллекция-то формируется! А вот дальше где-то затык
126 big
 
16.12.21
11:34
(125)  Жуть какая )))

1. Заполни коллекцию Номенклатура, Количество, Сумма.
2. Сверни.
3. Потом добавь колонки Единица, Коэффициент, СтавкаНДС, СуммаНДС, Цена.
4. Заполни нужными данными.

И еще. Пишет ошибку на КоличествоСтрок. Что это за СвойстваГруппы.КоличествоСтрок() ?
127 Ёпрст
 
16.12.21
11:49
(125) и зачем писать все движения по какому-то там регистру в один документ ?
Это че, типа "ввод движений" одним документом за период ? :)))
128 tgu82
 
16.12.21
11:51
это все возвраты предыдущего дня в ТИС по данному магазину и фирме за дату отчетаккм и они должны попасть в ТЧ "Возвраты" в БП 3.0 Отчета о розничных продажах
129 tgu82
 
16.12.21
11:58
(126) заполнил я коллекцию но получилась хрень в результате. Есть в ней и номенклатура и все что надо остальное.
И в 8-ке загрузилось и образовалась ТЧ "Возвраты" (правильно 17 строк) но с пустой номеклатуроый и т.д.
http://pics.rsh.ru/img/1_m7n4n17e.png
130 Ёпрст
 
16.12.21
12:12
(129) ПКО номенклатура хоть создано ?
131 tgu82
 
16.12.21
12:19
(130) Конечно ведь ТЧ "товары" грузится прекрасно.
А вот тч "возвраты" не хочут
132 tgu82
 
16.12.21
12:26
(131)+ И даже не хотят :)
133 big
 
16.12.21
13:01
(131) В ТЧ "Возвраты" в реквизите "Номенклатура" указаны ПКО "Номенклатура"?
134 tgu82
 
16.12.21
13:40
(133) ПКС указано. Да. Сделал по аналогии с "Оплата" и все загрузилось как надо.
Большое спасибо что с "Оплатой" подсказали
135 tgu82
 
16.12.21
14:25
(134)+ Возврат оплаты (безнал) практически аналогично Оплате.
По Отчет ККМ вроде все получилось
136 tgu82
 
17.12.21
08:11
А через КД из ТИС 7.7 в БП 3.0 остатки можно загнать по товарам партиям взаиморасчетам?
Или это надо как-то другими путями?
137 Ёпрст
 
17.12.21
09:53
(136) можно. в типовых правилах это есть.
138 tgu82
 
17.12.21
10:34
(137) Не нашел. Не так видно искал
139 tgu82
 
17.12.21
11:22
(137) Из Бух 7.7 в Бух 3.0 - остатки относительно успешно переносятся.
А вот из ТИС 7.7 в БП 3.0 - не нашел как переносить все остатки
140 tgu82
 
17.12.21
11:27
(139)+ Добавить можно ВводОстатков ТИС 7.7 во ВводНачальныхОстатков БП 3.0 ну и самому все там прописать!
(133) Не пробовали?
141 big
 
17.12.21
20:34
(140) У меня то всё работает. При чем выгрузка-загрузка идёт в такие люто старые конфигурации, что стыдно становится ))