Имя: Пароль:
1C
1С v8
Загрузка в табличную часть документа созданной номенклатуры
0 nogik_art
 
15.09.15
15:06
Добрый день кто подскажет такую вещь, перегружаю с Бухгалтерии документ Перемещение ОС в УПП РеализацияТоваров так как номенклатуры в перемещении ОС нет, создал в ПКО документа ПослеВыгрузкивФайл, создал запрос где гружу по правилу все основные средства из табличной части ОС, ВыгрузитьПоПравилу(Выборка,,,,"ОсновныеСредстваВНоменклатуру",,,,,,,,Ложь); в созданый справочник между Основнымисредствами и Номенклатурой, в ПКО этого правила, если не найдена номенклатура в УПП, создаю её и дополняю нехватающими реквизитами и гружу в нужную папку, вопрос вот в чём как мне в ПКО ПослеЗагрузки документов ПеремещениеОС -> РеализацияТоваров получить мою созданую номенклатуру или найденую?
1 DGorgoN
 
15.09.15
15:09
Ну как вариант какой нибудь реквизит создать и туда записывать признак - новый.
2 nogik_art
 
15.09.15
15:12
(1) просто у меня сейчас получается такая ситуация, загружается документ РеализацияТоваров, а в табличной части в поле Номенклатуры пустота.
3 DGorgoN
 
15.09.15
15:16
(2) Я вообще обменами не пользуюсь. Свои пишу, обработки в смысле.
4 nogik_art
 
15.09.15
15:20
(3) это конечно супер), а натолкнуть на мысль кто-нибудь может, как мне извлечь из моего правила там где создана номенклатура, в правило документов ПослеЗагрузки, чтобы я мог в табличную часть эту номенклатуру поставить?
5 mehfk
 
15.09.15
15:32
Смотри правила конвертации группы свойств "Перед обработкой"
6 Chikko
 
15.09.15
15:36
Не выгружай ОС отдельно, ПКО "ОсновныеСредстваВНоменклатуру" поставь в ПКГС переносимого документа.
7 nogik_art
 
15.09.15
15:39
(6) а как именно мне его поставить? прописать в ПКГС ПередОбработкой, только что именно чёто туплю)
8 mehfk
 
15.09.15
15:42
КоллекцияОбъектов заполни
9 nogik_art
 
15.09.15
15:52
(8)
КоллекцияОбъектов = Новый ТаблицаЗначений;
КоллекцияОбъектов.Колонки.Добавить("ЕдиницаИзмерения");
КоллекцияОбъектов.Колонки.Добавить("Номенклатура");

А как ПКО "ОсновныеСредстваВНоменклатуру" поставить не пойму.
10 mehfk
 
15.09.15
16:12
типовые какие-нибудь правила есть под рукой?
11 nogik_art
 
15.09.15
16:14
есть УправлениеТорговлей --> БухгалтерияПредприятия
12 nogik_art
 
15.09.15
16:22
КоллекцияОбъектов = Новый ТаблицаЗначений;
КоллекцияОбъектов.Колонки.Добавить("ЕдиницаИзмерения");
КоллекцияОбъектов.Колонки.Добавить("Номенклатура");
КоллекцияОбъектов.Колонки.Добавить("СтавкаНДС");
КоллекцияОбъектов.Колонки.Добавить("СтоимостьБУ");


ОбъектКоллекции = КоллекцияОбъектов.Добавить();
ЕдиницаИзмерения = ЗначениеИзСтрокиВнутр("{""#"",b04ab637-3719-4bc5-b543-49a560f8305f,98:97dd001cf00c4c0811e17816edf64f5d}");
ОбъектКоллекции.ЕдиницаИзмерения = ЕдиницаИзмерения;    
Если  Не ЗначениеЗаполнено(ОбъектКоллекции.Номенклатура) Тогда
    ИмяПКО = "ОсновныеСредстваВНоменклатуру";
КонецЕсли;
Прописал такой код не срабатывает
13 mehfk
 
15.09.15
17:00
В УТ-БП ничего похожего не нашел, чтобы подсказать тебе по примеру сделать.
14 mehfk
 
15.09.15
17:02
Глянь ЗУП-БП ПриходныйКассовыйОрдер
15 nogik_art
 
15.09.15
19:01
(14) а можешь на обменник кинуть правила я гляну
16 mehfk
 
15.09.15
19:44
Не могу, 3-й пункт.
17 nogik_art
 
15.09.15
19:53
(16) скопируй хоть от туда ПКГС, чтобы я глянул как сможешь?
18 mehfk
 
15.09.15
20:29
Закинь куда-нибудь свои правила.
19 nogik_art
 
16.09.15
10:26
(18) в ПКГС написал такой код,
КоллекцияОбъектов = Новый ТаблицаЗначений;
КоллекцияОбъектов.Колонки.Добавить("Номенклатура");
КоллекцияОбъектов.Колонки.Добавить("СтавкаНДС");
КоллекцияОбъектов.Колонки.Добавить("СтоимостьБУ");

      Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    |    ПередачаОС.ОсновноеСредство.Код КАК Код,
    |    ПередачаОС.ОсновноеСредство.Наименование КАК Наименование,
    |    ПередачаОС.ОсновноеСредство.Комментарий КАК Комментарий,
    |    ПередачаОС.ОсновноеСредство.НаименованиеПолное КАК НаименованиеПолное,
    |    ПередачаОС.ОсновноеСредство.ПометкаУдаления КАК ПометкаУдаления,
    |    ПередачаОС.ОсновноеСредство.ЭтоГруппа КАК ЭтоГруппа,
    |    ПередачаОС.ОсновноеСредство.Ссылка Как Ссылка
    |ИЗ
    |    Документ.ПередачаОС.ОС КАК ПередачаОС
    |ГДЕ
    |    ПередачаОС.Ссылка = &Ссылка
    |    И ПередачаОС.ОсновноеСредство.ЭтоГруппа = ЛОЖЬ";
    Запрос.УстановитьПараметр("Ссылка", Источник.Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
        ОбъектКоллекции = КоллекцияОбъектов.Добавить();
        ВыгрузитьПоПравилу(Выборка,,,,"ОсновныеСредстваВНоменклатуру",,,,,,,,Ложь);
        ОбъектКоллекции.Номенклатура = Выборка.Ссылка;
    КонецЦикла;
в итоге в табличную часть выгружается битая ссылка, что не так сделал?
20 nogik_art
 
16.09.15
10:31
а в справочнике Номенклатура сама номенклатура появляется.
21 mehfk
 
16.09.15
11:25
Убери ВыгрузитьПоПравилу вообще.
в группу свойств добавить поле номенклатура и у него выбери правило конвертации ОсновныеСредстваВНоменклатуру
22 nogik_art
 
16.09.15
14:35
(21) выбрал нифига не получилось.
23 nogik_art
 
16.09.15
14:45
(21) выгружает в документе пустое поле номенклатуры
24 nogik_art
 
16.09.15
14:51
в ПКО ОсновныеСредстваВНоменклатуру После загрузки такой код, может в нём что?
    Если ОбъектНайден Тогда
        Объект.Родитель = Ссылка.Родитель;
    Иначе
        //Папка Оборудование передаём в неё
        Родитель = ЗначениеИзСтрокиВнутр("{""#"",dd0e8719-5e55-43a0-944a-8321d4c46843,140:b1a050e5492617b211e55b86b5020bc4}");
        Объект.Родитель = Родитель;
        Ссылка = ЗначениеИзСтрокиВнутр("{""#"",ccaad38f-99b2-4ef7-9391-518bf9666a2d,46:b1a050e5492617b211e55b86a78d8f88}");
        Объект.ВидНоменклатуры = Ссылка;    
        ЕдиницаИзмерения = ЗначениеИзСтрокиВнутр("{""#"",b04ab637-3719-4bc5-b543-49a560f8305f,98:97dd001cf00c4c0811e17816edf64f5d}");
        Объект.БазоваяЕдиницаИзмерения = ЕдиницаИзмерения;    
        Объект.Записать();
        Сообщить(Объект.Ссылка);
        
    КонецЕсли;
Ошибка? Это не ошибка, это системная функция.