Имя: Пароль:
1C
1С v8
Конвертация: обычный реквизит в реквизит ТЧ
0 К_Дач
 
08.02.13
15:26
Подскажите, плиз, как при конвертации одного объекта в другой взять просто реквизит и в приеменике в тч создать строчку и записать его туда (для конвертации реквезита в другой реквезит ПКО у меня написано)? Ну и заодно можно ткнуть в матчасть... майкодинфо курил, такого примера там не нашел...
1 dk
 
08.02.13
15:31
Создать нужную структуру и ВыгрузитьПоПравилу
2 К_Дач
 
08.02.13
15:37
А где создавать структуру? и где писать вызов ВыгрузитьПоПравиду ?
3 acsent
 
08.02.13
15:39
КоллекцияОбъектов = Новый ТЗ;
Добавить()
Строка.Реквизит = Значение
4 dk
 
08.02.13
15:40
(2) в модуле выборки данных
5 К_Дач
 
08.02.13
15:56
У меня есть документ, у него есть реквизит Контрагент. В приемнике есть другой документ, у него ТЧ, у ТЧ реквезит Контрагент. ПВД для источника стандартной выборкой. ПКО для объекта написано. Не понимаю, как мне использовать ВыгрузитьПоПравилу и чем она мне поможет
6 dk
 
08.02.13
15:58
просто найди любой пример выгрузитьпоправилу
7 DrShad
 
08.02.13
15:59
(3) +100500
(6) см (3)
8 К_Дач
 
08.02.13
16:48
Пишу вот такой код:

Запрос = Новый Запрос;
Запрос.Текст =
   "ВЫБРАТЬ
   |    РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг,
   |    РеализацияТоваровУслуг.Контрагент КАК Получатель
   |ИЗ
   |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг";
   |ГДЕ
   |    РеализацияТоваровУслуг.Дата >= &НачалоПериода
   |    И РеализацияТоваровУслуг.Дата <= &КонецПериода";

Запрос.УстановитьПараметр("КонецПериода", Параметры.ДатаОкончания);
Запрос.УстановитьПараметр("НачалоПериода", Параметры.ДатаНачала);

Результат = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = Результат.Выбрать();

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

Ругается на ПКГС, мол "поле объекта не обнаружено". Но у меня ТЧ то у приемника, галочку "получить из входящих данных" воткнул. ЧТЯДНТ? ((((
9 acsent
 
08.02.13
16:49
(8) где код из (3) ??
10 DrShad
 
08.02.13
16:50
(9) он его не понял :))))
11 К_Дач
 
08.02.13
16:51
Эммм... в качестве данных передаю ТЗ, как мне и подсказали в (3). Разве нет?
12 acsent
 
08.02.13
16:53
там ключевое слово КоллекцияОбъектов. и не нужно ничего выгружать по правилу
13 DrShad
 
08.02.13
16:54
(12) никто не читает мануал :((((
14 К_Дач
 
08.02.13
16:56
(13) я всегда читаю, перед тем как написать на мисте. про КоллекцияОбъектов не сказано ни в одном стандартном описани обработчиков ПВД. Где написать код из (3), в каком обработчике?
15 acsent
 
08.02.13
16:57
(14) так ПКГС или ПВД?
16 К_Дач
 
08.02.13
17:02
1. Где создать КоллекцияОбъектов? в ПВД или ПКГС? в каком обработчике? кто-нибудь, напишите уже внятно, пожалуйста
17 fisher
 
08.02.13
17:04
(14) ПКГС - это правило конвертации группы свойств (группа ПКС табличной части). Клацаешь на ней "Изменить", чтобы добраться до формы группы - там и увидишь её обработчики.
КоллекцииОбъектов присваиваешь любую стандартную коллекцию с одним элементом (это обеспечит конвертацию одной строки).
А в ПКС нужного реквизита строки тупо пишешь
Значение = Источник.МойРеквизитШапки;
18 acsent
 
08.02.13
17:04
(16) загугли слово КоллекцияОбъектов
19 К_Дач
 
08.02.13
17:04
20 К_Дач
 
08.02.13
17:06
понятно наконец-таки... спасибо всем, кроме товарища из (13)

Хохол, я тебя убедительно прошу не писать в моих ветках, если ты такой любитель поглумиться - я к твоим услугам и быстро и доходчиво тебе объясню все что положено, урд
21 acsent
 
08.02.13
17:06
там п.6 не нужен
22 DrShad
 
08.02.13
17:07
(20) а говорил что читал и нигде не написано :)))) не там читаешь