|   |   | 
| 
 | УФ передача параметров | ☑ | ||
|---|---|---|---|---|
| 0
    
        Baloven 02.11.12✎ 08:54 | 
        Доброго дня
  есть внешняя обработка на простой форме, я из нее вызываю УФ находящуюся в обработках в конфе: НомерДок = Строка.N; ДатаДок = Строка.Дата; ТипДок = 39; ПараметрыОткрытия = Новый Структура("ВладелецФайла, НеОткрыватьКарточкуПослеСозданияИзФайла, ИдентификаторКлиента,НомерДок,ДатаДок,ТипДок", ВладелецФайла, НеОткрыватьКарточкуПослеСозданияИзФайла, ИдентификаторКлиента,НомерДок,ДатаДок,ТипДок); ДанныеФайла = ОткрытьФормуМодально("Обработка.Сканер.Форма.РезультатСканирования", ПараметрыОткрытия,ЭтаФорма); суть в том что я не вижу в форме "РезультатСканирования" переданные НомерДок,ДатаДок,ТипДок | |||
| 1
    
        Rounder 02.11.12✎ 09:23 | 
        (0) В процедуре ПриСозданииНаСервере у формы обработки обработай переданные параметры и заполни форму.     | |||
| 2
    
        Rounder 02.11.12✎ 09:25 | 
        Не прочел что обработка на простой форме... Может и не сработать - не пробовал. Отвечал для УФ.     | |||
| 3
    
        Rounder 02.11.12✎ 09:26 | 
        В общем пробуй (1)     | |||
| 4
    
        YF 02.11.12✎ 09:28 | 
        Используй 
  форма_ = ПолучитьФорму(...); форма_.МойРеквизит = ЗначениеМоегоРеквизита; форма_.Открыть(); //как открыть модально нужно в СП посмотреть | |||
| 5
    
        Baloven 02.11.12✎ 09:47 | 
        Параметры.Свойство("НомерДок") дает Истина :( что еще и как можно посмотреть?     | |||
| 6
    
        cw014 02.11.12✎ 09:48 | 
        (5) А ты думал, что оно даст?     | |||
| 7
    
        Baloven 02.11.12✎ 09:49 | 
        (6) переданное значение     | |||
| 8
    
        cw014 02.11.12✎ 09:49 | 
        Структура.Свойство (Structure.Property)
  Структура (Structure) Свойство (Property) Синтаксис: Свойство(<Ключ>, <НайденноеЗначение>) Параметры: <Ключ> (обязательный) Тип: Строка. Ключ для поиска свойства. <НайденноеЗначение> (необязательный) Тип: Произвольный. В данный параметр возвращается найденное значение. Если ключа нет в структуре, то возвращается Неопределено. Возвращаемое значение: Тип: Булево. Истина - ключ найден; Ложь - в противном случае. Описание: Получает значение элемента по указанному имени, а также проверяет, имеется ли указанное свойство. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение. Пример: Отбор.Свойство("Дата"); | |||
| 9
    
        1Сергей 02.11.12✎ 09:51 | 
        НомерДок... ДатаДок...
  Семёрошник? | |||
| 10
    
        Baloven 02.11.12✎ 09:56 | 
        (9) лень писать полностью - я просто не могу получить значения в форме - нет это УПП я в нее перекинул и почистил формы сканирования в отдельную обработку из документооборота но мне нужно файл сохранить по с именем по определенным правилам - для этого и нужно передать в форму сканирования параметры для формирования имени файла     | |||
| 11
    
        cw014 02.11.12✎ 09:57 | 
        (9) Понял? Лень писать "Номер" полностью, сокращеннее будет "НомерДок"     | |||
| 12
    
        1Сергей 02.11.12✎ 09:58 | 
        (11) :)     | |||
| 13
    
        Infsams654 02.11.12✎ 09:58 | 
        (10) так у тебя в форме есть такие параметры ?     | |||
| 14
    
        Baloven 02.11.12✎ 09:59 | 
        да добавил     | |||
| 15
    
        Baloven 02.11.12✎ 11:02 | 
        получилось так
  Параметры.НомерДок если нет в форме НомерДок то вот так: ТоКудаНамНужно = Параметры.НомерДок | |||
| 16
    
        Baloven 02.11.12✎ 11:39 | 
        ну собственно с передачей параметров разобрался в УФ и между УФ, а как вернуть из УФ в обычную?
  т.е. в текущем примере у меня формируется отсканированный файл и как мне его теперь получить в обычной форме? потому как вот по этой строке: ДанныеФайла = ОткрытьФормуМодально("Обработка.Сканер.Форма.РезультатСканирования", ПараметрыОткрытия,ЭтаФорма); ДаттыеФайла я получаю "неопределено" :( | |||
| 17
    
        Infsams654 02.11.12✎ 13:26 | 
        В форме Обработка.Сканер.Форма.РезультатСканирования
  делаешь Закрыть (Close) Синтаксис: Закрыть(<ПараметрЗакрытия>) и т.д. | |||
| 18
    
        Baloven 03.11.12✎ 04:14 | 
        (17) да спасибо все ок, просто я ее писал в процедуру "ПриЗакрытии()" и выдавало ошибку, а сейчас написал такую конструкцию:
  УдалитьВременныеФайлы(МассивФайловКопия); ПараметрыЗакрытия = Новый Структура("ФайлРезультата,ИмяФайла,ТипКаталога", ФайлРезультата, ИмяФайла, ТипКаталога); Закрыть(ПараметрыЗакрытия); ну и в обычной форме ДанныеФайла имею переданную структуру и вытаскиваю их обратно | |||
| 19
    
        Baloven 07.11.12✎ 14:21 | 
        возвращаясь к баранам про Передачу параметров в УФ
  в общем все гладко, но теперь мне в ТЗ нужно передать в форму СписокЗначений формируемый в Обычной форме для заполнения им поля ввода (раньше оно было статичным, теперь решили сделать динамичное) СписокНазванийДокументов = СоставитьСписокТиповФайлов(); ПараметрыОткрытия = Новый Структура("ИдентификаторКлиента,НомерДокумента,ДатаДокумента,ТипДокумента,СписокНазванийДокументов", ИдентификаторКлиента,НомерДокумента,ДатаДокумента,ТипДокумента,СписокНазванийДокументов); СписокНазванийДокументов формируется и передается с типом "СписокЗначений" Аналогично в УФ есть реквизит СписокНазванийДокументов с таким же типом пытаюсь в УФ сделать: &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) НомерДокумента = Параметры.НомерДокумента; ДатаДокумента = Параметры.ДатаДокумента; РежимСоздания = Параметры.РежимСоздания; Элементы.РежимСоздания.СписокВыбора.Очистить(); СписокНазванийДокументов.ЗагрузитьЗначения(Параметры.СписокНазванийДокументов); Элементы.РежимСоздания.СписокВыбора.ЗагрузитьЗначения(Параметры.СписокНазванийДокументов); КонецПроцедуры и мне на первой же строке ругается что Поле объекта не обнаружено (СписокНазванийДокументов) в отладчике тоже Параметры.СписокНазванийДокументов необнаружено :( уже мозг весь сломал почему не передается параметр | |||
| 20
    
        Baloven 07.11.12✎ 14:44 | 
        уже и элемент скрытый создал и к нему данные привязал СписокНазванийДокументов, все равно в Параметры - нету СписокНазванийДокументов     | |||
| 21
    
        Baloven 08.11.12✎ 03:29 | 
        блин ну народ подскажите кто-нибудь где копать?
  смотрю отладчиком на строке: ПараметрыОткрытия = Новый Структура("ИдентификаторКлиента,НомерДокумента,ДатаДокумента,ТипДокумента,СписокНазванийДокументов", ИдентификаторКлиента,НомерДокумента,ДатаДокумента,ТипДокумента,СписокНазванийДокументов); в ПараметрыОткрытия.СписокНазванийДокументов вижу свой список но как только форма открывается (ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)) нет его в структуре Параметры???? в чем может быть дело просто не понимаю пересмотрел вызовы в документообороте - там без проблем перекидываются в структуре списки выбора, и даже в тех случаях если нет в форме реквизита (например кусок кода: ПараметрыОткрытия = Новый Структура("СписокПочтовыхАдресов", СписокПочтовыхАдресов); ОткрытьФорму("Документ.ИсходящееПисьмо.ФормаОбъекта", ПараметрыОткрытия); и на форме нет СписокПочтовыхАдресов | |||
| 22
    
        Baloven 08.11.12✎ 07:36 | 
        блин ступил :( у меня пробрасывается значение через еще одну форму и второй вызов тоже через ПриСозданииНаСервере
  возник другой вопрос я наверно туплю уже конкретно, у меня тип СписокНазванийДокументов списокЗначений, а я так понимаю чтобы его загрузить в СписокВыбора - он должен быть массивом как его привести к массиву-то? | |||
| 23
    
        olegves 08.11.12✎ 08:42 | 
        (22) - список выбора и есть список значений. Кури ВыгрузитьЗначения и ЗагрузитьЗначения     | |||
| 24
    
        Baloven 08.11.12✎ 09:57 | 
        собственно решил обходом коллекции из ТЗ     | |||
| 25
    
        Baloven 08.11.12✎ 09:57 | 
        (23) Я пробовал загрузить (я выше писал) у меня ругалось :(     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |