|
КД: конвертация договоров | ☑ | ||
---|---|---|---|---|
0
vicof
04.11.11
✎
23:27
|
Всем привет!
Такая ситуация. Бух 7.7 -> БП 2.0 В 7.7 куча договоров с видом "Основной вид договоров". Как их лучше разделить по виду в 8 (с покупателем, с поставщиком, прочее)? Сейчас проверяю обороты по договору на 60, 62, 76 счетах, и в зависимости от этого ставлю вид договора. Все бы ничего, но многие договоры участвуют в движениях и по 60, и по 62, и по 76 в совокупности. Какие выходы могут быть? Стрелять коленки бухам поздно, 5000 договоров перелопачивать тоже нехорошо, это они месяц будут ковыряться. Есть идея конвертировать один договор сразу в три - отличающиеся только видом договора. А при конвертации документов уже решать, какой из трех договоров подставлять. Но пока не совсем понятно, как такую штуку реализовать. |
|||
1
Господин ПЖ
04.11.11
✎
23:29
|
поздравляю... а за современную технологию взаиморасчетов архитекторов в 1с надо в голову гвоздь забить
|
|||
2
Axel2009
04.11.11
✎
23:30
|
на каждый счет свой договор, в чем проблема то??
|
|||
3
Рэйв
04.11.11
✎
23:33
|
если договора не могут зайти один в один, то проще сделать новых столько сколько надо.Т.е. если док расхода- с покупателем делаем новый, если пирхода - с поставщиком..Только имскать надо после загрузки их по кодам или еще чему чтобы дублей не было.Или заполнячть по ПКО,а после записи смотреть найденное и или оставлять если подходит, или искать/создавать новый если нет
|
|||
4
vicof
04.11.11
✎
23:37
|
(2,3) спасиб, накропаю кода, попозже отпишусь о результатах.
(1) это точно |
|||
5
vicof
05.11.11
✎
20:19
|
Сделал так, не работает:
В ПКО Договоры после загрузки поместил следующий код Сообщить(Объект.ВидДоговора); Если Объект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.Прочее Тогда НовыйОбъект = Объект.Скопировать(); НовыйОбъект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПоставщиком; НовыйОбъект.Записать(); НовыйОбъект = Объект.Скопировать(); НовыйОбъект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПокупателем; НовыйОбъект.Записать(); Сообщить("111"); ИначеЕсли Объект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПоставщиком Тогда НовыйОбъект = Объект.Скопировать(); НовыйОбъект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.Прочее; НовыйОбъект.Записать(); НовыйОбъект = Объект.Скопировать(); НовыйОбъект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПокупателем; НовыйОбъект.Записать(); Сообщить("222"); ИначеЕсли Объект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПокупателем Тогда НовыйОбъект = Объект.Скопировать(); НовыйОбъект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПоставщиком; НовыйОбъект.Записать(); НовыйОбъект = Объект.Скопировать(); НовыйОбъект.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.Прочее; НовыйОбъект.Записать(); Сообщить("333"); КонецЕсли При загрузке ни одного сообщения не выходит. Чего поправить в консерватории? |
|||
6
vicof
05.11.11
✎
20:36
|
В помощи написано, что это обработчик только для платформы v8. Может, поэтому? Хотя, с другой стороны, я ж в 8 загружаю.
|
|||
7
vicof
05.11.11
✎
20:43
|
Еще делал так. Перед выгрузкой такой код. ВидДоговора - получатьИзВходящихДанных.
Если Источник.ВидДоговора = Параметры.ДоговорОсновной Тогда ИсходящиеДанные = "СПокупателем"; ВыгрузитьПоПравилу(Источник,,ВходящиеДанные,,"ДоговорыКонтрагентовПоВидам"); ИсходящиеДанные = "СПоставщиком"; ВыгрузитьПоПравилу(Источник,,ВходящиеДанные,,"ДоговорыКонтрагентовПоВидам"); ИсходящиеДанные = "Прочее"; ВыгрузитьПоПравилу(Источник,,ВходящиеДанные,,"ДоговорыКонтрагентовПоВидам"); ИначеЕсли Источник.ВидДоговора = Параметры.ДоговорЗайма Тогда ИсходящиеДанные = "Займ"; ВыгрузитьПоПравилу(Источник,,ВходящиеДанные,,"ДоговорыКонтрагентовПоВидам"); КонецЕсли; тогда вообще ничего не выгружается, а 1ска вылетает. |
|||
8
vicof
05.11.11
✎
21:02
|
Мож кто чего подскажет? :)
|
|||
9
25-11
05.11.11
✎
21:11
|
Наверное, Скопировать() еще нельзя применить. Объект еще в базу не записан.
Попробуй в лоб создавать новый объект типа договор и его реквизиты заполнять. так точно должно работать |
|||
10
vicof
05.11.11
✎
21:19
|
Так он мне даже
Сообщить(Объект.ВидДоговора); не выводит. |
|||
11
Axel2009
05.11.11
✎
21:23
|
ну так отладь загрузку и посмотри какое значение у тебя имеет ВидДоговора
|
|||
12
Naumov
05.11.11
✎
22:43
|
Правила конвертации сами прекрасной разобьют на несколько договоров. только наименование одно будет
|
|||
13
vicof
05.11.11
✎
22:59
|
(12) поподробней, пожалста. Имеешь ввиду поиск по полям?
Если да, то не прокатит, т.к. - "В 7.7 куча договоров с видом "Основной вид договоров"", которые используются в движениях по разным счетам. |
|||
14
МишельЛагранж
05.11.11
✎
23:05
|
(12) 1с-то?? конечно, она и сама все придумает, и работает быстро, и вообще великолепна.
(0) а в 7-ке договора шли по другим счетам? может, есть какой-то флаг, ловить его, и по нему - уже назначать вид договора? |
|||
15
vicof
05.11.11
✎
23:11
|
(14) Флага нет, учет велся как попало. Но и 1с-овцы тоже хороши - см.(1).
Могу брать обороты по счетам - 1 вариант. (минус - обороты могут быть по нескольким счетам - какой вид договора будет?) Могу создавать несколько договоров, и в нужный момент подставлять нужные - 2 вариант. (минус - каждый раз надо формировать исходящие данные для выгрузки). |
|||
16
МишельЛагранж
05.11.11
✎
23:16
|
(15) я имел ввиду - счета-то хоть совпадают с 7-ми при разнесении договоров?
вам, наверное, только 2-ой путь - по три разных договора, а там потом пусть выбирают, какой правильный... хотя документы опять же будут привязаны к одному... |
|||
17
Naumov
05.11.11
✎
23:27
|
(13) посмотри как поиск в типовых правилах настроен. может поймешь
|
|||
18
Naumov
05.11.11
✎
23:29
|
(13) Надеюсь имеется в виду, что "куча договоров с видом "Основной вид договоров"" относятся к разным контрагентам?
|
|||
19
vicof
05.11.11
✎
23:39
|
(18) к разным.
(17) лан, уже не соображаю, с утреца еще раз посмотрю. (16) Счета совпадают. Виды договоров не совпадают. |
|||
20
Naumov
05.11.11
✎
23:50
|
(19) тогда типовая если есть расчеты и с покупателем и споставщиком сделает два договора с одинаковым наименованием, но разыми видами расчетов.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |