Имя: Пароль:
1C
1С v8
Условие Исключить при выгрузки документов
0 Смертник
 
01.10.12
15:27
Народ подскажите как поставить условие Исключить при выгрузке документов  - выгружаю документ Реализация товаров и услуг из Бухгалтерии редакции 1.6 (1.6.25.9) в Бухгалтерию редакции 2.0 (2.0.35.5). В Бухгалтерии 2.0 в справочнике Договора контрагентов нет реквизита ВедениеВзаиморасчетов, а в 1.6 есть. Помогите поставить условие, чтобы этот реквизит не выгружался.
Я понимаю что это необходимо сделать вот в этом куске:

СпрДог = Справочники.ДоговорыКонтрагентов.Выбрать(, Выб.Ссылка);
           Пока СпрДог.Следующий() Цикл
               ТекстДог.ЗаписатьНачалоЭлемента("Элемент");
               ИнициацияЭлемента(ТекстДог,СпрДог.Ссылка);
               ТекстДог.ЗаписатьКонецЭлемента();
           КонецЦикла;
           ТекстДог.ЗаписатьКонецЭлемента();
           ТекстДог.Закрыть();
Но не очень понимаю как(((
1 DrShad
 
01.10.12
15:30
откуда этот кусок кода?
2 Смертник
 
01.10.12
16:03
из обработки выгрузки сейчас дам полный код

Процедура ВыгрузитьКонтрагентовМетаданные()
   ДатаВыгр = Лев(ТекущаяДата(),10);
   ДатаВыгр = СтрЗаменить(ДатаВыгр,".","_");
   ИмяФ = КаталогКонтрагентов+"\"+ДатаВыгр+".clt";
   а = 0;
   ЗаписьХМЛ = Новый ЗаписьXML();
   ЗаписьХМЛ.ОткрытьФайл(ИмяФ);
   ЗаписьХМЛ.ЗаписатьОбъявлениеXML();
   ЗаписьХМЛ.ЗаписатьНачалоЭлемента("Корневой");
   
   ТекстПолный = Новый ЗаписьXML();
   ИмяФПолного = КаталогКонтрагентовБаза+"\clients.nom";
   ТекстПолный.ОткрытьФайл(ИмяФПолного);
   ТекстПолный.ЗаписатьОбъявлениеXML();
   ТекстПолный.ЗаписатьНачалоЭлемента("Корневой");
   
   ИмяФСтруктуры = КаталогКонтрагентов+"\struct.nom";
   Файл = Новый Файл(ИмяФСтруктуры);
   ТВыг = Новый ТекстовыйДокумент;
   Если Файл.Существует() Тогда
       ТВыг.Прочитать(КаталогНоменклатуры+"\struct.nom");
       С = ТВыг.ПолучитьТекст();
       СписВыгр = ЗначениеИзСтрокиВнутр(С);
   Иначе
       СписВыгр = Новый СписокЗначений;
   КонецЕсли;
   а = 0;
   Выб = Справочники.Контрагенты.ВыбратьИерархически();
   Пока Выб.Следующий() Цикл
       а= а+1;
       //Если а = 3 Тогда
       //    Прервать;
       //КонецЕсли;
       
       Если Не Выб.ЭтоГруппа Тогда
           // Договоры
           ИмяФДог = КаталогКонтрагентов+"\"+Выб.Код+".dog";
           ТекстДог = Новый ЗаписьXML();
           ТекстДог.ОткрытьФайл(ИмяФДог);
           ТекстДог.ЗаписатьОбъявлениеXML();
           ТекстДог.ЗаписатьНачалоЭлемента("Корневой");                                                    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
           /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
           
           СпрДог = Справочники.ДоговорыКонтрагентов.Выбрать(, Выб.Ссылка);
           Пока СпрДог.Следующий() Цикл
               ТекстДог.ЗаписатьНачалоЭлемента("Элемент");
               ИнициацияЭлемента(ТекстДог,СпрДог.Ссылка);
               ТекстДог.ЗаписатьКонецЭлемента();
           КонецЦикла;
           ТекстДог.ЗаписатьКонецЭлемента();
           ТекстДог.Закрыть();
           
           // Контактные лица
           ИмяФДог = КаталогКонтрагентов+"\"+Выб.Код+".cnt";
           ТекстДог2 = Новый ЗаписьXML();
           ТекстДог2.ОткрытьФайл(ИмяФДог);
           ТекстДог2.ЗаписатьОбъявлениеXML();
           ТекстДог2.ЗаписатьНачалоЭлемента("Корневой");
           Структ = Новый Структура("ОбъектВладелец", Выб.Ссылка);
           СпрДог = Справочники.КонтактныеЛица.Выбрать(,,Структ);
           Пока СпрДог.Следующий() Цикл
               ТекстДог2.ЗаписатьНачалоЭлемента("Элемент");
               ИнициацияЭлемента(ТекстДог2,СпрДог.Ссылка);
               ТекстДог2.ЗаписатьКонецЭлемента();
           КонецЦикла;
           ТекстДог2.ЗаписатьКонецЭлемента();
           ТекстДог2.Закрыть();
           
           // Счета
           ИмяФДог = КаталогКонтрагентов+"\"+Выб.Код+".bnk";
           ТекстДог3 = Новый ЗаписьXML();
           ТекстДог3.ОткрытьФайл(ИмяФДог);
           ТекстДог3.ЗаписатьОбъявлениеXML();
           ТекстДог3.ЗаписатьНачалоЭлемента("Корневой");
           СпрДог = Справочники.БанковскиеСчета.Выбрать(,Выб.Ссылка);
           Пока СпрДог.Следующий() Цикл
               ТекстДог3.ЗаписатьНачалоЭлемента("Элемент");
               ИнициацияЭлемента(ТекстДог3,СпрДог.Ссылка);
               ТекстДог3.ЗаписатьКонецЭлемента();
           КонецЦикла;
           ТекстДог3.ЗаписатьКонецЭлемента();
           ТекстДог3.Закрыть();
           
           //Контактная информация
           ИмяФДог = КаталогКонтрагентов+"\"+Выб.Код+".inf";
           ТекстДог4 = Новый ЗаписьXML();
           ТекстДог4.ОткрытьФайл(ИмяФДог);
           ТекстДог4.ЗаписатьОбъявлениеXML();
           ТекстДог4.ЗаписатьНачалоЭлемента("Корневой");
           //Структ = Новый Структура("ОбъектВладелец", Спр.Ссылка);
           ТЗИнф = КонтИнф(Выб.Ссылка);
           Для  Каждого Стр Из ТЗИнф Цикл
               ТекстДог4.ЗаписатьНачалоЭлемента("Элемент");
               ИнициацияТЗ(ТекстДог4,Стр,ТЗИнф);
               ТекстДог4.ЗаписатьКонецЭлемента();
           КонецЦикла;
           ТекстДог4.ЗаписатьКонецЭлемента();
           ТекстДог4.Закрыть();
       КонецЕсли;
       
       
       Если Не ТолькоОбновления Тогда
           ТекстПолный.ЗаписатьНачалоЭлемента("Элемент");
           ИнициацияЭлемента(ТекстПолный,Выб);
           ТекстПолный.ЗаписатьКонецЭлемента();
       КонецЕсли;
       
       Если СписВыгр.НайтиПоЗначению(Выб.Код)=Неопределено Тогда
           ЗаписьХМЛ.ЗаписатьНачалоЭлемента("Элемент");
           ИнициацияЭлемента(ЗаписьХМЛ,Выб);
           ЗаписьХМЛ.ЗаписатьКонецЭлемента();
       КонецЕсли;
       СписВыгр.Добавить(Выб.Код);
       
       Состояние("Выгрузка "+Выб);
   КонецЦикла;
   ТекстПолный.ЗаписатьКонецЭлемента();
   ТекстПолный.Закрыть();
   ЗаписьХМЛ.ЗаписатьКонецЭлемента();
   ЗаписьХМЛ.Закрыть();
   Стр = ЗначениеВСтрокуВнутр(СписВыгр);
   ТВыг.УстановитьТекст(Стр);
   ТВыг.Записать(ИмяФСтруктуры);
3 zladenuw
 
01.10.12
16:07
ИнициацияЭлемента(ТекстДог,СпрДог.Ссылка);
а тут что ?
4 DrShad
 
01.10.12
16:08
это что за выгрузка такая?
5 Смертник
 
01.10.12
16:11
самописная выгружает документы для дальнейшей загрузки в другую конфу
Договор сам, договоры совпадают
6 DrShad
 
01.10.12
16:13
(5) ну и как мы в самописной должны угадать?
7 zladenuw
 
01.10.12
16:13
вот тут что ИнициацияЭлемента. или ты думаешь мы читаем мюсли!
8 Смертник
 
01.10.12
16:17
она построена на основе бухгалтерии, справочник Договора и все его элементы, сейчас выгрузка и загрузка идут в один в один
9 DrShad
 
01.10.12
16:17
(8) ты читать вообще умеешь?
10 Смертник
 
01.10.12
16:18
умею
11 DrShad
 
01.10.12
16:19
(10) и где твои ответы?
12 Смертник
 
01.10.12
16:19
Весь функционал используется стандартный были дописаные справолчники и документы, но этой выгрузки и тех документов и справочников которые используются в выгрузке это никак не затронуло
13 hhhh
 
01.10.12
16:21
(12) используй КД
14 zladenuw
 
01.10.12
16:22
(12) мда. больной вам надо лечитцо.
вот в этой функции или процедуре.
ИнициацияЭлемента(ТекстДог3,СпрДог.Ссылка)

Если ТипЗнч(СпрДог.Ссылка) = Тип("СправочникСсылка.Договор") Тогда
//Если это Реквизит такой то то не добавляем.
КонецЕсли;

фершейн ?
15 Смертник
 
01.10.12
16:35
Понял спасибо)