| 
    
        
     
     | 
    
  | 
Как заполнить переменную объекта документа в упр форме? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        shamannk    
     13.07.16 
            ✎
    11:47 
 | 
         
        В модуле объекта есть: Перем Статус Экспорт; в обычных формах просто заполнял статус и в модуле объекта эта переменная была заполнена. В упр форма методом РеквизитФормыВЗначение получил объект заполнил статус но при проведении статус в модуле не заполняется. Как заполнить?     
         | 
|||
| 
    1
    
        Nuobu    
     13.07.16 
            ✎
    11:49 
 | 
         
        В управляемом приложении нужно эту переменную передавать параметром, а не искать в модуле.     
         | 
|||
| 
    2
    
        shamannk    
     13.07.16 
            ✎
    11:51 
 | 
         
        (1) Как?     
         | 
|||
| 
    3
    
        Господин ПЖ    
     13.07.16 
            ✎
    11:51 
 | 
         
        >В упр форма методом РеквизитФормыВЗначение получил объект заполнил статус но при проведении статус в модуле не заполняется
 
        переменные объекта живут только на сервере  | 
|||
| 
    4
    
        Nuobu    
     13.07.16 
            ✎
    11:53 
 | 
         
        (2) Передать параметром. Если тебе в функции "ОбработкаПроведения" нужна какая-то переменная, которая есть на форме, но нету в реквизитах Объекта, то ты можешь её передать одним из параметров.
 
        http://catalog.mista.ru/public/153748/  | 
|||
| 
    5
    
        shamannk    
     13.07.16 
            ✎
    12:16 
 | 
         
        (4) Не понял как в модуле объекта ее принять?     
         | 
|||
| 
    6
    
        Numerus Mikhail    
     13.07.16 
            ✎
    12:20 
 | 
         
        (5) 
 
        Например в ПередЗаписьюНаСервере ТекущийОбъект.ДополнительныеСвойства.Вставить("НазваниеПараметра",Параметр); И потом в модуле объекта где тебе надо Если ДополнительныеСвойства.Свойство("НазваниеПараметра") Тогда КонецЕсли;  | 
|||
| 
    7
    
        shamannk    
     13.07.16 
            ✎
    12:24 
 | 
         
        (6) А про параметры мне тут выше рассказывали не то что-ли?     
         | 
|||
| 
    8
    
        Numerus Mikhail    
     13.07.16 
            ✎
    12:26 
 | 
         
        (7) именно то
 
        ты спросил как в модуле объекта ее принять, я тебе показал  | 
|||
| 
    9
    
        Рэйв    
     13.07.16 
            ✎
    12:34 
 | 
         
        (0)Вмест с РеквизитФормыВЗначение потом неплохо бы сделать 
 
        ЗначениеВРеквизитФормы если хочешь чтобы объект записался потом заполненными данными  | 
|||
| 
    10
    
        shamannk    
     13.07.16 
            ✎
    12:58 
 | 
         
        (8) Параметрами вы их сами обзываете? В коде это доп свойства.     
         | 
|||
| 
    11
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:01 
 | 
         
        (0) Лучше уйти от этого .
 
        Если уж кровь из носу, то можно получить ПередЗаписьюНаСервере Расширение управляемой формы для документа.ПередЗаписьюНаСервере (Managed form extension for documents.BeforeWriteAtServer) Расширение управляемой формы для документа (Managed form extension for documents) ПередЗаписьюНаСервере (BeforeWriteAtServer) Синтаксис: ПередЗаписьюНаСервере(<Отказ>, <ТекущийОбъект>, <ПараметрыЗаписи>) Параметры: <Отказ> Тип: Булево. Признак отказа от записи. Если в теле процедуры-обработчика установить данному параметру значение Истина, то запись произведена не будет. Значение по умолчанию: Ложь <ТекущийОбъект> Тип: ДокументОбъект. Записываемый объект. <ПараметрыЗаписи> Тип: Структура. Структура, содержащая параметры записи. Для формы документа существует два предопределенных параметра РежимЗаписи и РежимПроведения. Они добавляются автоматически при вызове команд "Провести", "Провести и закрыть", "Отмена проведения". Описание: Вызывается перед записью объекта на сервере. Можно отменить запись. Выполняется вне транзакции.  | 
|||
| 
    12
    
        shamannk    
     13.07.16 
            ✎
    13:05 
 | 
         
        (11) Для чего вы СП выложили?     
         | 
|||
| 
    13
    
        shamannk    
     13.07.16 
            ✎
    13:10 
 | 
         
        (6) Не подходит ОбработкаПроверкиЗаполнения раньше возникает и переменная не заполнена еще.     
         | 
|||
| 
    14
    
        Numerus Mikhail    
     13.07.16 
            ✎
    13:24 
 | 
         
        (10) какая разница как я их называю?) Оно же идеально подходит для твоих целей     
         | 
|||
| 
    15
    
        Nuobu    
     13.07.16 
            ✎
    13:27 
 | 
         
        (12) Намёк на параметр "ПараметрыЗаписи". Это структура и туда можно дописать свой любой параметр.     
         | 
|||
| 
    16
    
        shamannk    
     13.07.16 
            ✎
    13:28 
 | 
         
        (15) И как их до модуля объекта дотянуть?     
         | 
|||
| 
    17
    
        shamannk    
     13.07.16 
            ✎
    13:28 
 | 
         
        (14) Не подходит (13)     
         | 
|||
| 
    18
    
        Nuobu    
     13.07.16 
            ✎
    13:30 
 | 
         
        (16) В форме пишешь "Записать(Новый Структура("ПараметрЧтобОтловитьНаСервере", ЗначениеПараметра));"
 
        И отлавливаешь.  | 
|||
| 
    19
    
        shamannk    
     13.07.16 
            ✎
    13:31 
 | 
         
        (18) Не знаешь?     
         | 
|||
| 
    20
    
        FIXXXL    
     13.07.16 
            ✎
    13:35 
 | 
         
        (19) ОбработкаПроверкиЗаполнения у тебя переменные модуля объекта проверяет?     
         | 
|||
| 
    21
    
        shamannk    
     13.07.16 
            ✎
    13:38 
 | 
         
        (20) От переменной заполняются реквизиты объекта, получается да.     
         | 
|||
| 
    22
    
        FIXXXL    
     13.07.16 
            ✎
    13:41 
 | 
         
        (21) что мешает их заполнять ДО проведения?
 
        задублируй заполнение на форме ПередЗаписью РеквизитВЗначение - Вызов процедуры заполнения - ЗначениеВРеквизит и пусть дальше едет проводится  | 
|||
| 
    23
    
        shamannk    
     13.07.16 
            ✎
    13:44 
 | 
         
        (22) если честно то я подзаеб..ся все переделывать потому что упр. форма не может что то делать.     
         | 
|||
| 
    24
    
        Nuobu    
     13.07.16 
            ✎
    13:45 
 | 
         
        (23) Увольняйся, дай дорогу тем, кто еще не подзаебался.     
         | 
|||
| 
    25
    
        shamannk    
     13.07.16 
            ✎
    13:46 
 | 
         
        Это же элементарно заполнить переменную объекта. В упр приложении это проблема. Что за бред заполнение после проверки заполнения ааааааааа.....     
         | 
|||
| 
    26
    
        Nuobu    
     13.07.16 
            ✎
    13:47 
 | 
         
        (25) Ты читал статью из (4)?     
         | 
|||
| 
    27
    
        shamannk    
     13.07.16 
            ✎
    13:48 
 | 
         
        (24) Вы убедите сначала клиента за эту переделку заплатить, аргумент "упр форма это не магет" так себе.     
         | 
|||
| 
    28
    
        Fish    
     гуру 
    13.07.16 
            ✎
    13:48 
 | 
         
        (25) Привыкай. Для клиент-серверных приложений это нормально.     
         | 
|||
| 
    29
    
        Fish    
     гуру 
    13.07.16 
            ✎
    13:49 
 | 
         
        (27) Управляемые формы могут всё. Не могут некоторые программисты, которые не читают документацию. А это 2 большие разницы :)     
         | 
|||
| 
    30
    
        shamannk    
     13.07.16 
            ✎
    13:50 
 | 
         
        (29) Вот вы не некоторый наверно ответе на сабж.     
         | 
|||
| 
    31
    
        Numerus Mikhail    
     13.07.16 
            ✎
    13:52 
 | 
         
        (30) Опиши конкретно последовательность действий которую ты выполняешь     
         | 
|||
| 
    32
    
        shamannk    
     13.07.16 
            ✎
    13:53 
 | 
         
        (26) Прочитал как понял пробрасывают параметры на форме с клиента на сервер через параметр перед записью. Как это мне поможет не понял.     
         | 
|||
| 
    33
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:54 
 | 
         
        (16) Руками + голова, через (6), а именно "ДополнительныеСвойства"     
         | 
|||
| 
    34
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:54 
 | 
         
        (32) Уходите от переменных в модуле. На УФ это головная боль.     
         | 
|||
| 
    35
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:55 
 | 
         
        (27) Клиент платит за конечный результат. Как ты это выполнишь, его не должно касаться :)
 
        Иначе бы клиент мог бы сам сесть и сделать :)  | 
|||
| 
    36
    
        shamannk    
     13.07.16 
            ✎
    13:56 
 | 
         
        (33) Не получается смотри (13)     
         | 
|||
| 
    37
    
        Fish    
     гуру 
    13.07.16 
            ✎
    13:56 
 | 
         
        (30) Ответ прост: не используй в УФ переменные объекта.     
         | 
|||
| 
    38
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:56 
 | 
         
        (31) Да там поди в модуле проведения по переменной устанавливается исключение из правил.     
         | 
|||
| 
    39
    
        shamannk    
     13.07.16 
            ✎
    13:58 
 | 
         
        (35) Это не клиент а лох так делает. Если продукт простой и секундный то сделай сам или не плати много.     
         | 
|||
| 
    40
    
        Fish    
     гуру 
    13.07.16 
            ✎
    13:58 
 | 
         
        Интересно, что автор скажет про асинхронные вызовы? :)     
         | 
|||
| 
    41
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:58 
 | 
         
        (36) Делай просто.
 
        в УФ получай Объект на стороне сервера. Дальше работаешь как обычно с объектом, как в толстом клиенте.  | 
|||
| 
    42
    
        shamannk    
     13.07.16 
            ✎
    13:59 
 | 
         
        (37) Как иначе? реквизит объекта не нужен.     
         | 
|||
| 
    43
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    13:59 
 | 
         
        (42) Реквизиты объекта и переменные, это две разные вещи :)     
         | 
|||
| 
    44
    
        shamannk    
     13.07.16 
            ✎
    14:00 
 | 
         
        (43) не спрашивали отвечаем)     
         | 
|||
| 
    45
    
        shamannk    
     13.07.16 
            ✎
    14:01 
 | 
         
        (41) Мне проводки нужно сформировать от него и реквизиты заполнить     
         | 
|||
| 
    46
    
        Fish    
     гуру 
    13.07.16 
            ✎
    14:03 
 | 
         
        (42) Уже ответили же: используй параметры.     
         | 
|||
| 
    47
    
        shamannk    
     13.07.16 
            ✎
    14:05 
 | 
         
        (46) В (13) неподходит.     
         | 
|||
| 
    48
    
        Nuobu    
     13.07.16 
            ✎
    14:11 
 | 
         
        (47) Значит, кривой код пишешь, раз тебе параметры не подходят. Читай статью из (4) и вот эту до просветления:
 
        http://catalog.mista.ru/public/198766/  | 
|||
| 
    49
    
        FIXXXL    
     13.07.16 
            ✎
    14:11 
 | 
         
        (23) это не форма, а новый метод работы платформы
 
        теперь так, привыкай  | 
|||
| 
    50
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    14:12 
 | 
         
        (45) Чито?
 
        У 8.х вообще можно документ не проводить. Выставить галочку "Проведен" в истину А движения нарисовать из другого места :)  | 
|||
| 
    51
    
        shamannk    
     13.07.16 
            ✎
    14:16 
 | 
         
        (48) Со стороны 1С наверно, там же правильно сначала проверку заполнения проводить а патом параметры заполнять)     
         | 
|||
| 
    52
    
        shamannk    
     13.07.16 
            ✎
    14:16 
 | 
         
        (50) Я в курсе о работе 1С через одно место)     
         | 
|||
| 
    53
    
        shamannk    
     13.07.16 
            ✎
    14:26 
 | 
         
        Форма (не только в 1С) не должна заниматься созданием данных, он всего лишь служит инструментом ввода. Данные могут придти откуда угодно в этот объект: Другая форма, Обработка, внешнее соединение. Упр форма этого же объекта  получается не может передать параметры до их проверки объектом.     
         | 
|||
| 
    54
    
        Nuobu    
     13.07.16 
            ✎
    14:27 
 | 
         
        (53) Если не нравятся 1С-ные формы, пиши свою 1С. Тут тебе уже сказали, как нужно сделать, чтобы твоя задача решилась в среде разработки 1С. Прими это как данность.     
         | 
|||
| 
    55
    
        DrZombi    
     гуру 
    13.07.16 
            ✎
    14:30 
 | 
         
        (53) Все он может, просто проверка у вас не там где надо и не такая :)     
         | 
|||
| 
    56
    
        shamannk    
     13.07.16 
            ✎
    14:32 
 | 
         
        (55) А как надо вы не скажите)     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |