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

Автор Тема: ПередЗакрытием или Призакрытии документа  (Прочитано 2852 раз)

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

Оффлайн Валерия00

  • *
  • Сообщений: 15
  • РЕПУТАЦИЯ: -1
  • Регистрация: 2015-09-20
  • Сайт: 
  • Профессия: Программист 1С
Здравствуйте, мне нужно чтобы при нажатие кнопки закрыть в документе(или на крестик в верхнем углу) проверял, если этот документ проведен то закрыть иначе ошибка.

нельзя закрывать документ без его проведения!

Пожалуйста помогите


Оффлайн Дмитрий@

  • *****
  • Сообщений: 759
  • РЕПУТАЦИЯ: 138
  • КПД: 18%
  • Регистрация: 2015-02-27
  • Сайт: 
  • Профессия: Программист 1С
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
ПередЗакрытиемНаСервере(Отказ);
Если Отказ Тогда
ПоказатьОповещениеПользователя("Нельзя закрыть непроведенный документ");
КонецЕсли;

КонецПроцедуры

&НаСервере
Процедура ПередЗакрытиемНаСервере(Отказ)

Если Не Объект.Ссылка.Пустая() Тогда
Если Не Объект.Проведен И Не Объект.Ссылка.ПолучитьОбъект().ЭтоНовый() Тогда
Отказ = Истина;
КонецЕсли;
КонецЕсли;

КонецПроцедуры

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Здравствуйте, мне нужно чтобы при нажатие кнопки закрыть в документе(или на крестик в верхнем углу) проверял, если этот документ проведен то закрыть иначе ошибка.

нельзя закрывать документ без его проведения!

Пожалуйста помогите

Запись документа без проведения - вполне себе логичная операция.
Например в случае когда всех данных для проведения не хватает, но и желательно чтобы документ записался, т.е. появился в базе и чтобы к нему можно было вернуться в дальнейшем.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн KrivosheevEV

  • ***
  • Сообщений: 202
  • РЕПУТАЦИЯ: 35
  • КПД: 17%
  • Регистрация: 2014-01-20
  • Сайт: 
  • Профессия: Программист 1С
Объект.Ссылка.ПолучитьОбъект().ЭтоНовый()
Жесть ..
Текст на компьютере распечатать, затем отсканировать, чтобы был текст на компьютере.

Оффлайн Дмитрий@

  • *****
  • Сообщений: 759
  • РЕПУТАЦИЯ: 138
  • КПД: 18%
  • Регистрация: 2015-02-27
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
Жесть ..
Текст на компьютере распечатать, затем отсканировать, чтобы был текст на компьютере.

А такой код не срабатывает по каким то причинам, видимо потому, что это реквизит формы
Объект.ЭтоНовый()

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Вообще-то достаточно проверить
Объект.Ссылка.Пустая()
А вот это
Объект.Ссылка.ПолучитьОбъект().ЭтоНовый()
примерно как доставать нижний горшок в стопке (Трус знал в этом толк)

Оффлайн Дмитрий@

  • *****
  • Сообщений: 759
  • РЕПУТАЦИЯ: 138
  • КПД: 18%
  • Регистрация: 2015-02-27
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
Вообще-то достаточно проверить
Объект.Ссылка.Пустая()
Насколько я знаю есть методы которые позволяют создавать виртуальную ссылку, до записи объекта. А поскольку ссылка не пустая то Объект.Ссылка.Пустая()=Истина, хотя объект не записан в базе
Добавлено: 21 Сен 2015, 15:22

Извиняюсь опечатка Объект.Ссылка.Пустая()=Ложь

Оффлайн Kironten

  • *****
  • Сообщений: 906
  • РЕПУТАЦИЯ: 187
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
Насколько я знаю есть методы которые позволяют создавать виртуальную ссылку, до записи объекта

А можно имя такого метода?

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Типа намекает на ПолучитьСсылкуНового()

Оффлайн Kironten

  • *****
  • Сообщений: 906
  • РЕПУТАЦИЯ: 187
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
С трудом верится.

Да, можно методом <Объект>.УстановитьСсылкуНового() установить ссылку для записи, но пока запись не произведена свойство объекта - ссылка так и останется пустым.
Да, можно методом <Объект>.ПолучитьСсылкуНового() получить эту временную ссылку, НО, если мы будем обращаться к свойству объекта - ссылка(а, именно так и проводится проверка в вышеизложенном коде) то свойство будет пустым до записи.

Поэтому, я могу ошибаться, но:
А поскольку ссылка не пустая то Объект.Ссылка.Пустая()=Ложь, хотя объект не записан в базе
не совсем корректное утверждение.
Установкой ссылки нового, мы не получим Объект.Ссылка.Пустая() = Ложь для не записанного объекта.

Во всяком случае, я сейчас это проверил, у меня так отработало.
Возможно имеется ввиду другой какой метод?


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

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

Ответов: 1
Просмотров: 4855
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

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

Ответов: 6
Просмотров: 17223
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

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

Ответов: 3
Просмотров: 4770
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

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

Ответов: 1
Просмотров: 1189
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

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

Ответов: 4
Просмотров: 8273
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
161 Сообщений
alex0402
76 Сообщений
oleg-x
68 Сообщений
AIFrame AIFrame
60 Сообщений
buketov.av buketov.av
44 Сообщений
wise wise
39 Сообщений
KOI8-R
35 Сообщений
Анюта17
29 Сообщений
ilyay ilyay
29 Сообщений
Alter
29 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal