Диалог Да/Нет/Отмена на сервере 1С:Предприятие #641375


#0 by Эльфийка
Доброго времени суток, форумчане! Глобальный контекст Вопрос (DoQueryBox) Синтаксис: Вопрос(<Текст вопроса>, <Режим>, <Таймаут>, <Кнопка по умолчанию>, <Заголовок>) Недоступен на сервере 1С:Предприятие. А чем можно заменить? Т.е. мне нужно создать диалог на сервере. Заранее благодарю!
#1 by France
если клиент
#2 by Конфигуратор1с
Кого Вы опрашивать на сервере собрались?
#3 by Конфигуратор1с
Понимаете код выполняемый на сервере выполняется физически на сервере. То есть, Вы сидите за ноутом, а в это время вопрос выпрыгивает у админа в серверной
#4 by Конфигуратор1с
Надо переписывать процедуру так что бы вопрос был на клиенте
#5 by Эльфийка
Ответ = ПолучитьНаКлиенте(Ответ); Если Ответ = "Нет" Тогда Возврат; Иначе.... ... &НаКлиенте в результате пишет Процедура или функция с указанным именем не определена (ПолучитьНаКлиенте)            Ответ = <<?>>ПолучитьНаКлиенте(Ответ); (Проверка: Сервер)
#6 by GROOVY
Зачем на сервере модальные окна?
#7 by Эльфийка
Как мне тогда на сервере получить результат диалога на клиенте?
#8 by GROOVY
Гонишь, "ответ" - это должно быть системное перечисление. И приводить его к строке как то дебильно.
#9 by Конфигуратор1с
Спросить на клиенте и потом вызвать сервер
#10 by Эльфийка
На сервере мне нужен только результат ответа пользователя. Есл и ответ положительный, то на сервере я открываю ему доступ на некоторые элементы, если нет, то форма документа так и остается не доступной пользователю. Надеюсь понятно объяснила.
#11 by Эльфийка
То есть, это как?
#12 by Эльфийка
не подходит, потому что сначала пользователь открывает документ, доступ к которому у него закрыт (выполняется проверка на сервере), потом надо спросить у пользователя чего он хочет и ....(далее описывала выше)
#13 by Конфигуратор1с
Сначала спрашиваете а ты уверен? а когда говорит да вызываете серверную процедуру
#14 by Конфигуратор1с
При создании на сервере обрабатываете проверку. В реквизит формы пихаете что то типа - Наш клиент. В процедуре при открытии на клиенте проверяете если нашклиент тогда вопрос. И потом по результату вопроса вызываете серверную процедуру на открытие доступа
#15 by GROOVY
Клиент: (За дверью, звонит в звонок), Вызов! Сервер: (На кухне, чайник наливает). Опа, кто то звонит! Клиент: Звонит повторно, нет ответа от сервера... Сервер: Подошел к двери: "Кто там?" Клиент: "Почта!" Что будет делать и как сервер с данными клиента не должно волновать.
#16 by GROOVY
А еще запятые ",,,,," забыл, сегодня со мной это что то часто!
#17 by ras
либо в процедуре ПриОткрытии задавать вопрос, либо работать с журналом документов, имхо...
#18 by Конфигуратор1с
Перечитал два раза - пора мне спать ложиться (((
#19 by Эльфийка
у нас есть только процедура &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка), куда и попадаем при открытии документа. (и нет процедуры при открытии на клиенте)
#20 by Эльфийка
не издевайтесь, пож-та, мне нужна помощь и реальный ответ, пусть даже задача не реальная))))
#21 by Конфигуратор1с
А кто мешает завести?
#22 by Эльфийка
представила, как бы это было в действительности и стало смешно.
#23 by Конфигуратор1с
Как я понимаю УФ, то сначала форма создается на сервере и выполняется процедура ПриСозданииНаСервере. Далее эта форма передается на клиент. Как ХТМЛЬ у сайтов. где и отображается. Посему ПриОткрытии на клиенте идет следующим.
#24 by Конфигуратор1с
Вам смешно, а админ сидит в серверной. Холодно голодно, а ему на вопросы 1ски отвечать надо - не то шо покурить в туалет отлучится не может
#25 by Эльфийка
фигня в том, что при создании на сервере перед этим идет проверка Если (Объект.Стадия = Перечисления.Стадии.ПринятБухгалтерией И РольДоступна("СотрудникОтделаПродаж")) Тогда ....
#26 by Эльфийка
т.е. мне не всегда нужна эта процедура при открытии на клиенте, а тока в определенных случаях
#27 by Конфигуратор1с
Тогда что?
#28 by Эльфийка
ну всё, я уже под столом))))
#29 by Конфигуратор1с
Так я же и пишу. При создании на сервере пишете Если (Объект.Стадия = Перечисления.Стадии.ПринятБухгалтерией И РольДоступна("СотрудникОтделаПродаж")) Тогда Записываете в реквизит формы с типом булево Спроситьу пользователяо размере носков = истина; При открытии пишете Если Спроситьу пользователяо размере носков тогда вопрос. серверная процедура с настройкой доступа и все
#30 by Эльфийка
тогда сначала задаем вопрос, получаем ответ, и в зависимости от ответа, действуем дальше
#31 by Конфигуратор1с
Ферштейн?
#32 by Конфигуратор1с
Ну вот. В усе
#33 by Конфигуратор1с
То есть на сервере делаете проверку и пишете ее результат в реквизит формы. Далее при открытии анализируете значение реквизита формы и если надо задаете вопрос, по результатам которого делаете ваше действие.
#34 by Эльфийка
когда выполняется данное условие, форма документа ему не доступна. так что реквизит формы , как я понимаю не сможем записать
#35 by Конфигуратор1с
а сделайте что бы этот реквизит был доступен всем пользователям но никому не видим
#36 by Эльфийка
Т.е. сейчас сделано так, если у документа стадия ПринятБухгалтерией , то пользователи ничего там не могут изменить, только смотреть закладки в табличной части и всё. Но  продажникам надо открыть доступ для редактирования, только для поля Комментарий
#37 by Эльфийка
как я заметила, то если форма не доступна, то в не зависимости есть доступ к кнопкам, полям и т.п. или нет, ничего не доступно
#38 by Конфигуратор1с
Это уже как Вы пропишете доступ формы
#39 by Эльфийка
т.е. на момент когда форма не доступна, данный добавленный реквизит будет тоже не доступен (или я уже ничего не понимаю(((
#40 by Конфигуратор1с
Я ваще спатки. Если хотите давайте тимку все Вам сделаем по быстренькому
#41 by Конфигуратор1с
Есть такая вещь как привелигированный общий модуль на крайний случай.
#42 by Эльфийка
я тоже спать, перечитаю сегодня после того как встану, может вникну наконец))))
#43 by Эльфийка
спасибо за идею!!!!
#44 by Конфигуратор1с
Спасибо много - фото в самый раз )))
#45 by Эльфийка
вообще можно было бы сделать проще,                ЭтаФорма.ТолькоПросмотр = Ложь;
#46 by Эльфийка
но в этом случае, пользователь не может просматривать не доступные ему закладки 3,4,13. Они просто высвечиваются как полностью не доступная табличная часть
#47 by Конфигуратор1с
Так пусть и не смотрит
#48 by Конфигуратор1с
И ваще - отпустите меня спатки. Мне завтра еще рабочий вид изображать
#49 by Эльфийка
умного человека жаль отпускать))))
#50 by Конфигуратор1с
Я вернусь. Честное пионерское
#51 by Эльфийка
смотреть надо, потому что как раз на второй закладке 4, у них проценты их от продажи записаны, которые они должны видеть))))
#52 by Эльфийка
буду надеяться и ждать! спокойной ночи!сладких снов!
#53 by Конфигуратор1с
Взаимно
#54 by Эльфийка
Ура!!! все оказалось как всегда намного проще!!!!!!!!!
#55 by Эльфийка
у меня все получилось!!! вот
#56 by Эльфийка
так что  Конфигуратор1с можете быть свободным, отпускаю)))))))))))))
#57 by Эльфийка
и благодарю от всего сердца!!!
#58 by Конфигуратор1с
Ну вот, Карлсон вернулся, а Малыш  уже съел все варенье (((
#59 by samozvanec
все не читал. разорвать серверную процедуру предлагали?
#60 by Klesk
а как же Сообщить кому оно сообщает?
#61 by Конфигуратор1с
вроде тоже серверу, Если хотите оповестить клиента  то надо использовать сообщение пользователю
#62 by Klesk
не, я вижу "сообщить" на клиенте
#63 by Конфигуратор1с
В файловом варианте?
#64 by Klesk
Синтаксис: Сообщить(<ТекстСообщения>, <Статус>) Параметры: Тип: Строка. Тип: СтатусСообщения. Статус сообщения. Определяет вид пиктограммы. Значение по умолчанию: Обычное Описание: Выводит текст сообщения в окно сообщений. Если в момент вызова окно сообщений отсутствует, то будет открыто новое окно сообщений. Сообщение, в зависимости от его смысловой нагрузки, можно пометить одной из пиктограмм, входящих в предопределенный набор. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение. Пример: Сообщить("Выбранный товар отсутствует на складе!", СтатусСообщения.Важное);
#65 by Klesk
в любом
#66 by Конфигуратор1с
Таки да, был не прав. На клиенте его показывает. Только что проверил. Хотя логики не пойму
#67 by Klesk
я тоже
#68 by hhhh
Сообщить не требует ответа. Поэтому можно спокойно его сложить куда-нибудь, а когда запустится клиент, может через месяц, ему это показать.
#69 by Конфигуратор1с
В чем смысл тогда Сообщение пользователю?
#70 by NcSteel
Очень гибкий объект. Позволяет привязать объекты и поля формы.
#71 by acsent
Лучше по молчанию доступность ложь и кнопка редактировать. Так в ут 11 например
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С