Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

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

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

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

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

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

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

> Модифицированность() - не подходит "Метод доступен только в Модуле формы..."<br>Модифицированность и в самом деле можно проверить только в форме или где-то еще, куда передан контекст формы.<br><br>> Соответственно в обработке проведения документ всегда модифицарованный :(<br>Вообще-то в ней документ уже записан, т.е. не модифицирован.<br><br>А вот вопрос процедуры ПриЗаписи - это уже интереснее. Если сразу при открытии документа получается, что он модифицирован, значит при открытии "устанавливаются значения по умолчанию" - вот тут и надо править. В принципе именно в ПриЗаписи и надо контролировать.

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

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

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

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

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

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

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

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

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

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

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

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

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

Читают тему:

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