|
При переносе через кд 2.1 в БП 3 создаются лишние доки | ☑ | ||
---|---|---|---|---|
0
program345
02.07.19
✎
08:55
|
Из базы источника переношу документ Отчет комиссионера о продажах, и счет фактура для него, в бп при этом счет фактура помечена на удаление и создается еще одна счет фактура (171 номер на скрине)
https://yadi.sk/i/dMf6_gOGsOVlCg |
|||
1
program345
02.07.19
✎
08:56
|
в еще одной счет -фактуре создался комментарий "Создан автоматически на основании документа отчет комиссионера о продажах"
|
|||
2
program345
02.07.19
✎
08:57
|
как отключить создание счет-фактур автоматом при обмене?
|
|||
3
program345
02.07.19
✎
08:58
|
естественно в источнике счет-фактура проведена
|
|||
4
Exxter
02.07.19
✎
09:01
|
(3) СФ создаётся при проведении ОКОПа
|
|||
5
Exxter
02.07.19
✎
09:04
|
+(4) ВыставленСФ смотри
|
|||
6
program345
02.07.19
✎
09:07
|
(4) что такое ОКОП?
|
|||
7
program345
02.07.19
✎
09:07
|
может ОКОПФ?
|
|||
8
Exxter
02.07.19
✎
09:09
|
(7) Отчёт комиссионера о продажах = ОКОП
|
|||
9
program345
02.07.19
✎
09:11
|
(8) ок спасибо,
по глобальному поиску нашел процедуру где создается комментарий (создано автоматически) Процедура НайтиСоздатьПодчиненныеСчетаФактуры(ДокументСсылка, ДанныеСчетовФактур, ПодчиненныеСчетаФактуры, ИмяТаблицы) ЕстьСоглашениеЭД = НаличиеСоглашенияЭДСКомиссионером(); Для каждого СтрокаТаблицы Из ДанныеСчетовФактур Цикл ВерсияКодовВидовОпераций = УчетНДСКлиентСервер.ВерсияКодовВидовОпераций(СтрокаТаблицы.ДатаСФ); СтрокаСФ = НайтиСтрокуСчетаФактуры(ПодчиненныеСчетаФактуры, СтрокаТаблицы); Если СтрокаСФ <> Неопределено Тогда Если День(СтрокаСФ.ДатаСФ) <> День(СтрокаТаблицы.ДатаСФ) ИЛИ СтрокаСФ.СводныйСФ <> СтрокаТаблицы.СводныйСФ Тогда ДокументСФ = СтрокаСФ.Ссылка.ПолучитьОбъект(); Если День(СтрокаСФ.ДатаСФ) <> День(СтрокаТаблицы.ДатаСФ) Тогда Если ТипЗнч(ДокументСФ) = Тип("ДокументОбъект.СчетФактураВыданный") Тогда ДокументСФ.Дата = СтрокаТаблицы.ДатаСФ; Иначе ДокументСФ.ДатаВходящегоДокумента = СтрокаТаблицы.ДатаСФ; КонецЕсли; КонецЕсли; ДокументСФ.СводныйКомиссионный = СтрокаТаблицы.СводныйСФ; ДокументСФ.ДополнительныеСвойства.Вставить("ОбновлятьРеквизитыПриЗаписи", Ложь); ДокументСФ.ДополнительныеСвойства.Вставить("ГрупповоеПерепроведение", ПроведениеСервер.ГрупповоеПерепроведение(ЭтотОбъект)); Если ДополнительныеСвойства.Свойство("РегистрыТребующиеОчисткиПоДокументам") Тогда ДокументСФ.ДополнительныеСвойства.Вставить("РегистрыТребующиеОчисткиПоДокументам", ДополнительныеСвойства.РегистрыТребующиеОчисткиПоДокументам); КонецЕсли; ДокументСФ.Записать(); // Обновить значение строки таблицы с счетами-фактурами ЗаполнитьЗначенияСвойств(СтрокаСФ, СтрокаТаблицы); ЗаполнитьЗначенияСвойств(СтрокаСФ, ДокументСФ); КонецЕсли; СтрокаТЧ = ЭтотОбъект[ИмяТаблицы].Найти(СтрокаТаблицы.КлючСтроки, "КлючСтроки"); Если СтрокаТЧ <> Неопределено Тогда СтрокаТЧ.СчетФактура = СтрокаСФ.Ссылка; СтрокаСФ.Использован = Истина; КонецЕсли; Продолжить; ИначеЕсли ИмяТаблицы = "Покупатели" Тогда Если НЕ УчетНДС.ФорматныйКонтрольИННиКППКонтрагентаПройден(СтрокаТаблицы.Покупатель, "Выданный", Ложь) Тогда Продолжить; КонецЕсли; ДокументСФ = Документы.СчетФактураВыданный.СоздатьДокумент(); ДокументСФ.Дата = СтрокаТаблицы.ДатаСФ; ДокументСФ.Организация = Организация; ДокументСФ.Ответственный = Пользователи.ТекущийПользователь(); ДокументСФ.Контрагент = СтрокаТаблицы.Покупатель; ДокументСФ.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаРеализацию; ДокументСФ.Комментарий = НСтр("ru = 'Создан автоматически на основании документа отчет комиссионера о продажах'"); ДокументСФ.СводныйКомиссионный = СтрокаТаблицы.СводныйСФ; Если ДокументСФ.СводныйКомиссионный Тогда ДокументСФ.КодВидаОперации = "27"; Иначе ДокументСФ.КодВидаОперации = ?(ВерсияКодовВидовОпераций < 3, "04", "01"); КонецЕсли; Если ЕстьСоглашениеЭД Тогда ДокументСФ.КодСпособаВыставления = 2; ДокументСФ.Выставлен = Ложь; ДокументСФ.ДатаВыставления = '00010101'; ДокументСФ.ДополнительныеСвойства.Вставить("ЕстьСоглашение", Истина); Иначе ДокументСФ.КодСпособаВыставления = 1; ДокументСФ.Выставлен = Истина; ДокументСФ.ДатаВыставления = ЭтотОбъект.Дата; КонецЕсли; ОтветственныеЛицаБП.УстановитьОтветственныхЛиц(ДокументСФ); ДокументСФ.ДокументыОснования.Добавить().ДокументОснование = ДокументСсылка; // Счет-фактура только что сформирован, заполним данные платежно-расчетных документов Если ЗначениеЗаполнено(ДокументСсылка) Тогда МассивОснований = Новый Массив; МассивОснований.Добавить(ДокументСсылка); ДокументСФ.ПлатежноРасчетныеДокументы.Очистить(); ДокументСФ.ПлатежноРасчетныеДокументы.Загрузить( Документы.СчетФактураВыданный.ДатыНомераПлатежноРасчетныхДокументов(МассивОснований)); КонецЕсли; ИначеЕсли ИмяТаблицы = "Возвраты" Тогда ПараметрыСчетаФактуры = Новый Структура("Организация, Контрагент", Организация, Контрагент); ПараметрыСчетаФактуры.Вставить("НомерСчетаФактурыПолученного", СтрокаТаблицы.НомерСФ); ПараметрыСчетаФактуры.Вставить("ДатаСчетаФактурыПолученного", СтрокаТаблицы.ДатаСФ); ПараметрыСчетаФактуры.Вставить("Продавец", СтрокаТаблицы.Покупатель); ДокументСФ = УчетНДСПереопределяемый.НайтиСчетФактуруПолученный(ПараметрыСчетаФактуры); Если ДокументСФ = Неопределено Тогда Если НЕ УчетНДС.ФорматныйКонтрольИННиКППКонтрагентаПройден(СтрокаТаблицы.Покупатель, "Полученный", Ложь) Тогда Продолжить; КонецЕсли; ДокументСФ = Документы.СчетФактураПолученный.СоздатьДокумент(); ДокументСФ.Дата = Дата; ДокументСФ.ДатаВходящегоДокумента = СтрокаТаблицы.ДатаСФ; ДокументСФ.НомерВходящегоДокумента = СтрокаТаблицы.НомерСФ; ДокументСФ.Организация = Организация; ДокументСФ.Ответственный = Пользователи.ТекущийПользователь(); ДокументСФ.Продавец = СтрокаТаблицы.Покупатель; ДокументСФ.Контрагент = Контрагент; ДокументСФ.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыПолученного.НаПоступление; ДокументСФ.Комментарий = НСтр("ru = 'Создан автоматически на основании документа отчет комиссионера о продажах'"); ДокументСФ.ВозвратЧерезКомиссионера = Истина; ДокументСФ.КодВидаОперации = ?(ВерсияКодовВидовОпераций < 3, "03", "01"); ДокументСФ.КодСпособаПолучения = 1; Иначе ДокументСФ = ДокументСФ.ПолучитьОбъект(); КонецЕсли; Если Дата >= '20150101' И ДокументСф.Продавцы.Найти(СтрокаТаблицы.Покупатель, "Продавец") = Неопределено Тогда ДокументСф.Продавцы.Очистить(); ДокументСФ.Продавцы.Добавить().Продавец = СтрокаТаблицы.Покупатель; КонецЕсли; Если ДокументСф.ДокументыОснования.Найти(ДокументСсылка, "ДокументОснование") = Неопределено Тогда ДокументСФ.ДокументыОснования.Добавить().ДокументОснование = ДокументСсылка; КонецЕсли; КонецЕсли; ДокументСФ.ДополнительныеСвойства.Вставить("ОбновлятьРеквизитыПриЗаписи", Ложь); ДокументСФ.ДополнительныеСвойства.Вставить("ГрупповоеПерепроведение", ПроведениеСервер.ГрупповоеПерепроведение(ЭтотОбъект)); Если ДополнительныеСвойства.Свойство("РегистрыТребующиеОчисткиПоДокументам") Тогда ДокументСФ.ДополнительныеСвойства.Вставить("РегистрыТребующиеОчисткиПоДокументам", ДополнительныеСвойства.РегистрыТребующиеОчисткиПоДокументам); КонецЕсли; ДокументСФ.Записать(); // Этот новый счет-фактуру нужно зафиксировать в таблице счетов-фактур СтрокаСФ = ПодчиненныеСчетаФактуры.Добавить(); ЗаполнитьЗначенияСвойств(СтрокаСФ, СтрокаТаблицы); ЗаполнитьЗначенияСвойств(СтрокаСФ, ДокументСФ); СтрокаТЧ = ЭтотОбъект[ИмяТаблицы].Найти(СтрокаТаблицы.КлючСтроки, "КлючСтроки"); Если СтрокаТЧ <> Неопределено Тогда СтрокаТЧ.СчетФактура = СтрокаСФ.Ссылка; СтрокаСФ.Использован = Истина; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
10
Exxter
02.07.19
✎
09:16
|
(9) Убери галку в ТЧ как написано в (5)
|
|||
11
program345
05.07.19
✎
08:57
|
(10) спасибо, проблема была с контрагентом в переносимой счет-фактуре.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |