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


1С:Предприятие ::

Метки: 

БГУ 2.0 не выводится сообщение пользователю

Я
   Cоляпсус
 
08.02.18 - 09:50
Здравствуйте, сложилась такая ситуация. Написал внешнюю обработку, при тестировании её через файл открыть, работает как положено,а именно: Перед тем как записать документ, проверяет ОС на уникальность и если такое есть, то посредством "Сообщить"выдаёт сообщение пользователю и возврат или если нет такого ОС, то соответственно отрабатывает дальше как положено. Но как только встраиваешь в конфигурацию, то работает вроде как положено, но сообщения перестают выдаваться. Весть текст обработки написан как на Сервере, понятно что  конфликт с клиентом, но додумать как исправить не выходит. Думал может вызвать какой общий модуль, но опять же хоть и твердят ищите встроенные механизмы, не придумывайте колесо заново, но не выходит "Каменный цветок"))
 
  Рекламное место пустует
   Cоляпсус
 
1 - 08.02.18 - 10:01
Люди?
   Cоляпсус
 
2 - 08.02.18 - 10:26
И никто не может подсказать?
   Cоляпсус
 
3 - 08.02.18 - 10:43
Ну тук же...
   Cоляпсус
 
4 - 08.02.18 - 11:49
Что-то сегодня активность только в избранных темах
   catena
 
5 - 08.02.18 - 11:54
Обработка запускается пользователем? Собирайте пул сообщений и возвращайте в форму после выполнения. Посмтрите еще функцию ПолучитьСообщенияПользователю()
   Cоляпсус
 
6 - 08.02.18 - 12:02
Не совсем понял, что надо сделать
   catena
 
7 - 08.02.18 - 12:35
(6)Алгоритм у обработки какой? Пользователь нажимает кнопку -> вызывается серверная процедура?
   Малыш Джон
 
8 - 08.02.18 - 12:37
(0) Уважаемый Соляпсус) Ну детская тема, никто и не хочет возиться. Почти)
вот ссылочку открой:
http://bit.ly/2C3zA7I
там все распиано
   Cоляпсус
 
9 - 08.02.18 - 13:05
(6) Да вызывается серверная процедура, вот пойму как на клиенте отобразить сообщения. В саму конфу лезть не могу, она на поддержке, могу только в дополнительные обработки дополнять.
   Cоляпсус
 
10 - 08.02.18 - 13:06
(8) Тема может и детская, и статью эту я читал, но решить свою проблему у меня не получается, думал может кто подскажет как это решается
 
 
   Cоляпсус
 
11 - 08.02.18 - 13:07
(9) * не пойму)
   catena
 
12 - 08.02.18 - 13:13
(9)Ну соберите все сообщения и верните после выполнения процедуры. Хоть параметром. А на клиенте покажите
   Cоляпсус
 
13 - 08.02.18 - 14:03
Вот как это сделать и не могу понять)
   Малыш Джон
 
14 - 08.02.18 - 15:34
(13)

&НаКлиенте
Процедура ПроцедураНаКлиенте(СписокСообщений)
 СписокСообщений = Новый СписокЗначений;
 ПроцедураНаСервере(СписокСообщений);
 Для Каждого СообщениеПользователю Из СписокСообщений
  Сообщить(СообщениеПользователю.Значение);
 КонецЦикла;
КонецПроцедуры

&НаСервере
Процедура ПроцедураНаСервере(СписокСообщений)

...
 НужноеСообщение = "блаблабла";
 СписокСообщений.Добавить(НужноеСообщение);
...
КонецПроцедуры
   timurhv
 
15 - 08.02.18 - 15:43
(0) При нажатии на "Записать" или "Провести" выводится, а если "Провести и закрыть" - ничего?
   Cоляпсус
 
16 - 08.02.18 - 15:50
(15) Ну там не совсем так, это обработка внешняя, но я её встраиваю в конфу и при выборе выполнения этой обработки, она отрабатывает, но не выводит сообщения.
http://prntscr.com/ibuuyg и http://prntscr.com/ibuvn4
и он отрабатывает механизм
   Cоляпсус
 
17 - 08.02.18 - 15:52
(14) сейчас попробую реализовать, спасибо большое 
за наводку
   Cоляпсус
 
18 - 08.02.18 - 15:54
(15) выводятся сообщения если я делаю в режиме отладки или как это правильно, при внешнем открытии через файл-открыть-... и так далее, (при тестировании) того что получилось
   Cоляпсус
 
19 - 08.02.18 - 16:13
(14) Я извиняюсь не всё ещё понимаю, но так не получается он выдаёт ошибку
Команда "Создание принятия к учету ОС" не выполнена:
Недостаточно фактических параметров

{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(2849)}: Недостаточно фактических параметров
            ВнешнийОбъект.ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, ИзмененныеОбъекты, ПараметрыКоманды);
Оно и понятно потому что она (обработка) по параметрам обращиется к общему модулю и если я добавлю доп. параметр, то и получается эта ошибка(а конфу я править не могу), а если не добавлю, то будет переменная не определена.
   Cоляпсус
 
20 - 08.02.18 - 16:18
немного не понятно наверное написал:
если я добавлю доп. параметр в обработки, то и получается эта ошибка, а в общий модуль добавить доп параметр я не могу, т.к. конфу править не могу, только за счёт обработки
   Малыш Джон
 
21 - 08.02.18 - 16:30
(20) а куда ты параметр добавляешь?
   Малыш Джон
 
22 - 08.02.18 - 16:34
Я привел абстрактный пример, а ты его уже к своей ситуации приспосабливай
Общий смысл - ты передаешь параметр в процедуру на сервере, там - заполняешь его сообщениями, потом - параметр возвращается на клиент и на клиенте выводятся сообщения из этого параметра, это самый примитивный способ.
   Cоляпсус
 
23 - 08.02.18 - 16:35
Ну в моей обработке есть процедура, куда я весь механизм записал и туда пробовал добовлять
// ФУНКЦИОНАЛЬНАЯ ЧАСТЬ

Процедура  ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполненияКоманды,СписокСообщений) Экспорт
   Cоляпсус
 
24 - 08.02.18 - 16:37
(22) Да это я понял, и пробовал )) приспособить, оказался пока - не приспособляемый)
   Малыш Джон
 
25 - 08.02.18 - 16:40
(23) А туда то зачем?
это твой внутренний параметр,который используется только внутри процедуры ВыполнитьКоманду(). Он внутри этой процедуры передается в серверную процедуру и внутри этой же процедуры потом используется. Всё. дальше он не нужен. Зачем его в список параметров самОй процедуры добавлять?
   Cоляпсус
 
26 - 08.02.18 - 16:48
Ахха, понятно спасибо сейчас попробую
   evorle145
 
27 - 08.02.18 - 16:53
ох уж эти бюджетники-программисты))
   Cоляпсус
 
28 - 08.02.18 - 16:57
(27)согласен ох эти бюджетники программисты, одни хлопоты с ними, такая у нас участь))
   evorle145
 
29 - 08.02.18 - 16:59
(28) мой первый год работы был как раз с бюджетниками) весело было... я нифига не знал и они чего не понимали=)
Удачи в начале пути! налегайте на матчасть, а не только о деньгах думайте, это поможет потом)
   Cоляпсус
 
30 - 08.02.18 - 17:00
(25) Сообщение должно отрабатываться после 
Если РезультатЗапроса.Пустой() Тогда
Сообщение
Если я не добавлю параметр, то не будет понятно когда отрабатывать, если добавлю получу ошибку, если отдельную ещё процедуру, то опять же не понятно когда ей отрабатывать.
   Cоляпсус
 
31 - 08.02.18 - 17:01
(29) Скажу по секрету, денег вообще не в этот раз или не в этой фирме, собираю опыт, потом лучше будет, скажем так, альтруизм на перспективу)))
   Cоляпсус
 
32 - 08.02.18 - 17:11
(29) и тем более можно помочь, я конечно не всё, но что-то понимаю)
   Cоляпсус
 
33 - 08.02.18 - 17:12
А вот с этим справится пока не получается
 
 
   Cоляпсус
 
34 - 09.02.18 - 11:33
Подниму тему всё-таки ещё разок. А то решения так и не случилось, уж извините
Написал внешнюю обработку, при тестировании её через файл открыть, работает как положено,а именно: Перед тем как записать документ, проверяет ОС на уникальность и если такое есть, то посредством "Сообщить"выдаёт сообщение пользователю и возврат или если нет такого ОС, то соответственно отрабатывает дальше как положено. Но как только встраиваешь в конфигурацию, то работает вроде как положено, но сообщения перестают выдаваться. Весть текст обработки написан как на Сервере, понятно что  конфликт с клиентом, что надо передать на клиент, но параметр вписать не могу, так как обработка обращается к общему модулю и там определённое количество параметров, иначе ошибка, или если без параметра, то переменная не определена. Вот тут я и застрял, не могу справится.
Очень заранее благодарен
   catena
 
35 - 09.02.18 - 11:44
С формы обработки вызываешь модуль обработки со всеми параметрами+параметр для сообщений. В модуле вызываешь свой модуль. После того, как он отработает, собираешь сообщения, как написано в (14) в свой параметр. На клиенте выводишь сообщения из параметра.
   Cоляпсус
 
36 - 09.02.18 - 12:18
(35) У обработки нет формы. Чтобы собрать сообщения в параметр его нужно куда-то записать. А сделать я этого не могу так как
Процедура  ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполненияКоманды)
ссылается на общий модуль         ВнешнийОбъект.ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, ИзмененныеОбъекты, ПараметрыКоманды), а конфу я править не могу, вот так, ну или я всё ещё не представляю что нужно сделать



Список тем форума
Рекламное место пустует   Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует