![]() |
![]() |
![]() |
|
КД Перенос проводок в ОперацияБух | ☑ | ||
---|---|---|---|---|
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
|
ап
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |