|
Помогите с переносом из 8 в 7.7 | ☑ | ||
---|---|---|---|---|
0
program345
31.10.16
✎
10:40
|
ДОбрый день!
Из ут 10 делаю перенос в 1с 7.7. Документ поступление товаров и услуг. В 8-ке он проведенный, в 7.7 после переноса - нет. Процедура ПоступлениеТовара(Док) ПН=V7.CreateObject("Документ.ПоступлениеТоваров"); СВРН=V7.CreateObject("Справочник.ВариантыРасчетаНалогов"); БСЧЕТ=V7.CreateObject("Счет.Основной"); Пн= ПолучитьДокумент(Док,"ПоступлениеТоваров",Истина); Пн.НомерДок=Док.Номер; Пн.ДатаДок=Док.Дата; ПН.Контрагент=оКонтрагент(Док.Контрагент); Если ЗначениеЗаполнено(Док.КонтрагентТранзит) тогда ПН.КонтрагентТранзит=оКонтрагент(Док.КонтрагентТранзит); КонецЕсли; ПН.Договор=оДоговор(Док.ДоговорКонтрагента); ПН.ВидПоступления=1; Если док.ВидПоступления=Перечисления.ВидыПоступленияТоваров.НаСклад Тогда ПН.МестоХранения=оСклад(Док.СкладОрдер); Иначе ПН.МестоХранения=оСклад(Док.СкладОрдер.Склад); КонецЕсли; ПН.курс=1; ПН.ВерсияОбъекта=V7.Константа.НомерРелиза; Если Док.СуммаВключаетНДС Тогда стрНалоги="НДС в сумме"; Иначе стрНалоги="НДС сверху"; КонецЕсли; СчетФактура=НайтиПодчиненныйДокумент(Док, "СчетФактураПолученный"); Если СчетФактура<>Неопределено Тогда Пн.ДатаНомерСчетаФактуры=строка(СчетФактура.НомерВходящегоДокумента) +" от "+Формат(СчетФактура.ДатаВходящегоДокумента,"ДЛФ=Д"); КонецЕсли; ПН.UUID=строка(Док.Ссылка.УникальныйИдентификатор()); ЗаписатьПровестиДокумент(ПН,Док); КонецПроцедуры И соответсвенно: Функция ЗаписатьПровестиДокумент(ДокументV7,ДокументV8) Попытка ДокументV7.Записать(); Исключение Сообщить(" ***************** Отчет об ошибке записи ***************************** "); Сообщить("Документ v8 - "+ДокументV8+" Номер документа- "+ДокументV8.Номер+" Дата документа-"+ДокументV8.Дата); Сообщить("Документ v7 - "+ДокументV7.Вид()+" Номер документа- "+ДокументV7.НомерДок+" Дата документа-"+ДокументV7.ДатаДок); Форма=ДокументV8.ПолучитьФорму("ФормаСписка"); Форма.Открыть(); Форма.ЭлементыФормы.Список.ТекущаяСтрока=ДокументV8; Сообщить(" ***************** Описание ошибки ***************************** "); Сообщить(ОписаниеОшибки()); КонецПопытки; Если ДокументV8.ПометкаУдаления Тогда ДокументV7.Удалить(0); Иначе ДокументV7.СнятьПометкуУдаления(); Если ДокументV8.Проведен Тогда ДокументV7.Провести(); Иначе Если ДокументV7.Проведен()=1 Тогда ДокументV7.СделатьНеПроведенным(); КонецЕсли; КонецЕсли; конецЕсли; состояние(ДокументV8); КонецФункции Как победить? |
|||
1
DrShad
31.10.16
✎
10:48
|
а что победить нужно?
|
|||
2
program345
31.10.16
✎
10:54
|
(1) почему-то документ В 8-ке проведенный, в 7.7 после переноса - нет. Проводишь его вручную, после переноса он становится непроведенный.
|
|||
3
HawkEye
31.10.16
✎
10:55
|
(2) а отладчик что говорит?
|
|||
4
program345
31.10.16
✎
10:57
|
(3) в том то и дело, что отладчик на этом месте https://s.mail.ru/5oVH/C1YyFXLic
говорит что метод Провести() не обнаружен. (?!?) |
|||
5
HawkEye
31.10.16
✎
11:04
|
(4) попробуй: .Провести(1,"");
хотя конечно странно... в отладчике ДокументV7 - чему равен? |
|||
6
program345
31.10.16
✎
11:07
|
(5) благодарю, попробую.
|
|||
7
DrShad
31.10.16
✎
11:20
|
при работе по ОЛЕ необходимо в 7-ке заполнять все параметры методов
|
|||
8
DrShad
31.10.16
✎
11:21
|
даже если они пустые, то хотябы запятые ставить
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |