|
Программная установка флага СуммаВключаетНДС | ☑ | ||
---|---|---|---|---|
0
sweety-twetty
22.06.12
✎
16:10
|
Здравствуйте! Надеюсь на Вашу помощь. При попытке установить значение СуммаВключаетНДС = Ложь результат проведения документа разительно отличается от того, который получается при снятии данного флажка вручную. Подскажите,в чем может быть причина.Заранее спасибо за ответы и советы)
Процедура Заполнение() Докум = Документы.РеализацияТоваровУслуг.НайтиПоНомеру(Док.Номер,Док.Дата); Форма = Докум.ПолучитьФорму("ФормаДокумента"); ДокумДляЗаписи=Докум.ПолучитьОбъект(); ДокумДляЗаписи.СуммаВключаетНДС = Ложь; ТЧ = ДокумДляЗаписи.Товары; УчитыватьУслуги = НЕ (ДокумДляЗаписи.ДоговорКонтрагента.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером); Для Каждого Строка из ТЧ цикл Строка.Цена = Ценообразование.ПересчитатьЦенуПриИзмененииФлаговНалогов(Строка.Цена, Перечисления.СпособыЗаполненияЦен.ПоЦенамНоменклатуры, Истина,ДокумДляЗаписи.УчитыватьНДС,Ложь, Ценообразование.ПолучитьСтавкуНДС(Строка.Номенклатура.СтавкаНДС)); Сообщить(Строка.Цена); Форма.ЭлементыФормы.Всего.Значение = ОбщегоНазначения.ФорматСумм(Ценообразование.ПолучитьСуммуДокументаСНДС(ДокумДляЗаписи, "Товары")+?(УчитыватьУслуги,Ценообразование.ПолучитьСуммуДокументаСНДС(ДокумДляЗаписи, "Услуги"),0)); Форма.ЭлементыФормы.ВсегоНДС.Значение = ОбщегоНазначения.ФорматСумм(ДокумДляЗаписи.Товары.Итог("СуммаНДС")+?(УчитыватьУслуги,ДокумДляЗаписи.Услуги.Итог("СуммаНДС"),0)); КонецЦикла ; ДокумДляЗаписи.Записать(РежимЗаписиДокумента.Проведение); КонецПроцедуры Док в данном случае реквизит формы обработки |
|||
1
Svirepy
22.06.12
✎
16:30
|
Что значит "разительно отличается"? Конкретно?
|
|||
2
rbcvg
22.06.12
✎
16:31
|
а фото будет?
|
|||
3
salvator
22.06.12
✎
16:33
|
(0) Видимо то, что Вы делаете в обработке и что делает программа по-умолчанию при снятия флажка - две большие разницы.
|
|||
4
sweety-twetty
22.06.12
✎
16:43
|
Спасибо большое,что откликнулись)
(1) разница сумм документа при снятии флажка вручную может составить до 5 грн, при том как в данной обработке эта разница составляет около 50 грн. (3) Я тоже это понимаю, но я же пересчитываю цены строкой Строка.Цена = Ценообразование.ПересчитатьЦенуПриИзмененииФлаговНалогов(Строка.Цена, Перечисления.СпособыЗаполненияЦен.ПоЦенамНоменклатуры, Истина,ДокумДляЗаписи.УчитыватьНДС,Ложь, Ценообразование.ПолучитьСтавкуНДС(Строка.Номенклатура.СтавкаНДС)); и они по значениям равны тем, которые устанавливаються при ручном снятии флажка, но сумма документа после обработки не равна сумме после изменения реквизита руками |
|||
5
AmoreMe
22.06.12
✎
16:44
|
(Сумма = Всего) ---> флаг установлен НДС в т.ч. (Сумма + СуммаНДС = Всего) ---> флаг сброшен НДС сверху
|
|||
6
AmoreMe
22.06.12
✎
16:45
|
Этот флаг для удобства запонения из первички...
|
|||
7
AmoreMe
22.06.12
✎
16:46
|
можете заполнить тч и проверить потом проводки (только корректней с суммами, а то авторасчет вас обманет)
|
|||
8
BigShmax
22.06.12
✎
16:47
|
фоту тока я не вижу?
|
|||
9
sweety-twetty
22.06.12
✎
16:49
|
(8) Нет, не только Вы, к сожалению, я в данный момент на работе, поэтому решить вопрос с фото не могу
|
|||
10
AmoreMe
22.06.12
✎
16:51
|
Что не только?
|
|||
11
AmoreMe
22.06.12
✎
16:51
|
При правильном заполнении суммы в проводках не изменятся, весь учет ведется от проводок!
|
|||
12
palpetrovich
22.06.12
✎
16:52
|
(4) 5 и 50 это на какой сумме документа?
что за конфигурация? (9) эту отмазку мы уже читали :) |
|||
13
AmoreMe
22.06.12
✎
16:52
|
Спросите у своего бухгалтера если он у вас дружит с головой!
|
|||
14
palpetrovich
22.06.12
✎
16:58
|
и это, в (4) СуммаВключаетНДС = Ложь, ЦенаВключаетНДС = Истина - так действительно надо?
|
|||
15
AmoreMe
22.06.12
✎
17:01
|
ЦенаВключаетНДС если мы покупаем например материалы для собственного производства и имеем право включить НДС в стоимость!!! Скорее всего это не этот случай :)
|
|||
16
sweety-twetty
22.06.12
✎
17:02
|
(12)Простите за неполные сведения , "Управление производственным предприятием для Украины" ,на общей сумме, это не отмазка
(13) а если не дружит?))) (14) Не уверена, но при отладке в табло в таком случае Строка.цена совпадала с той которая нужна |
|||
17
AmoreMe
22.06.12
✎
17:02
|
Вернее флаг НДСВключатьВСтоимиость вот он действительно влияет на проводки.
|
|||
18
AmoreMe
22.06.12
✎
17:03
|
Если не дружит придется осваивать бух учет самой и учить Буха!
|
|||
19
palpetrovich
22.06.12
✎
17:10
|
(16) "сумма" - в смысле цифра
"СуммаВключаетНДС = Ложь, ЦенаВключаетНДС = Истина" - это из "Истина,ДокумДляЗаписи.УчитыватьНДС,Ложь," в (4) впрочем ладно, пора и домой :) |
|||
20
sweety-twetty
22.06.12
✎
17:14
|
Насколько я понимаю, эти реквизиты документа заполняються из общей формы "Цены и валюты", и там их тип Булево
|
|||
21
Serg_1960
22.06.12
✎
17:42
|
У меня большое сомнение вызывают параметры. Особенно - последний. Ставку нужно брать не "по умолчанию" из номенклатуры, а ту что указана в строке документа. И использование параметров-констант подозрительно - они тоже должны браться из документа.
Лучше так написать: Строка.Цена = Ценообразование.ПересчитатьЦенуПриИзмененииФлаговНалогов( (Строка.Цена, Перечисления.СпособыЗаполненияЦен.ПоЦенамНоменклатуры, ДокумДляЗаписи.ТипЦен.ЦенаВключаетНДС, ДокумДляЗаписи.УчитыватьНДС, ДокумДляЗаписи.СуммаВключаетНДС, Ценообразование.ПолучитьСтавкуНДС(Строка.СтавкаНДС)); |
|||
22
Serg_1960
22.06.12
✎
17:48
|
И учтите:
В конфигурации алгоритм пересчета запускается при изменении реквизита, а у вас тут "облом": сколько раз вызвали обработку - столько раз она вам и будет уменьшать/увеличивать цену :( |
|||
23
sweety-twetty
22.06.12
✎
17:54
|
Данная обработка будет запускаться разово,лишь для того,чтобы не исправлять уже внесенные документы
|
|||
24
Serg_1960
22.06.12
✎
17:59
|
(23) Защита от дурака всё рано нужна:
... Если ДокумДляЗаписи.СуммаВключаетНДС = Ложь Тогда Возврат; КонецЕсли; ... |
|||
25
Serg_1960
22.06.12
✎
18:04
|
И не по теме: начало алгоритма - нож по сердцу :) Напишите проще:
ДокумДляЗаписи = Док.ПолучитьОбъект(); Если ДокумДляЗаписи.СуммаВключаетНДС = Ложь Тогда Возврат; Иначе ДокумДляЗаписи.СуммаВключаетНДС = Ложь; КонецЕсли; Форма = ДокумДляЗаписи.ПолучитьФорму("ФормаДокумента"); ... |
|||
26
sweety-twetty
22.06.12
✎
18:20
|
К сожалению, все равно при выполнении процедур обработки сумма меняется иначе, нежели при ручном снятии флага.Надеюсь на еще какие-то советы
|
|||
27
sweety-twetty
22.06.12
✎
18:27
|
(25) Эта кракозябра получилась в следствии многострадальных проб написать что-то, что будет работать так как нужно=)
|
|||
28
sweety-twetty
25.06.12
✎
09:50
|
Вопрос остался не решенным,прошу помощи
|
|||
29
sweety-twetty
25.06.12
✎
10:44
|
Up
|
|||
30
Jaffar
25.06.12
✎
10:46
|
без фотки - не взлетит :-(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |