![]() |
![]() |
![]() |
|
v7: ПриЗавершенииРаботыСистемы: выполнить процедуру и закрыть | ☑ | ||
---|---|---|---|---|
0
Масянька
06.12.13
✎
09:37
|
Доброе утро!
Как можно сделать, чтобы в ПриЗавершенииРаботыСистемы выполнилась процедура (запуск внешнего отчета, его выполнение, после выполнения), потом закрыть? Спасибо. |
|||
1
ДенисЧ
06.12.13
✎
09:38
|
Мм.... Открыть отчёт, передать ему параметры, запустить выполнение, закрыть отчёт...
Не? |
|||
2
Ёпрст
гуру
06.12.13
✎
09:39
|
можно и модально, чтоб подождал с закрытием..
|
|||
3
Масянька
06.12.13
✎
09:39
|
(1) Да. Это есть. Мне хочется, чтобы выполнения отчета - закрылось 1С.
|
|||
4
ДенисЧ
06.12.13
✎
09:40
|
(3) И?
|
|||
5
Рэйв
06.12.13
✎
09:40
|
(3)А результат выполнения не нужен7:-)
|
|||
6
Масянька
06.12.13
✎
09:42
|
(4) Что и?
Процедура ПриЗавершенииРаботыСистемы() // для журнала кассира-операциониста глПроверкаЖурналаКассираОперациониста(); Если ПустоеЗначение(глЗначениеПоУмолчанию("НеЗапрашиватьПодтверждениеПриВыходе")) = 1 Тогда Если Вопрос("Закончить работу с программой?", "Да+Нет", 10)="Нет" Тогда СтатусВозврата(0); Возврат; КонецЕсли; КонецЕсли; ОткрытьФормуМодально("Обработка.ТорговоеОборудование", "Отключить"); КонецПроцедуры // ПриЗавершенииРаботыСистемы() Как закрыть 1С? (5) Там отчет. В принципе, если нужен резаультат - я знаю, как сделать. Я не знаю, как закрыть 1С :( |
|||
7
VladZ
06.12.13
✎
09:47
|
(1) + После закрытия "ЗавершитьРаботуСистемы".
В процедуру ПриЗавершенииРаботыСистемы гадить не нужно! |
|||
8
Масянька
06.12.13
✎
09:49
|
(7) Это как?
|
|||
9
Ёпрст
гуру
06.12.13
✎
09:52
|
(6)
самое правильное, это //ОткрытьФормуМодально("Обработка.ТорговоеОборудование", "Отключить"); |
|||
10
Ёпрст
гуру
06.12.13
✎
09:54
|
при закрытии 1с-ины и так всё подключенное оборудование "умрёт" само
|
|||
11
Масянька
06.12.13
✎
09:56
|
(9) Закомментила. Не закрывается.....
|
|||
12
Ёпрст
гуру
06.12.13
✎
09:57
|
(11) глПроверкаЖурналаКассираОперациониста, там что ?
:)) |
|||
13
Ёпрст
гуру
06.12.13
✎
09:57
|
вообще всё заккоменти в ПриЗавершенииРаботыСистемы
|
|||
14
Ёпрст
гуру
06.12.13
✎
09:57
|
для начала.
|
|||
15
Масянька
06.12.13
✎
10:02
|
Может тут собака зарыта?
Функция глПроверкаЖурналаКассираОперациониста() Экспорт ДатаНачала = Константа.ДатаНачалаЖурналаКассира; ДатаОкончания = Константа.ДатаОкончанияЖурналаКассира; СписокПараметров = СоздатьОбъект("СписокЗначений"); СписокПараметров.Установить("ДатаНачала", ДатаНачала); СписокПараметров.Установить("ДатаОкончания", ДатаОкончания); Если (ДатаОкончания = ТекущаяДата()) Тогда Сигнал(); Ответ = Вопрос("Сегодня заканчивается страница" + РазделительСтрок + """Журнала кассира-опреациониста""." + РазделительСтрок + "Будем заполнять?", "Да+Нет"); Если Ответ = "Да" Тогда ОткрытьФорму("Отчет", СписокПараметров, КаталогИБ() + "\Dopolnitelno\ЖурналКассира-Операциониста.ert"); СтатусВозврата(0); Иначе СтатусВозврата(1); КонецЕсли; КонецЕсли; КонецФункции // глПроверкаЖурналаКассираОперациониста |
|||
16
varelchik
06.12.13
✎
10:02
|
(6) а вот тута:
глПроверкаЖурналаКассираОперациониста(); случаем СтатусВозврата(0) неиспользуеться? |
|||
17
varelchik
06.12.13
✎
10:03
|
(15) Вот тебе и ответ.
|
|||
18
Ёпрст
гуру
06.12.13
✎
10:04
|
(15) ага ты же в ней СтатусВозврата(0) устанавливаешь при некоторых условиях..
ну и всё собственна.. |
|||
19
varelchik
06.12.13
✎
10:04
|
(15) Шо за идиот такое писал?
|
|||
20
Масянька
06.12.13
✎
10:05
|
(17) Как надо-то?
Если после ОткрытьФорму(....) поставить СтатусВозрата(1) - все закрывается сразу, а надо с отчетом работать. (19) Сам дурак. |
|||
21
Масянька
06.12.13
✎
10:06
|
Всё! Получилось :)
Всем спасибо, кроме varelchik (а чё он обзывается). |
|||
22
varelchik
06.12.13
✎
10:06
|
ОткрытьФорму
замени на ОткрытьФормуМодально() пока отчет не закончиться система не закроеться. и со статусами не балуй. |
|||
23
VladZ
06.12.13
✎
10:07
|
(8) В твоей обработке:
Процедура ВЫполнить() // тут нужный функционал КонецПроцедуры Процедура приОткрытии() // если переданы параметры - выполняем. Выполнить(); ЗавершитьРаботуСистемы(); КонецПроцедуры |
|||
24
varelchik
06.12.13
✎
10:07
|
(22) в смысле СтатусВозврата()
|
|||
25
Ёпрст
гуру
06.12.13
✎
10:07
|
(20) в сам отчет передай параметр, что отчет открыт в призавершении, в самом отчете, в ПриЗакрытии смотри, если Форма.Параметр = флагу, то ЗавершитьРаботуСистемы(0)
|
|||
26
Масянька
06.12.13
✎
10:07
|
(22) Не подлизывайся! Я и сама поняла про модально :)
|
|||
27
Ёпрст
гуру
06.12.13
✎
10:08
|
модальность не обязательна будет при этом
|
|||
28
Ёпрст
гуру
06.12.13
✎
10:08
|
При модальной форме у тебя не будет Таблиц.. ни на форме ни во фрейме.. если че.
|
|||
29
Масянька
06.12.13
✎
10:08
|
Я сделала так:
Функция глПроверкаЖурналаКассираОперациониста() Экспорт ДатаНачала = Константа.ДатаНачалаЖурналаКассира; ДатаОкончания = Константа.ДатаОкончанияЖурналаКассира; СписокПараметров = СоздатьОбъект("СписокЗначений"); СписокПараметров.Установить("ДатаНачала", ДатаНачала); СписокПараметров.Установить("ДатаОкончания", ДатаОкончания); Если (ДатаОкончания = ТекущаяДата()) Тогда Сигнал(); Ответ = Вопрос("Сегодня заканчивается страница" + РазделительСтрок + """Журнала кассира-опреациониста""." + РазделительСтрок + "Будем заполнять?", "Да+Нет"); Если Ответ = "Да" Тогда ОткрытьФормуМодально("Отчет", СписокПараметров, КаталогИБ() + "\Dopolnitelno\ЖурналКассира-Операциониста.ert"); СтатусВозврата(1); Иначе СтатусВозврата(1); КонецЕсли; КонецЕсли; КонецФункции // глПроверкаЖурналаКассираОперациониста Отчет открывается, при закрытии отчета - 1С тож закрывается. Еще раз спасибо! |
|||
30
varelchik
06.12.13
✎
10:10
|
(23) тоже вариант.
(29) тогда это СтатусВозврата(1); Иначе СтатусВозврата(1); излишнее. |
|||
31
Масянька
06.12.13
✎
10:18
|
(30) Ну, ладно - и тебе спасибо :))))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |