Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
19 Сен 2017, 20:15
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Процедура "ОбработкаПроведения"  (Прочитано 1039 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн demon3

  • **
  • Сообщений: 89
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2013-04-11
    • Skype: interavto88
  • Сайт: 
  • Профессия: Программист 1С
Здравствуйте. Такой вопрос: В обработке проведения документа есть кусок кода,который документ другого типа. Необходимо поставить проверку ,что если документ второй создался при проведении первого, тогда проверить заполнение реквизитов второго документа. И если не все реквизиты заполнены, тогда не проводить первый документ. Проверку на заполнение реквизитов написал, но если отменяем проведение первого документа при не заполненных реквизитах второго, то он и отменяет создание второго документа. Необходимо ,чтобыы даже если первый документ не проводился,то второй все равно создавался! Подскажите,как реализовать данную возможность?
Помог ответом, скажи спасибо


Оффлайн Rasty

  • *****
  • Сообщений: 976
  • РЕПУТАЦИЯ: 137
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
если он не проводится значит он сохраняется, значит в событие ПриЗаписи/ПослеЗаписи/ПереЗаписью написать код по созданию документа и при проведении проверять создался документ или нет
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн LexaK

  • *****
  • Сообщений: 1254
  • РЕПУТАЦИЯ: 345
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
д-а-а, все привыкли использовать параметр Отказ, и даже не могут придумать как его обойти.
в вашем случае просто не используйте его при проверке заполнения реквизитов другого документа

вашего кода нет, поэтому придется на пальцах объяснять

у вас в коде где-то стоит (вами написанная проверка)
что-то вроде

Если ВыполнитьПроверкуЗаполенности(...) = Ложь Тогда
    Отказ = Истина;
    ...
    //возможно здесь есть Возврат
КоенцЕсли;

а нужна такая конструкция
только это в самом начале обработки проведения надо разместить, до кода формирования проводок

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

это все приблизительно, только сама идея, возможны какие-то допилы по месту программы.

Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн demon3

  • **
  • Сообщений: 89
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2013-04-11
    • Skype: interavto88
  • Сайт: 
  • Профессия: Программист 1С
д-а-а, все привыкли использовать параметр Отказ, и даже не могут придумать как его обойти.
в вашем случае просто не используйте его при проверке заполнения реквизитов другого документа

вашего кода нет, поэтому придется на пальцах объяснять

у вас в коде где-то стоит (вами написанная проверка)
что-то вроде

Если ВыполнитьПроверкуЗаполенности(...) = Ложь Тогда
    Отказ = Истина;
    ...
    //возможно здесь есть Возврат
КоенцЕсли;

а нужна такая конструкция
только это в самом начале обработки проведения надо разместить, до кода формирования проводок

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

это все приблизительно, только сама идея, возможны какие-то допилы по месту программы.

Этот вариант не пойдет.так как документ все равно проводится даже после "возврата" в обработке проведения!
Помог ответом, скажи спасибо

Оффлайн LexaK

  • *****
  • Сообщений: 1254
  • РЕПУТАЦИЯ: 345
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
э-э-э, как все запущено!

1.не путайте пометку проведения с проводками документа, (вообще можете эту пометку сбросить Проведен = Ложь; //это как раз из области допила)
2.если у вас документ был уже проведен и по нему были уже проводки, то по этой схеме, при возврате, все так и останется, ТОЛЬКО перепроведения не случится!
(здесь тоже есть варианты допила, например перед выходом "распровести" документ)
3.еще можно кучу каких вариантов предположить.

И самое главное надо учитывать всякие возможные НАВОРОТЫ вроде различных подписок и т.д. где эту ситуацию так-же надо учесть.

в общем, если подойти с головой и отладчиком, все можно решить.
Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн demon3

  • **
  • Сообщений: 89
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2013-04-11
    • Skype: interavto88
  • Сайт: 
  • Профессия: Программист 1С
э-э-э, как все запущено!

1.не путайте пометку проведения с проводками документа, (вообще можете эту пометку сбросить Проведен = Ложь; //это как раз из области допила)
2.если у вас документ был уже проведен и по нему были уже проводки, то по этой схеме, при возврате, все так и останется, ТОЛЬКО перепроведения не случится!
(здесь тоже есть варианты допила, например перед выходом "распровести" документ)
3.еще можно кучу каких вариантов предположить.

И самое главное надо учитывать всякие возможные НАВОРОТЫ вроде различных подписок и т.д. где эту ситуацию так-же надо учесть.

в общем, если подойти с головой и отладчиком, все можно решить.

Понял вашу мысль. Попробую проводки посмотреть после этого действия
Помог ответом, скажи спасибо


Теги:
 

1c 8.2: как называется процедура/функция, которая вызывается при вводе значения в поле на форме?

Автор jhd235Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 1436
Последний ответ 08 Сен 2014, 08:28
от cska-fanat-kz
Процедура госрегистрации ИП и юрлиц будет проходить в течение трех дней

Автор newsРаздел Новости

Ответов: 0
Просмотров: 703
Последний ответ 03 Апр 2014, 15:16
от news
Какие ответственные лица могут быть указаны в регистре сведений "Ответственные л

Автор DDDРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 4189
Последний ответ 25 Ноя 2008, 11:07
от DDD
Процедура Инициализации при создании внешней обработки таб. частей

Автор crow1983Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 11138
Последний ответ 23 Авг 2010, 16:51
от crow1983
Получение данных о номенклатуре, в Процедура ПриЗаписи(Отказ)

Автор ВоительРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 7
Просмотров: 3284
Последний ответ 21 Ноя 2011, 21:12
от Dethmontt

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

oleg-x
176 Сообщений
alex0402
82 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
81 Сообщений
AsadRoman
36 Сообщений
Kironten
34 Сообщений
ilyay ilyay
30 Сообщений
Golickoff Golickoff
29 Сообщений
AIFrame
27 Сообщений
BuhRust
26 Сообщений
Варвар
20 Сообщений

* Кто онлайн

  • Точка Гостей: 377
  • Точка Скрытых: 0
  • Точка Пользователей: 8
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal