Бухгалтерский учет, налогообложение, отчетность, МСФО, анализ бухгалтерской информации, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Проверить модифицированность документа в процедуре ОбработкаПроведения()

IceBeerg
читатель
офлайн
Дата регистрации: 06.10.2004
Сообщений: 803
Пост №1
 
04.02.2010 17:10

"Собственно сабж.
К сабжу 1С 7.7, конфа самописная на основе ТиС (оперативный учет).
Модифицированность() - не подходит "Метод доступен только в Модуле формы..."
СтрЧислоВхождений(Форма.Заголовок(),"*") - не подходит "Доступ к методу возможен только в контексте Модуля формы"

Создаю реквизит Мод (Число, длина 1)
В процедуре ПриЗаписи()
Мод=Модифицированность();
Мод всегда = 1!
Соответственно в обработке проведения документ всегда модифицарованный :(

В процедуре ПриЗаписи()
Форма.Заголовок()
возвращает пустую строку ыыы... :("

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №2
 
04.02.2010 18:13

> Модифицированность() - не подходит "Метод доступен только в Модуле формы..."
Модифицированность и в самом деле можно проверить только в форме или где-то еще, куда передан контекст формы.

> Соответственно в обработке проведения документ всегда модифицарованный :(
Вообще-то в ней документ уже записан, т.е. не модифицирован.

А вот вопрос процедуры ПриЗаписи - это уже интереснее. Если сразу при открытии документа получается, что он модифицирован, значит при открытии "устанавливаются значения по умолчанию" - вот тут и надо править. В принципе именно в ПриЗаписи и надо контролировать.

IceBeerg
читатель
офлайн
Дата регистрации: 06.10.2004
Сообщений: 803
Пост №3
 
05.02.2010 12:52

> Если сразу при открытии документа получается, что он модифицирован, значит при открытии "устанавливаются значения по умолчанию" - вот тут и надо править.
Сразу при открытии и далее до точки входа в процедуру ПриЗаписи все нормально...

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3077
Пост №4
 
05.02.2010 13:17

Чудес то не бывает. Может на кнопке "Ок" в форме у вас повешена процедура, которая что то в реквизиты формы переустанавливает?
А в ОбработкаПроведения() вообще нет понятия о модифицированности, так как проведение, в принципе, возможно и без открытия формы вовсе. Пример: потоковое перепроведение документов.

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №5
 
05.02.2010 13:21

> Сразу при открытии и далее до точки входа в процедуру ПриЗаписи все нормально...
т.е. если смотреть отладчиком, то Модифицированность()=0 до входа в ПриЗаписи?

IceBeerg
читатель
офлайн
Дата регистрации: 06.10.2004
Сообщений: 803
Пост №6
 
05.02.2010 15:44

> т.е. если смотреть отладчиком, то Модифицированность()=0 до входа в ПриЗаписи?
Вроде да, только не отладчиком смотрел, а завел реквизит шапки и вывел его на форму в виде флажка (чекбокса)...

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №7
 
05.02.2010 16:00

> а завел реквизит шапки и вывел его на форму в виде флажка (чекбокса)...
Если вы считаете, что изменив значение реквизита шапки вы не меняете документ - то вы ошибаетесь, даже в случае присваивания такого же значения (например был 0 и присвоили 0).

IceBeerg
читатель
офлайн
Дата регистрации: 06.10.2004
Сообщений: 803
Пост №8
 
05.02.2010 16:03

"> Может на кнопке "Ок" в форме у вас повешена процедура, которая что то в реквизиты формы переустанавливает?
Нет, формула кнопки - #Записать? Провести?
> А в ОбработкаПроведения() вообще нет понятия о модифицированности, так как проведение, в принципе, возможно и без открытия формы вовсе. Пример: потоковое перепроведение документов.
Я это прекрасно понимаю, но в моем случае речь идет о интерактивном проведении документ.

Опишу ситуацию. На основании расходной накладной, после ее проведения, из ее же формы ввода, не закрывая накладную на ее основании вводится счет-фактура. Счет-фактура проводится, раcпечатывается и закрывается. И если после ее закрытия внести изменения в накладную то суммы не будут равны. В связи с чем было принято решение о проверке счета-фактуры при проведении накладной.
Что в конечном итоге сделал:
при проведении проверяется был ли ранее проведен текущий документ
> Если Проведен()=1 Тогда
(если документ не был проведен, то не стоит шерстить подчиненные документы)
ну и далее как обычно
> СчФ.ВыбратьПодчиненныеДокументы(ДатаДок,ДатаДок,ТекущийДокумент());
> ...
> Если СчФ.Вид()="Счет_фактура" Тогда
> ...
> Если ИтогСумма<>СуммаСчФ Тогда
> ...
> Предупреждение("Сумма счета-фактуры не равна сумме накладной!"..."

Показывать по 10 20 40 сообщений

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация
Предложения партнеров
Обучение пользователей продуктов 1С

1С бесплатно 1С-Отчетность 1С:ERP Управление предприятием 1С:Бесплатно 1С:Бухгалтерия 8 1С:Бухгалтерия 8 КОРП 1С:Бухгалтерия автономного учреждения 1С:Бухгалтерия государственного учреждения 1С:Бюджет муниципального образования 1С:Бюджет поселения 1С:Вещевое довольствие 1С:Деньги 1С:Документооборот 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и кадры государственного учреждения 1С:Зарплата и управление персоналом 1С:Зарплата и управление персоналом КОРП 1С:Комплексная автоматизация 8 1С:Лекторий 1С:Предприятие 1С:Предприятие 7.7 1С:Предприятие 8 1С:Розница 1С:Управление нашей фирмой 1С:Управление производственным предприятием 1С:Управление торговлей 1СПредприятие 8

Все теги