|
1с83 КА 2.4 Дополнительная проводка к типовому документу | ☑ | ||
---|---|---|---|---|
0
buketovav
18.11.18
✎
19:49
|
Добрый день!
очень нужна помощь Создал подписку на событие Источник - РегистрБухгалтерииНаборЗаписей.Хозрасчетный Событие - ПриЗаписи Обработчик - ДобавленныйМодульДляДокументов.ДопПроводкиПоРегиструХозрасчетныйПриЗаписи Код обработчика: // регистр Хозрасчетный Передача = Источник.Отбор.Регистратор.Значение; Если ТипЗнч(Передача) = Тип("ДокументСсылка.ПередачаСырьяПереработчику") Тогда Если Передача.Давальческое = Истина Тогда Для Каждого ТекСтрокаТовары Из Передача.Товары Цикл НоваяПроводка = Источник.Добавить(); НоваяПроводка.СчетДт = ПланыСчетов.Хозрасчетный.МатериалыПринятыеВПереработку; НоваяПроводка.Период = Передача.Дата; НоваяПроводка.Организация = Передача.Организация; НоваяПроводка.ПодразделениеДт = Передача.Подразделение; НоваяПроводка.Сумма = ТекСтрокаТовары.Сумма; НоваяПроводка.КоличествоДт = ТекСтрокаТовары.Количество; НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты] = Передача.Контрагент; НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура] = ТекСтрокаТовары.Номенклатура; КонецЦикла; //Источник.Записать(ЛОЖЬ); КонецЕсли; КонецЕсли; проходит все без ошибок, но ми проводки не добавляются, отображаются только типовые проводки а мне нужно, чтобы отображались и типовые и мои добавленные. отладчиком прошел по коду, движения все заполняются, но что-то где-то не так, очень прошу помощи, завтра дедлайн |
|||
1
palsergeich
18.11.18
✎
20:07
|
Во первых - при записи - набор уже записан в БД. И добавление к нему бесполезно.
Попробуйте передЗаписью |
|||
2
buketovav
18.11.18
✎
20:30
|
Спасибо огромное, получилось!
|
|||
3
buketovav
19.11.18
✎
15:35
|
а такой вопрос: а каким образом могу удалить проводки. например, по 10 счету?
|
|||
4
palsergeich
19.11.18
✎
15:36
|
(3) Из этого же набора записей?
|
|||
5
buketovav
19.11.18
✎
15:40
|
этот же документ формирует типовые проводки при отражении в регламентированном учете, так вот мне надо удалить все проводки, которые связаны с 10 счетом
|
|||
6
shuhard
19.11.18
✎
15:41
|
(5) перед записью в модуле Рг бухгалтерии с отбором по типу регистратора и корреспонденции счетов
|
|||
7
palsergeich
19.11.18
✎
15:42
|
(5) Если Вы работаете в (0) этом наборе записей, то самым читаемым способом будет:
- Выгрузить проводки из набора записей в таблицу значений - Удалить необходимые проводки - Загрузить таблицу значений в набор записей |
|||
8
palsergeich
19.11.18
✎
15:44
|
Естесственно с этими уточнениями (6)
|
|||
9
buketovav
19.11.18
✎
15:45
|
сейчас выполняется такой обработчик для добавления проводок к типовым, выполняется перед записью:
Процедура ДопПроводкиПоРегиструХозрасчетныйПриЗаписи(Источник, Отказ, РежимЗаписи) Экспорт // регистр Хозрасчетный приход Переработчику - документ ПередачаСырьяПереработчику Передача = Источник.Отбор.Регистратор.Значение; Если ТипЗнч(Передача) = Тип("ДокументСсылка.ПередачаСырьяПереработчику") Тогда Если Передача.Давальческое = Истина Тогда Для Каждого ТекСтрокаТовары Из Передача.Товары Цикл НоваяПроводка = Источник.Добавить(); НоваяПроводка.СчетДт = ПланыСчетов.Хозрасчетный.МатериалыПринятыеВПереработку; НоваяПроводка.Период = Передача.Дата; НоваяПроводка.Организация = Передача.Организация; НоваяПроводка.ПодразделениеДт = Передача.Подразделение; //НоваяПроводка.Сумма = ТекСтрокаТовары.Сумма; НоваяПроводка.КоличествоДт = ТекСтрокаТовары.Количество; НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты] = Передача.Контрагент; НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура] = ТекСтрокаТовары.Номенклатура; КонецЦикла; // регистр Хозрасчетный расход у Нас Для Каждого ТекСтрокаТовары Из Передача.Товары Цикл НоваяПроводка = Источник.Добавить(); НоваяПроводка.СчетКт = ПланыСчетов.Хозрасчетный.МатериалыПринятыеВПереработку; НоваяПроводка.Период = Передача.Дата; НоваяПроводка.Организация = Передача.Организация; НоваяПроводка.ПодразделениеКт = Передача.Подразделение; //НоваяПроводка.Сумма = ТекСтрокаТовары.Сумма; НоваяПроводка.КоличествоКт = ТекСтрокаТовары.Количество; НоваяПроводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты] = Передача.Организация; НоваяПроводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура] = ТекСтрокаТовары.Номенклатура; КонецЦикла; Источник.Прочитать(); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
10
buketovav
19.11.18
✎
15:47
|
но у меня в наборе записей присутствуют только мои добавленные проводки? или мне надо выполнить команду Источник.Прочитать(); ?
|
|||
11
Фрэнки
19.11.18
✎
15:48
|
А какого типа параметр Источник в коде?
|
|||
12
Фрэнки
19.11.18
✎
15:51
|
а я все думаю, что за головняк у ТС...
А он прицепил подписку на событие к набору записей регистра, вместо того, чтоб повесить все на событие ПередЗаписью документа! |
|||
13
buketovav
19.11.18
✎
15:51
|
Тип - РегистрБухгалтерииНаборЗаписей.Хозрасчетный
|
|||
14
buketovav
19.11.18
✎
15:53
|
не вариант, так как мои проводки формируются при отражении документа в рег учете. и если все делать в обработке проведения, то все мои проводки удаляются и отображаются только типовые, а мне надо чтобы отображались мои проводки, типовые и удалить все проводки, которые связаны с 10 счетом
|
|||
15
buketovav
19.11.18
✎
15:53
|
все работает, осталось только удалить проводки связанные с 10 счетом
|
|||
16
Фрэнки
19.11.18
✎
15:55
|
(15) тогда, во избежании путаницы и придания большего порядка смотри совет в (7)
Работай в набором через Выгрузить в таб значений, обработай все в таблице, а на выходе загрузить в набор |
|||
17
Фрэнки
19.11.18
✎
15:56
|
и обработку строк в таблице значений легче будет расписать
|
|||
18
buketovav
19.11.18
✎
15:57
|
понял. пошел пробовать
|
|||
19
buketovav
19.11.18
✎
16:04
|
но есть проблема одна, я отладчиком смотрю на Источник и в нем только две проводки и те мои, я не вижу там типовых проводок. Может бытья не правильно смотрю или не там? смотрю "ПриЗаписи"
|
|||
20
Джинн
19.11.18
✎
16:07
|
(6) Сразу видно опытного индейца :)
|
|||
21
buketovav
19.11.18
✎
16:21
|
в источнике ПередЗаписью не вижу типовых проводок. только мои
|
|||
22
buketovav
19.11.18
✎
17:09
|
давайте продолжим предполагать, как правильно поступить и сделать?
|
|||
23
dinn
19.11.18
✎
17:24
|
Расширение наверное будет интереснее использовать
|
|||
24
buketovav
19.11.18
✎
20:12
|
почему Вы так считаете?
|
|||
25
buketovav
19.11.18
✎
20:12
|
чем это изменить ситуацию?
|
|||
26
Фрэнки
19.11.18
✎
20:17
|
По идее, перехват процедуры Расширением даст вход внутри транзакции, а не снаружи.
|
|||
27
buketovav
19.11.18
✎
20:27
|
с самого начала я как раз делал расширением, не получилось. неужели нет другого способа отсечь ненужные проводки?
|
|||
28
palsergeich
19.11.18
✎
20:55
|
(27) А что не получилось то?
|
|||
29
hhhh
19.11.18
✎
21:22
|
(27) перед записью там вызывается 2 раза. первый раз при очистке движений, поэтому там пусто, 2й раз уже когда добавляются проводки. поэтому у тебя нетривиальная задача - первое перед записью пропускаешь, во второе вклиниваешься.
|
|||
30
buketovav
19.11.18
✎
22:21
|
тогда что мне добавлять в расширение? документ? и в его модуле писать обработчик проведения с моими проводками? или сам РБ и в его модуль набора записей добавлять свои проводки при записи?
|
|||
31
buketovav
20.11.18
✎
07:54
|
(29) а где и как понять когда вызывается первый раз и когда второй? и где это происходит?
|
|||
32
buketovav
20.11.18
✎
08:27
|
(29) как мне понять и выяснить когда и где происходит второй вызов "ПередЗаписью"? Чтобы я мог прочитать набор записей и удалить из него ненужные мне проводки.
|
|||
33
buketovav
20.11.18
✎
10:07
|
ребят, ну подскажите, пожалуйста
|
|||
34
buketovav
20.11.18
✎
11:59
|
нашел полный набор записей в обработке ОтражениеДокументовВРеглУчете,
Код: &НаСервере Процедура ЗаполнитьПредставлениеВидовСубконто() Для каждого Запись Из НаборЗаписей Цикл ЗаполнитьЗначенияСвойств(Запись, ПредставлениеВидовСубконто(Запись.СчетДт, "Дт")); ЗаполнитьЗначенияСвойств(Запись, ПредставлениеВидовСубконто(Запись.СчетКт, "Кт")); КонецЦикла; КонецПроцедуры теперь его надо почистить от записей, которые мне не нужны в этом документе |
|||
35
buketovav
20.11.18
✎
14:13
|
не получается в этом месте ни чего сделать... что-то делаю не так. кто подскажет, как правильно удалить типовые проводки по определенному номеру счета и регистратору?
|
|||
36
buketovav
20.11.18
✎
14:20
|
помооооогитеееееееееееее, ни ка кне могу разобраться. как удалить несколько типовых проводок из набора записей, да и вообще где это делается
|
|||
37
Джинн
20.11.18
✎
14:23
|
(36) (6) читали?
|
|||
38
buketovav
20.11.18
✎
14:40
|
(37) ну конечно же, вот только у меня наборе в ПередЗаписью нет типовых проводок
|
|||
39
buketovav
20.11.18
✎
14:50
|
то есть в самом РБ, в модуле набора записей ПередЗаписью? вижу только мои проводки
|
|||
40
buketovav
20.11.18
✎
16:02
|
будет ли так правильно сделать в расширении:
&После("ПередЗаписью") Процедура Расш1_ПередЗаписью(Отказ, РежимЗаписи) //здесь будет обработчик КонецПроцедуры |
|||
41
Cyberhawk
20.11.18
✎
16:04
|
Проводки по РБ формируются пади отложенно
|
|||
42
Вафель
20.11.18
✎
16:04
|
(41) по другому и не может быть
|
|||
43
buketovav
20.11.18
✎
16:10
|
(41) (42) какие варианты решения могут быть? я уже всю голову сломал. подскажите
|
|||
44
Cyberhawk
20.11.18
✎
16:35
|
(43) Ну ловить в подписке ПередЗаписью РБ конечно же
|
|||
45
buketovav
20.11.18
✎
16:46
|
не ловится чет, вижу только свои добавленные проводки, типовые не вижу. Как можно поймать все и сразу?
|
|||
46
Cyberhawk
20.11.18
✎
16:47
|
В доп. свойствах НЗ поищи
|
|||
47
buketovav
20.11.18
✎
16:55
|
(46) там только структура, записей нет
|
|||
48
Cyberhawk
20.11.18
✎
17:08
|
Мне лениво смотреть, где именно это делается (конфа отдельно и далеко, открывать и искать в ней долго), но ничего сложного там точно нет
|
|||
49
buketovav
20.11.18
✎
18:41
|
ну не ленитесь, пожалуйста, оч надо научиться этому
|
|||
50
Cyberhawk
20.11.18
✎
18:42
|
Научиться можно только самостоятельно
|
|||
51
buketovav
20.11.18
✎
19:21
|
вот и учусь самостоятельно
|
|||
52
buketovav
20.11.18
✎
19:21
|
все равно прошу помощи, может кто-нибудь подскажет?
|
|||
53
buketovav
21.11.18
✎
09:25
|
ладно, а такой вопрос, есть в документе "передачаСырьяПереработчкиу" в модуле менеджера Функция ТекстОтраженияВРеглУчете()
так вот, а можно ли как-нибудь из модуля менеджера объекта обратиться к реквизиту объекта, посмотреть, если он Истина, тогда не добавлять в массив определенные тексты отражения: ТекстыОтражения = Новый Массив; ТекстыОтражения.Добавить(ПередачаКомиссионныхТоваровСписание); ТекстыОтражения.Добавить(ПередачаТоваров); ТекстыОтражения.Добавить(ПередачаТоваровСоСкладаПроизводства); ТекстыОтражения.Добавить(СписаниеМатериаловДавальца); ТекстыОтражения.Добавить(РасходыНаПроизводствоИзМатериаловДавальца); ТекстыОтражения.Добавить(СписаниеПродукцииДавальца); ТекстыОтражения.Добавить(РасходыНаПроизводствоИзПродукцииДавальца); ТекстыОтражения.Добавить(ЗалоговаяСтоимостьПереданнойТары); ТекстыОтражения.Добавить(ЗалоговаяСтоимостьПереданнойТарыСкладПроизводства); ТекстыОтражения.Добавить(ТекстВключениеИсключениеНДСВСтоимость); |
|||
54
buketovav
21.11.18
✎
14:30
|
такая ситуация, мне надо было добавить проводки для типового документа. чтобы они были по забалансу, я сделал подписку на событие для РБ ПереЗаписью, все хорошо, проводки добавились
но теперь другая ситуация, как мне у этого документа удалить типовую проводку по определенному счету проводки формируются при отражении в регламентированном учете у РБ ПередЗаписью вызывается два раза и формирование проводок происходит как раз во второй раз, я ни как не могу понять и найти. где и как поймать мне это второй раз, где в котором я смогу увидеть весь набор записей РБ |
|||
55
buketovav
21.11.18
✎
21:02
|
эх... Люди Добрые, скажите как убрать из движений типового документа типовые проводки по 10 счету
|
|||
56
Cyberhawk
21.11.18
✎
22:05
|
Тебе дали удочку, а ты продолжаешь просить рыбу
|
|||
57
buketovav
22.11.18
✎
07:26
|
решил
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |