|
1С:Предприятие
:: 1С:Предприятие 7.7 и ранее
|
|
| ||
evgpinsk_ 15.01.21 - 09:58 | В обработке КлассПерехватСобытий определена:
Процедура СобытиеГМ_ПриОткрытии(Конт,ФлагЧтенияНастройки) Экспорт далее хочу прочитать например поле текст: Сообщить(КонтФормы.Форма.ВысчитываемоеПоле); но этот код возвращает пустое значение. Т.е. прочитать поля ввода, которые являются реквизитами документа можно, а те поля, которые определяются функцией в модуле формы, уже нет Как то обойти этот момент можно? п.с. turboMd не властен над обработкой "КлассПерехватСобытий" ? | ||
Mikeware 1 - 15.01.21 - 10:09 | форма еще не открыта. Надо использовать ПослеОткрытия | ||
evgpinsk_ 2 - 15.01.21 - 11:10 | Уже сложно эксперементировать, почему-то турбоМД не властен над этой обработкой. | ||
Mikeware 3 - 15.01.21 - 11:12 | (2) ну сделай без турбомд. проблем-то... | ||
Mikeware 4 - 15.01.21 - 11:12 | на то классы и хранят во внешних... | ||
evgpinsk_ 5 - 15.01.21 - 11:18 | Почему-то когда я сохранял как внешнюю в каталоге базы, не срабатывала. Уже вечером буду пробовать | ||
Злопчинский 6 - 15.01.21 - 11:26 | "поля, которые определяются функцией в модуле формы" - один я тупой и не понял что это такое? | ||
Mikeware 7 - 15.01.21 - 11:45 | (6) у тебя модуль телепатии сломался :-) | ||
Злопчинский 8 - 15.01.21 - 12:00 | (7) моя вангоспособность говорит о том, что "поля, которые определяются функцией" - это если следовать логике - атрибуты формы, создаваемые программно. Формекс такое умеет. Но сомневаюсь я что про это речь идет... | ||
Mikeware 9 - 15.01.21 - 12:40 | (8) делай поправку на, гкхм, "нетрадиционность" "мышления" | ||
Злопчинский 10 - 15.01.21 - 12:50 | (9) "главное, чтобы это не стало обязательным"... | ||
evgpinsk_ 11 - 15.01.21 - 13:09 | (6) На форме может быть "Поле Ввода". Это поле может быть как реквизитом документа так и определяться функцией.
Так понятно? | ||
Mikeware 12 - 15.01.21 - 13:14 | (11) что в вашем понимании "определяться функцией"? как "функция" "опеределяет" поле?
не, я-то понимаю, что вы хотели сказать. Но мне интересна сама цепочка :-) думаю, Злопу тоже. | ||
evgpinsk_ 13 - 15.01.21 - 13:30 | (12) Т.е. соответствие между
Значение "Поля ввода" определяется функцией
и
"Поле ввода" определяется функцией
очень сложно увидеть???
п.с Отсутствие этого одного слова мешает великим умам догадаться о чём речь? Или опять я чтото не так сформулировал?? | ||
Mikeware 14 - 15.01.21 - 13:54 | (13) значение поля ввода, связанного с реквизитом объекта - тоже может вычисляться функцией :-)
поле ввода реквизитом объекта быть не может. хотя бы просто потому, что объект вполне себе может существовать без формы. у вас какие-то "свои понимания, соответствия и взаимосвязи". | ||
evgpinsk_ 15 - 15.01.21 - 14:29 | (14) "поле ввода реквизитом объекта быть не может. " Это точно?У меня какая-то особенная 1с?? https://prnt.sc/woe5qc Поле "Контрагент" - это поле ввода. И это поля является реквизитом документа | ||
Злопчинский 16 - 15.01.21 - 14:31 | (13) "очень сложно увидеть???"
да.
почему ты предполагаешь что я должен увидеть А, а не Б, если из написанного логичнее всего Б? | ||
Mikeware 17 - 15.01.21 - 14:44 | (15) нет, это не 1с особенная - это вы у нас особенный. "альтернативный", так сказать... | ||
evgpinsk_ 18 - 15.01.21 - 14:45 | (16) Я так понимаю это свойство бизнес-аналитиков постоянно обобщать и ни какой конкретики? )
Ещё раз повторю то что в (13) Я написал: "Поле ввода" определяется функцией. Предполагал что люди понимают, что функции возвращают значения. И значит слово "значение" можно было пропустить. Если разжёвывать, то да, нужно было написать так: Значение "Поля ввода" определяется функциейПравда и здесь в (14) у людей возникли вопросы и не понимание. Пришлось скрины кидать. П.с. А вот что такое "А" и "Б" я не знаю. Вы забываете что не все экстрасенсы | ||
Mikeware 19 - 15.01.21 - 14:46 | (18) и скрины еще раз доказали, что вы ни хрена не понимаете :-) | ||
evgpinsk_ 20 - 15.01.21 - 14:47 | |||
Mikeware 21 - 15.01.21 - 14:50 | (20)
1.по сути: "беда, коль пироги начет печи сапожник" 2. не может 3. Ну, если ярлык соответсвует содержанию - то это называется "правильная классификация" | ||
Arbuz 22 - 15.01.21 - 16:21 | погодите, я конспектирую: "Значение _ПоляВвода_ определяется функцией"... Эмм, это та функция которая на дополнительно->формула? | ||
evgpinsk_ 23 - 15.01.21 - 19:10 | (22) А что удивляет? | ||
evgpinsk_ 24 - 15.01.21 - 19:13 | Если говорим о "Поле ввода", то его значение можно определять через описанную в модуле функцию например в момент открытия формы | ||
evgpinsk_ 25 - 15.01.21 - 19:15 | А если говорим о том чего "не может быть" То но форме может быть стандартный Реквизит документа. И 1с также называет этот объект "Полем ввода" | ||
Злопчинский 26 - 15.01.21 - 19:55 | (24) поле ввода является самостоятельным объектом, которое имеет свои атрибуты. поэтому когда звучит "поле ввода определяется функцией" - в первую очередь приходит на ум манипуляция атрибутами поля ввода. например, увеличиь шрифт поля ввода, сделать его синим, поменять фон поля ввода итд. Про значение тут вообще не всплывает. Потому что поле ввода- это поле ввода, а не значение в поле ввода. вот. | ||
Злопчинский 27 - 15.01.21 - 19:56 | (18) А - это то, что для тебя "поле ввода" и "значение" в поле ввода - одно и то же.
а "Б" - то, что это не так. . Ширшее смотрите, товарищ! | ||
evgpinsk_ 28 - 15.01.21 - 20:26 | (27) Давай не выдёргивать из контекста. Я написал "прочитать поле ввода".
Этот текст практически равнозначен "прочитать значение поля ввода". И когда говорят о ЧТЕНИИ поля, то и предполагается что читается значение этого поля. Если применительно к Ексель говорят, прочитать поле /ячейку/ A2, то ни у кого не возникает мысли а что именно читать, значение или атрибут ячейки | ||
Ёпрст 29 - 15.01.21 - 20:57 | (0) форма еще не открыта, поэтому значений атрибутов формы еще нет. | ||
Ёпрст 30 - 15.01.21 - 20:58 | И..цель какая всего хоть? Перехватчик, для каких целей хоть? Рекламное место пустует | ||
Злопчинский 31 - 15.01.21 - 21:06 | (28) излагай по возможности конкретно и просто. проблем тогда не будет. | ||
evgpinsk_ 32 - 15.01.21 - 21:07 | (30) Права пользователям даны на документ для записи. Задача - обработка прав на программном уровне в зависимости от условий.
И соответственно сделать эту проверку для всех документов в одной процедуре а не в каждом документе. Одно из условий например, если по документу выдан другой документ, то исходный нельзя редактировать. Выданный документ определяется функцией. Функция уже прописана в контекстах документа и возвращает в шапке документа выданный документ. Вот это поле и хотел читать. Решения разные простые есть. Думал через класс можно реализовать, но не получалось. Вот и задал вопрос /который не стоит столько потраченного на него времени/ | ||
Ёпрст 33 - 15.01.21 - 21:15 | |||
evgpinsk_ 34 - 15.01.21 - 21:21 | Это одно из простых решений. Но немного сложнее чем прочитать поле в шапке документа. Мне больше было интересно не решение задачи а решение возникшего нюанса | ||
Ёпрст 35 - 15.01.21 - 21:42 | (34) перехватывай послеоткрытия..сымотри, че хочешь | ||
evgpinsk_ 36 - 16.01.21 - 03:14 | Вариант когда обработка КлассПерехватСобытий находится в конфигураторе работает:
В обработке defcls.ert: # класс КлассПерехватСобытий = КлассПерехватСобытий@MD # {};гугл не помог, как прописать ссылку в defcls.ert чтобы КлассПерехватСобытий.ert использовать как внешнюю ? | ||
Mikeware 37 - 16.01.21 - 09:34 | |||
Mikeware 38 - 16.01.21 - 09:48 | (29) так я ему это в первом сообщении написал. Но видишь ли, он считает поля ввода реквизитами _объектов_.
поэтому не понимает. | ||
evgpinsk_ 39 - 16.01.21 - 11:10 | (38) Это не я считаю, а 1с .
Любой реквизит документа, размещённый на форме документа, является "Полем ввода". https://prnt.sc/woe5qc | ||
evgpinsk_ 40 - 16.01.21 - 11:10 | (37) За это спасибо. | ||
Василий Алибабаевич 41 - 16.01.21 - 11:37 | (39) ГЫ. И конечно же фишки на вашем скрине "Сделать недоступным", "Сделать невидимым", "Запретить редактирование" относятся к реквизиту объекта?
Неужели ТС кроме 1С более ничего не видел? Практически в любой системе есть такое понятие как поле ввода. И оно может быть связано (предназначено для редактирования) с любой переменной. В том числе для редактирования реквизита объекта (в терминах 1С). А может и не быть. А может быть в разные моменты времени связано с разними переменными. Поэтому вполне естественно что "поле ввода" <> "реквизиту объекта". ЦЫ (27) | ||
evgpinsk_ 42 - 16.01.21 - 12:05 | (41) Вы читаете то что выше? Где я утверждала что "поле ввода" РАВНО "реквизиту объекта"
Ещё раз по полочкам, везде с цитатами:
в (0) Я: "прочитать поля ввода, которые являются реквизитами документа можно" т.е "поля ввода" не всегда тождественно равны "реквизитам" а "могут" быть ими далее в (14) Mikeware как-раз таки категорично: "поле ввода реквизитом объекта быть НЕ может" на что я показываю конкретный скрин , в котором МОЖЕТ | ||
Василий Алибабаевич 43 - 16.01.21 - 12:08 | (42) Не стыдно чего-то не знать. Стыдно в своем незнании упорствовать.
Еще раз. На вашей ссылке показано поле ввода привязанное к реквизиту объекта. И это никак не означает "поле ввода реквизитом объекта быть МОЖЕТ". Оно может быть привязано к реквизиту. Но ни в коем случае не может ему равняться. | ||
evgpinsk_ 44 - 16.01.21 - 12:49 | (43) Придраться можно к любой фразе. Давайте тогда поэмы писать?
"Поля ввода" на форме документа могут как ссылаться на реквизиты документа, так и не ссылаться и получать свои значения через привязанную функцию. Да в (0) я не корректно использовал слово "являются": "поля ввода, которые являются реквизитами документа "правильней "ссылаются на реквизит". | ||
Mikeware 45 - 18.01.21 - 10:15 | (44) дело-то в том, что это не придирка.
поля ввода не могут быть реквизитами объекта - могут быть только реквизитами формы, визуального _представления_ объекта. Т.е. реквизит объекта может быть отображен для пользователя как какой-то визуальный инструмент управления, типа http://prntscr.com/x3bpy2 понимание, что есть что - дает понимание, откуда и в какой момент берутся данные. отсюда появляется понимание, почему в ПриОткрытии КонтФормы.Форма.ВысчитываемоеПоле - пустое. |
|
Список тем форума |