Имя: Пароль:
1C
1С v8
Перенос счетов!
,
0 TwoWorld
 
07.11.11
09:27
Подскажите, мне нужно при переносе из ТиС 7.7 в БП 2,0 перенести счета в ТЧ услуги! Как мне в КД это сделать?
1 angel1196
 
07.11.11
09:34
Вроде в тис нет счетов, или имеется в виду подставить счета в документ при загрузке?
2 TwoWorld
 
07.11.11
09:37
(1) В документе ТиС "Поступление товаров(прочее)" в ТЧ есть счета, их нужно перенести, только каким способом?
3 angel1196
 
07.11.11
09:41
Счета ТиСа совпадают со счетами БП или они дописаные?(с семеркой не работал года 4, не знал, что там счета есть)
4 TwoWorld
 
07.11.11
09:43
Счета не совпадают , это не проблема их сопоставить - вопрос только каким способом перегружать и где сопоставлять этот код:
   
Счет1 = Строка(Источник.Счет);
   
   ПервТ = Найти(Счет1,".");
   ВторТ = Найти(Сред(Счет1,ПервТ+1),".");
   Если ВторТ = 0 тогда
       ВторТ=СтрДлина(Счет1)+1;
   иначе
       ВторТ=ВторТ+ПервТ;
   КонецЕсли;
   Если (ВторТ-ПервТ)<3 тогда
       СчетПланаСчетов = Лев(Счет1,ПервТ)+"0"+Сред(Счет1,ПервТ+1,1)+Прав(Счет1,СтрДлина(Счет1)-(ПервТ+1));
   иначе
       СчетПланаСчетов = Счет1;
   КонецЕсли;
   
   Объект.СчетЗатрат = ПланыСчетов.Хозрасчетный.НайтиПоКоду(СчетПланаСчетов);
5 Tonik
 
07.11.11
09:50
в обработчике ПриВыгрузке для ПКО?
6 angel1196
 
07.11.11
09:54
В конвертации раскрываем табличную часть, ищем реквизит "Счет"(или как он называется), открываем его, в процедуре "перед выгрузкой" пишем код, в результате выполнения которго должна быть переменная содержащая код счета как он есть в БП, и пишем выражение
Значение = 'наша переменная'. При загрузке, если тип приемника не является составным программа автоматически найдет элемент плана счетов и подставит в этот реквизит...
7 TwoWorld
 
07.11.11
10:01
(6) переменная какого типа должна быть?
8 angel1196
 
07.11.11
10:06
строка
9 TwoWorld
 
07.11.11
10:08
(8) ок, спасибо!
10 TwoWorld
 
07.11.11
10:14
А у меня галочка "передавать данные в параметр не активно"
11 angel1196
 
07.11.11
10:24
эта галочка на данный механизм не влияет
12 TwoWorld
 
07.11.11
10:59
Не работает!
Сделал так:
Источник - пустое значение
Приемник - СчетЗатрат
ПередВыгрузкой:
Счет1 = Строка(Источник.Счет);

ПервТ = Найти(Счет1,".");
ВторТ = Найти(Сред(Счет1,ПервТ+1),".");
Если ВторТ = 0 тогда
   ВторТ=СтрДлина(Счет1)+1;
иначе
   ВторТ=ВторТ+ПервТ;
КонецЕсли;
Если (ВторТ-ПервТ)<3 тогда
   СчетПланаСчетов = Лев(Счет1,ПервТ)+"0"+Сред(Счет1,ПервТ+1,1)+Прав(Счет1,СтрДлина(Счет1)-(ПервТ+1));
иначе
   СчетПланаСчетов = Счет1;
КонецЕсли;

Значение = СчетПланаСчетов;
13 angel1196
 
07.11.11
11:47
Работать должно(проверил свои старые конвертации, сделано именно так как описал)
1. Код счета должен быть в виде "90.03"
2. Тип приемника какой, "ПланСчетовСсылка.Хозрасчетный"? или составной (если составной, то чуть сложнее)
3. Посмотри что у тебя получается в результате выполнения твоего кода через конвертацию, например, командой "Сообщить(Значение)" (в семерке помоему Сообщение())
4. этот код обрабатывает счета вида 90.01.1?
14 TwoWorld
 
07.11.11
14:16
Да сработало, там надо было поправить в самой обработке!
angel1196, а у тебя нет субконто реально перенести в проставить в документе "Поступление услуг"???