Имя: Пароль:
1C
1С v8
КД Перенос проводок в ОперацияБух
0 shamannk
 
07.07.11
12:47
Есть две БП 2.0 источник типовая приемник не шибко измененная как Рег.Бух хозрасчетный перенести в Док. ОперацияБух.
Как из справочника в справочник перенести знаю а тут чета тормажу. В кд опыту мало, не ругайте сильно.
1 shamannk
 
07.07.11
13:04
апну разок
2 Живой Ископаемый
 
07.07.11
13:06
в книжке Бояркина годный пример.
3 shamannk
 
07.07.11
13:06
(2) На какой стр читаю как раз
4 ДенисЧ
 
07.07.11
13:08
(3) 171. Оглавление глянь.
5 ДенисЧ
 
07.07.11
13:09
Но пример там негодный. Прямая запись XML - некошерно, когда это делается проще...
6 shamannk
 
07.07.11
13:12
Там для 7.7 и из ОперацияБух в ОперацияБух.
(5) Вот тут по подробнее.
7 Живой Ископаемый
 
07.07.11
13:18
(5) ммм... я наверное уже подзабывать стал, но из 8 в 8 я как-то обошелся малой кровью
8 shamannk
 
07.07.11
13:27
(7) Как?
9 Живой Ископаемый
 
07.07.11
13:29
дядька, я в другом офисе... завтра гляну..
10 Живой Ископаемый
 
07.07.11
13:33
но я постараюсь, ты меня заинтересовал. :)
11 shamannk
 
07.07.11
13:35
(10) Буду ждать))))
12 shamannk
 
07.07.11
13:55
Больше никто не знает?
13 GenV
 
07.07.11
14:00
(12) КД почти все правила автоматически создает при добавлении конвертации документа. Главное не забыть загрузить метаданные движений.
14 shamannk
 
07.07.11
14:19
(13) Думаю вот мой случай почти)
15 shamannk
 
07.07.11
14:22
Делаю так Добавляю реквизиты (ПКС) регистра автоматом находиться его аналог в документе попутно автоматом создаеться ПКО для справочника (если реквизит ссылочного типа). Правильно хоть делаю?
16 Живой Ископаемый
 
07.07.11
14:24
ну а саму ПКГС для движений по РБ Хозрасчетный - завел?
17 shamannk
 
07.07.11
14:45
(16) А?
18 Живой Ископаемый
 
07.07.11
14:48
ПКГС - это группа, то бишь папочка
19 shamannk
 
07.07.11
15:03
(18) Нет а для чего она нужна?
20 Живой Ископаемый
 
07.07.11
15:04
а... ну тогда все, жди завтра.
21 Stim213
 
07.07.11
15:06
В Бояркине только перенос из 77
22 shamannk
 
07.07.11
15:07
(20) ок)))
23 Живой Ископаемый
 
07.07.11
15:18
2(21) ну а разница?...
24 Живой Ископаемый
 
07.07.11
22:00
в77-в8, Документ в ОперацияБух:
http://screencast.com/t/TGLfUGNiTObf

А вот из в8 в в8.. пример из книжки Бояркина, вернее с диска который идет с книжкой:
http://screencast.com/t/sJG62PFqGStZ

Пробуй...
25 shamannk
 
08.07.11
07:58
(24) Попробую. Спасибо!
26 shamannk
 
08.07.11
11:52
(24) Создал ПКГС для движений Хозрасчетный. Не могу понять почему  нет полей СубконтоДт1 ...Дт2 ... Дт3  Тока СубконтоДТ
http://s011.radikal.ru/i316/1107/2c/957ad5cf5342.jpg
27 Живой Ископаемый
 
08.07.11
11:53
потому что субконтоДт это в свою очередь коллекция.
28 Живой Ископаемый
 
08.07.11
11:53
ты книжку по диагонали читаешь что ли?
29 shamannk
 
08.07.11
12:06
(28) Я хотел запросом получить записи регистра и поместит их в исходящие данные. И пример у меня под рукой есть тока там ..Дт1 уже в ПКГС есть. Запросом получи ..Дт1 ..Дт2 и ..Дт3 а как патом СубконтоДт= ..Дт1 ..Дт2 и ..Дт3 сделать помоги? Книгу читаю вот сделать надо срочно. Пятница понимаю, могу на пиво скинуть))
30 Живой Ископаемый
 
08.07.11
12:08
ну не дядька, у меня своя работа.. а тут думать надо, вспоминать.
31 shamannk
 
08.07.11
12:10
ех... ну тогда хоть как в СубконтоДТ записать ..Дт1 ..Дт2 и ..Дт3 и я отстану)
32 GenV
 
08.07.11
12:41
(31) СубконтоДТ = соответствие. Ключ - вид субконто, Значение - значение субконто. Порядок субконто соотв. не важен. Можешь собрать все значения субконто в ПКГС Хозрасчетный или в ПередВыгрузкой ПКС СубконтоДт/Кт.
33 shamannk
 
11.07.11
09:00
В ПВД пишу выгрузку регистра бух.

Запрос = Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
|    ХозрасчетныйДвиженияССубконто.Период КАК Период,
|    НАЧАЛОПЕРИОДА(ХозрасчетныйДвиженияССубконто.Период, ДЕНЬ) КАК НачалоДня,
|    ХозрасчетныйДвиженияССубконто.СчетДт,
|    ХозрасчетныйДвиженияССубконто.ПодразделениеДт,
   |    ХозрасчетныйДвиженияССубконто.СубконтоДт1,
   |    ХозрасчетныйДвиженияССубконто.СубконтоДт2,
   |    ХозрасчетныйДвиженияССубконто.СубконтоДт3,
   |    ХозрасчетныйДвиженияССубконто.СчетКт,
   |    ХозрасчетныйДвиженияССубконто.ПодразделениеКт,
   |    ХозрасчетныйДвиженияССубконто.ПодразделениеДт,
   |    ХозрасчетныйДвиженияССубконто.СубконтоКт1,
   |    ХозрасчетныйДвиженияССубконто.СубконтоКт2,
   |    ХозрасчетныйДвиженияССубконто.СубконтоКт3,
   |    ХозрасчетныйДвиженияССубконто.Организация,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.ВалютаДт,0 )как ВалютаДт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.ВалютаКт,0)как ВалютаКт,
   |    ХозрасчетныйДвиженияССубконто.Сумма,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.ВалютнаяСуммаДт,0) как  ВалютнаяСуммаДт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.ВалютнаяСуммаКт,0) как  ВалютнаяСуммаКт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.КоличествоДт,0) как  КоличествоДт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.КоличествоКт,0) как КоличествоКт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.СуммаВРДт,0)как СуммаВРДт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.СуммаВРКт,0)как СуммаВРКт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.СуммаНУДт,0)как СуммаНУДт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.СуммаНУКт,0)как СуммаНУКт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.СуммаПРДт,0)как СуммаПРДт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.СуммаПРКт,0)как СуммаПРКт,
   |    ЕСТЬNull(ХозрасчетныйДвиженияССубконто.Содержание,0)как Содержание

|    
|ИЗ
|    РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
|            &ДатаНачала,
|            &ДатаОкончания,
|            Активность = ИСТИНА) КАК ХозрасчетныйДвиженияССубконто
|УПОРЯДОЧИТЬ ПО НачалоДня ВОЗР
|ИТОГИ
|    СУММА(Сумма)
|ПО
|    НачалоДня";

   Запрос.УстановитьПараметр("ДатаНачала",НачалоДня(ДатаНачала));
   Запрос.УстановитьПараметр("ДатаОкончания",КонецДня(ДатаОкончания));
   Выборка = Запрос.Выполнить().Выбрать();
   
   Пока Выборка.СледующийПоЗначениюПоля("НачалоДня") Цикл
       
       Хозрасчетный = Новый ТаблицаЗначений;
       Хозрасчетный.Колонки.Добавить("Период");//
       Хозрасчетный.Колонки.Добавить("СчетДт");//
       Хозрасчетный.Колонки.Добавить("СубконтоДт");//
       Хозрасчетный.Колонки.Добавить("СубконтоКт");//
       Хозрасчетный.Колонки.Добавить("ВалютаДт");//
       Хозрасчетный.Колонки.Добавить("ВалютаКт");//
       
       Хозрасчетный.Колонки.Добавить("Содержание");//
       Хозрасчетный.Колонки.Добавить("СчетКт");//
       Хозрасчетный.Колонки.Добавить("ВалютнаяСуммаДт");//
       Хозрасчетный.Колонки.Добавить("ВалютнаяСуммаКт");//
       Хозрасчетный.Колонки.Добавить("КоличествоДт");//
       Хозрасчетный.Колонки.Добавить("КоличествоКт"); //
       Хозрасчетный.Колонки.Добавить("Сумма");
       Хозрасчетный.Колонки.Добавить("СуммаВРДт");
       Хозрасчетный.Колонки.Добавить("СуммаВРКт");
       Хозрасчетный.Колонки.Добавить("СуммаНУДт");
       Хозрасчетный.Колонки.Добавить("СуммаНУКт");
       Хозрасчетный.Колонки.Добавить("СуммаПРДт");
       Хозрасчетный.Колонки.Добавить("СуммаПРКт");
       Хозрасчетный.Колонки.Добавить("Организация");
       
       КолСтрок=0;
       КолСтрокОбщ=0;
       Пока Выборка.Следующий() Цикл
           Если Выборка.ТипЗаписи()=SelectRecordType.ИтогПоГруппировке Тогда
               Продолжить;
           КонецЕсли;    
//***************************************************************************************            
           
           текОрг = Выборка.Организация;
       
//***************************************************************************************            
           стрТЗ = Хозрасчетный.Добавить();
           стрТЗ.Период = Выборка.Период;
           стрТЗ.СчетКт = Выборка.СчетКт;
           стрТЗ.СчетДт = Выборка.СчетДт;
           стрТЗ.Организация = Выборка.Организация;
           стрТЗ.Содержание = Выборка.Содержание;
           стрТЗ.ВалютнаяСуммаДт = Выборка.ВалютнаяСуммаДт;
           стрТЗ.ВалютнаяСуммаКт = Выборка.ВалютнаяСуммаКт;
           стрТЗ.КоличествоДт = Выборка.КоличествоДт;
           стрТЗ.КоличествоКт = Выборка.КоличествоКт;
           стрТЗ.СуммаВРДт=Выборка.СуммаВРДт;
           стрТЗ.СуммаВРКт=Выборка.СуммаВРКт;
           стрТЗ.СуммаНУДт=Выборка.СуммаНУДт;
           стрТЗ.СуммаНУКт=Выборка.СуммаНУКт;
           стрТЗ.СуммаПРДт=Выборка.СуммаПРДт;
           стрТЗ.СуммаПРКт=Выборка.СуммаПРКт;
           стрТЗ.ВалютаКТ = Выборка.ВалютаКТ;
           стрТЗ.ВалютаДт = Выборка.ВалютаДТ;
           стрТЗ.Сумма = Выборка.Сумма;
           стрТЗ.СубконтоКт= Выборка.СубконтоКт1;
           стрТЗ.СубконтоДт= Выборка.СубконтоДт1;
       
           
           Сообщить ( Строка(стрТЗ.Организация)+"/"+
                      Строка(стрТЗ.Период)+"/"+
                      Строка(стрТЗ.СчетКт)+"/"+
                      Строка(стрТЗ.СчетДт)+"/"+
                      Строка(стрТЗ.ВалютнаяСуммаДт)+"/"+
                      Строка(стрТЗ.ВалютнаяСуммаКт)+"/"+  
                      Строка(стрТЗ.КоличествоДт) +"/"+
                      Строка(стрТЗ.КоличествоКт) +"/"+  
                      Строка(стрТЗ.СуммаВРДт)  +"/"+  
                      Строка(стрТЗ.СуммаВРКт) +"/"+  
                      Строка(стрТЗ.СуммаНУДт) +"/"+  
                      Строка(стрТЗ.СуммаНУКт)+"/"+  
                      Строка(стрТЗ.СуммаПРДт) +"/"+  
                      Строка(стрТЗ.СуммаПРКт)+"/"+  
                      Строка(стрТЗ.ВалютаКТ)+"/"+
                      Строка(стрТЗ.ВалютаДт)+"/"+
                      Строка(стрТЗ.Сумма)+"/"+  
                      Строка(стрТЗ.СубконтоКт)+"/"+
                      Строка(стрТЗ.СубконтоДт));
                   
           КоличествоЗаписанныхСубкДт=0;
           КоличествоЗаписанныхСубкКт=0;
   
           ДатаБОПа = Выборка.НачалоДня;
           КолСтрок=КолСтрок+1;
           КолСтрокОбщ=КолСтрокОбщ+1;
           
       КонецЦикла;    
       
       НомДок=НомДок+1;
       Хозрасчетный.Свернуть("Период,СчетДт,СубконтоДт,СубконтоКт,ВалютаКт,ВалютаДт","ВалютнаяСуммаДт,ВалютнаяСуммаКт,КоличествоДт,КоличествоКт,Сумма");
       
       ИсходящиеДанные = Новый Структура;
       ИсходящиеДанные.Вставить("Хозрасчетный",Хозрасчетный);
       НомДокСтр=?(НомДок>9,Строка(НомДок),"0"+Строка(НомДок));
       
       НомерБОПа=ПривестиНомерКДлине(Формат(Выборка.НачалоДня,"ДФ=ddMMyy")+НомДокСтр,11,,);
       ИсходящиеДанные.Вставить("Номер",НомерБОПа);
       ИсходящиеДанные.Вставить("Дата",ДатаБОПа);
       ВыгрузитьПоПравилу(ИсходящиеДанные,,,,"ОперацияБух");
       НомДок=0;
   КонецЦикла;


Выходит ошибка:
ПВД                    =  Проводки
   Обработчик             =  ПередОбработкойВыгрузкиДанных
   ОписаниеОшибки         =  Итератор для значения не определен
   ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8268)
   КодСообщения           =  31
34 shamannk
 
11.07.11
09:55
ап
35 shamannk
 
12.07.11
09:37
(32) Сделал так но все равно та же ошибка

СубконтоДт = Новый Соответствие;
   Если  НЕ Выборка.ВидСубконтоДт1=null И НЕ ЗначениеНеЗаполнено(Выборка.СубконтоДт1) Тогда
       СубконтоДт.Вставить(Выборка.ВидСубконтоДт1,Выборка.СубконтоДт1);
   КонецЕсли;
   Если  НЕ Выборка.ВидСубконтоДт2=null И НЕ ЗначениеНеЗаполнено(Выборка.СубконтоДт2) Тогда
       СубконтоДт.Вставить(Выборка.ВидСубконтоДт2,Выборка.СубконтоДт2);
   КонецЕсли;
   Если  НЕ Выборка.ВидСубконтоДт3=null И НЕ ЗначениеНеЗаполнено(Выборка.СубконтоДт3) Тогда
       СубконтоДт.Вставить(Выборка.ВидСубконтоДт3,Выборка.СубконтоДт3);
   КонецЕсли;
   
   стрТЗ.СубконтоДт = СубконтоДт;
   
   СубконтоКт = Новый Соответствие;
   Если  НЕ Выборка.ВидСубконтоКт1=null И НЕ ЗначениеНеЗаполнено(Выборка.СубконтоКт1) Тогда
       СубконтоКт.Вставить(Выборка.ВидСубконтоКт1,Выборка.СубконтоКт1);
   КонецЕсли;
   Если  НЕ Выборка.ВидСубконтоКт2=null И НЕ ЗначениеНеЗаполнено(Выборка.СубконтоКт2) Тогда
       СубконтоКт.Вставить(Выборка.ВидСубконтоКт2,Выборка.СубконтоКт2);
   КонецЕсли;
   Если  НЕ Выборка.ВидСубконтоКт3=null И НЕ ЗначениеНеЗаполнено(Выборка.СубконтоКт3) Тогда
          СубконтоКт.Вставить(Выборка.ВидСубконтоКт3,Выборка.СубконтоКт3);
   КонецЕсли;
   стрТЗ.СубконтоКт = СубконтоКт;
36 shamannk
 
12.07.11
09:38
(35) Тока  это для 8.0 под 8.2 переделал  "И  ЗначениеЗаполнено"
37 shamannk
 
12.07.11
10:08
ап
38 GenV
 
12.07.11
12:08
(35) Ну, я же не знаю какая "та же ошибка" и где у тебя возникает и где ты "сделал так" (я два варианта предложил) ...
39 shamannk
 
12.07.11
12:13
(38) Как и в (33)
40 shamannk
 
12.07.11
12:15
Отладчик останавливается на
Для каждого КлючИЗначение из Значение Цикл
       
ВидСубконто = КлючИЗначение.Ключ;
Субконто = КлючИЗначение.Значение;
ИмяПКО = "";

Обработки XML
41 GenV
 
12.07.11
12:20
(40) Надеюсь ты сворачивать по значению соответствия не пытаешься? Вообще в запросе без проблем эта информация сворачивается. Т.ч. проверяй результат своего кода.
42 shamannk
 
12.07.11
12:21
(41) нет
43 GenV
 
12.07.11
12:28
(42) Значит где-то неправильно написал. В отладчике на (40), через ОбъектКоллекции можно проверить строку ТЗ из которой значение берется и сравнить с Значение.
44 shamannk
 
12.07.11
12:32
(43) В тело цикла не поподает, в значение находиться контрагент
45 GenV
 
12.07.11
12:39
(44) ОбъектКоллекции смотрел? Проверил в ПКС что это выгрузка СубконтоДт? Можно еще отладчиком (или через ВыбратьСтроку) проверить таблицу из (33)
ЗЫ Если у тебя там контрагент, то это никак не вяжется с (35).
46 shamannk
 
12.07.11
12:53
(45) Да сори ошибка в коде была. Исправил. Теперь отладчик встает на ВыгрузитьТипСвойстваЭлемента(УзелСвойства, ПКОКлюч.Приемник);


А ошибка Ошибка в обработчике события ПередОбработкойПравилаВыгрузки
ПВД                    =  Проводки
Обработчик             =  ПередОбработкойВыгрузкиДанных
ОписаниеОшибки         =  Значение не является значением объектного типа (Приемник)
ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8329)
КодСообщения           =  31
47 GenV
 
12.07.11
13:04
(46) Проверяй там в отладчике ПКОКлюч, ВидСубконто, наличие в КД правила конвертации вида субконто.
48 shamannk
 
12.07.11
13:22
(47) Спасибо. Добавил правило по ВидамСубконто заработало (ПВХ). Отблагодарить бы вас какнить.
49 shamannk
 
14.07.11
13:19
При переносе справочников указал что переносить в отдельную папку (Как в книге Бояркина) Выходит ошибка при загрузки
   ТипОбъекта             =  Операция (бухгалтерский и налоговый учет)
   Объект                 =  Операция (бухгалтерский и налоговый учет) К0000000005 от 11.05.2011 0:00:00
   ОписаниеОшибки         =  Ошибка при вызове метода контекста (Записать): Запись не верна! Вид субконто "Склады" не доступен для данной записи! (Регистр бухгалтерии: Журнал проводок (бухгалтерский и налоговый учет); Номер строки: 1)
   ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(4788)
   КодСообщения           =  26
50 GenV
 
14.07.11
14:52
(49) Значит для твоей операции К0000000005 в самой первой строчке либо неправильно перенесся счет, либо у этого счета в приемнике нет субконто склады, либо неправильно перенес субконто для первой строки.
ЗЫ К переносу справочников в группу это ошибка имеет мало отношения.
51 shamannk
 
14.07.11
15:47
(50) А как это отловить?
52 shamannk
 
14.07.11
15:54
У счета 41.01 вид субконто есть склад у приемника нет(((
53 shamannk
 
14.07.11
15:55
Как (52) обойти?
54 GenV
 
14.07.11
16:22
(53) Добавить при необходимости учет по складам в приемнике. Обычно в "Настройки учета" устанавливается.
55 shamannk
 
14.07.11
16:29
(54) Нет нельзя. Как его не добавлять (именно эту аналитику а не проводку в целом)?
56 GenV
 
14.07.11
16:32
(55) Когда заполняешь соответствие субконто проверяй что добавляется субконто Склады для счета 41.1 и не добавляй его в соответствие. Можно и в обработчиках проверять, например в ПриВыгрузке ПКС.
57 GenV
 
14.07.11
16:32
56+ если в обработчике, тогда Отказ устанавливать
58 shamannk
 
14.07.11
16:39
(56) Как то не не красиво. А если такой счет не один. Может както на стороне приемника проверить этот счет на соответствие видам субконто?
59 GenV
 
14.07.11
16:54
(58) В типовых так. По мне проще сделать список счетов исключений в источнике и его анализировать, чем движения анализировать после загрузки объекта.
60 shamannk
 
15.07.11
08:10
(59) А пример где в типовых найти. Что то не догоняю как это сделать.
61 Живой Ископаемый
 
15.07.11
08:27
я не знаю, может за то, что я сейчас покажу меня закидают ссанными тряпками, но я делал примерно так:
http://screencast.com/t/j5ET1H6wgXZ
то есть во-первых куча исключений по счетом. Понятно почему - на 77 есть аналитика, на 8 - нет, или например она в другом порядке...
Все это делалось в ПКГС Хозрасчетный...
кроме того, была еще ситуация когда один и тот же вид субконто в 8-ке должен переходить в разные виды субконто, в зависимости от счета... На одном счете это инвестиция, на другом ОС... Тогда приходлось заводить еще одно правило конвертации в группе Планов видов характеристик, и там указывать конвертацию значеий, и уже в алгоритме при выгрузке субконто анализировать также счета и вызывать то или иное правило конвертации...
62 shamannk
 
15.07.11
08:50
(61) v8: Перенос ручных операций с помощью КД из 77 в 8. Как сделать? читал там не закидали и тут не будут. Так понимаю под каждый счет свои условия?
63 Живой Ископаемый
 
15.07.11
09:54
не под каждый, под некоторые... я вообще как делал - сначала взял один вид документов, Банковская Выписка, и перенес в ручную операцию.... Все исключения которые были, попытался описать.. Потом взял следующий вид документа, скопировал с первого, начал выгружать-загружать - увидел еще исключения, которые появились в этом новом виде документа, но не встречались в БВ, добавил их, и так далее... Код для ПГКС хозрасчетный копировал во все виды документов...
64 shamannk
 
15.07.11
13:04
В параметрах определены счета у которых  2 или 1 или 0 видов субконто. Мучает вопрос так можно делать?

    СубконтоДт = Новый Соответствие;
Если Параметры.СчетаПрав3.Получить(Выборка.СчетДт.Код) =  Неопределено Тогда            
    Если  НЕ Выборка.ВидСубконтоДт1=null И  ЗначениеЗаполнено(Выборка.СубконтоДт1) Тогда
          СубконтоДт.Вставить(Выборка.ВидСубконтоДт1,Выборка.СубконтоДт1);
    КонецЕсли;
     
    Если Параметры.СчетаПрав1.Получить(Выборка.СчетДт.Код) =  Неопределено Тогда
       
        Если  НЕ Выборка.ВидСубконтоДт2=null И  ЗначениеЗаполнено(Выборка.СубконтоДт2) Тогда
         СубконтоДт.Вставить(Выборка.ВидСубконтоДт2,Выборка.СубконтоДт2);
        КонецЕсли;
     
        Если Параметры.СчетаПрав2.Получить(Выборка.СчетДт.Код) =  Неопределено Тогда
           Если  НЕ Выборка.ВидСубконтоДт3=null И  ЗначениеЗаполнено(Выборка.СубконтоДт3)  Тогда
             СубконтоДт.Вставить(Выборка.ВидСубконтоДт3,Выборка.СубконтоДт3);
           КонецЕсли;
        КонецЕсли;
    КонецЕсли;
КонецЕсли;
65 shamannk
 
15.07.11
13:34
Или для каждого отличающегося счета нужно сделать соответствия в которых указанны какие субконто переносить и при выгрузке проверять эти счета какие виды субконто переносить?
66 GenV
 
15.07.11
13:36
(65) Обычно делают так (в общих чертах):
Если Лев(СчетДт.Код, 2) = "20" и ВидСубконто = ВидСубконтоПодразделение Тогда
  // Это субконто отсутствует, пропускаем
Иначе
  // Это субконто есть - добавляем
  СубконтоДт.Вставить(ВидСубконто, ЗначениеСубконто);
КонецЕсли;
67 shamannk
 
15.07.11
14:38
А как вам такой вариант, Создаю соответствие где указаны измененные счета в ключе счет значение цифра, и соответствия в которых виды субконто в ключе и значение.

Для Инд=1 По 3 Цикл    
     
       Если  НЕ Выборка["ВидСубконтоДт"+Строка(Инд)]=null И  ЗначениеЗаполнено(Выборка["СубконтоДт"+Строка(Инд)]) Тогда
           Если Параметры.СчетаСИзм.Получить(Выборка.СчетДт.Код) = Неопределено Тогда
                СубконтоДт.Вставить["ВидСубконтоДт"+Строка(Инд)],Выборка["СубконтоДт"+Строка(Инд)]);
           Иначе
               Если Выборка["ВидСубконтоДт"+Строка(Инд)]=Параметры["ВидыСубконто"+Строка(Параметры.СчетаСИзм.Получить(Выборка.СчетДт.Код))].Получить["ВидСубконтоДт"+Строка(Инд)]
                   СубконтоДт.Вставить["ВидСубконтоДт"+Строка(Инд)],Выборка["СубконтоДт"+Строка(Инд)]);
               КонецЕсли;
       КонецЕсли;
      КонецЦикла;
68 GenV
 
15.07.11
14:56
(67) Можно и так, только выигрыша от соответствия в соответствии особого не будет. Можно сразу в ТЗ тогда уж запихнуть и через НайтиСтроки проверять.
69 shamannk
 
15.07.11
15:09
(68) Параметры вроде как по быстрее в обмене будут, Могу ошибаться.
70 shamannk
 
18.07.11
08:31
Хочу номенклатуру везде подставить одну для каждой организации пишу так:
УникальНомен = Выборка.Организация.Наименование+";"+ПрефиксБазы;
Если Выборка["ВидСубконтоКт"+Строка(Инд)].Наименование = "Номенклатура" Тогда
СубконтоКт.Вставить(Выборка["ВидСубконтоКт"+Строка(Инд)],УникальНомен);


В ПКО номенклатура исчточник убрал. В приемнике в справочнике номенклатура создается но в проводках ее нет.
71 shamannk
 
18.07.11
09:39
ап
72 shamannk
 
18.07.11
14:07
Никто не делал такое?
73 shamannk
 
21.07.11
20:49
Помогите!!!
74 shamannk
 
08.08.11
10:49
ап