| 
    
        
     
     | 
    
  | 
v7: Форма.Параметр через ОЛЕ | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        burrya    
     09.07.13 
            ✎
    13:58 
 | 
         
        onesobj := createoleobject('V77.Application');
  
        onesobj.initialize(onesobj.rmtrade, '/D\\1c\1T /NFJT /P12345', '');//NO_SPLASH_SHOW openedFRV := onesobj.OpenForm('Обработка', 'SS040001228522', '\\1c\1CBases\PT\ExtForms\ФРВ.ert'); Обработка открывается, но параметр не передается почему-то.  | 
|||
| 
    1
    
        Ёпрст    
     гуру 
    09.07.13 
            ✎
    13:59 
 | 
         
        Как узнал ?     
         | 
|||
| 
    2
    
        1Сергей    
     09.07.13 
            ✎
    13:59 
 | 
         
        Что в Форма.Параметр?     
         | 
|||
| 
    3
    
        burrya    
     09.07.13 
            ✎
    14:05 
 | 
         
        Процедура ПриОткрытии()
  
        Текст = СоздатьОбъект("Текст"); Текст.ДобавитьСтроку(Форма.Параметр); Текст.Записать("C:\12345.txt"); КонецПроцедуры это в обработке, которая открывается файл создается, но пустой  | 
|||
| 
    4
    
        Serginio1    
     09.07.13 
            ✎
    14:07 
 | 
         
        Открой модально     
         | 
|||
| 
    5
    
        1Сергей    
     09.07.13 
            ✎
    14:07 
 | 
         
        Процедура ПриОткрытии()
  
        Текст = СоздатьОбъект("Текст"); Текст.ДобавитьСтроку(ТипЗначенияСтр(Форма.Параметр) + " " + Форма.Параметр); Текст.Записать("C:\12345.txt"); КонецПроцедуры  | 
|||
| 
    6
    
        Ёпрст    
     гуру 
    09.07.13 
            ✎
    14:11 
 | 
         
        (4) зачем ?     
         | 
|||
| 
    7
    
        Serginio1    
     09.07.13 
            ✎
    14:11 
 | 
         
        openedFRV := onesobj.ОткрытьФормуМодально('Отчет', 'SS040001228522', '\\1c\1CBases\PT\ExtForms\ФРВ.ert');     
         | 
|||
| 
    8
    
        Serginio1    
     09.07.13 
            ✎
    14:12 
 | 
||||
| 
    9
    
        burrya    
     09.07.13 
            ✎
    14:12 
 | 
         
        Текст.ДобавитьСтроку(ТипЗначенияСтр(Форма.Параметр) + "_" + Форма.Параметр);
  
        Только 1 символ "_"  | 
|||
| 
    10
    
        1Сергей    
     09.07.13 
            ✎
    14:14 
 | 
         
        (9) это дельфи?     
         | 
|||
| 
    11
    
        Serginio1    
     09.07.13 
            ✎
    14:15 
 | 
         
        (10) Ну по := можно догадаться     
         | 
|||
| 
    12
    
        burrya    
     09.07.13 
            ✎
    14:15 
 | 
         
        (10)(11) да     
         | 
|||
| 
    13
    
        Serginio1    
     09.07.13 
            ✎
    14:16 
 | 
         
        (12) ты 7 пробовал?     
         | 
|||
| 
    14
    
        burrya    
     09.07.13 
            ✎
    14:18 
 | 
         
        openedFRV := onesobj.OpenFormModal('Отчет', 'SS040001228522', '\\1c\1T\ExtForms\ФРВ.ert');
  
        тот же результат  | 
|||
| 
    15
    
        Ёпрст    
     гуру 
    09.07.13 
            ✎
    14:19 
 | 
         
        А обязательно в дельфях делать ?
  
        в vbs не катит ? Там усё передается  | 
|||
| 
    16
    
        Ёпрст    
     гуру 
    09.07.13 
            ✎
    14:19 
 | 
         
        и, так работает ?
  
        openedFRV := onesobj.OpenForm('Отчет', 123, '\\1c\1T\ExtForms\ФРВ.ert');  | 
|||
| 
    17
    
        burrya    
     09.07.13 
            ✎
    14:20 
 | 
         
        та может и не обязательно, если дело в делфях     
         | 
|||
| 
    18
    
        Serginio1    
     09.07.13 
            ✎
    14:21 
 | 
         
        Можешь прописать в глобальном модуле
  
        функцию Функция ОткрытьВнешнююФорму(ПутьКВнешнемуОтчету,Параметры) Экспорт ОткрытьФормуМодально("Отчет",Параметры,ПутьКВнешнемуОтчету); возврат Параметры КонецФункции  | 
|||
| 
    19
    
        Serginio1    
     09.07.13 
            ✎
    14:23 
 | 
         
        Ты в имя файла времени пропиши, что бы одинаковым не был     
         | 
|||
| 
    20
    
        Ёпрст    
     гуру 
    09.07.13 
            ✎
    14:27 
 | 
         
        сдается, что не тот ты файл открываешь по оле.     
         | 
|||
| 
    21
    
        Ёпрст    
     гуру 
    09.07.13 
            ✎
    14:29 
 | 
         
        Напиши так,
  
        Процедура ПриОткрытии() Предупреждение(Форма.Параметр); КонецПроцедуры Открой сеанс, запущеный по оле и посмотри глазёнками, чего там.. сенас откроешь через шоу1с.экзе  | 
|||
| 
    22
    
        Serginio1    
     09.07.13 
            ✎
    14:56 
 | 
         
        На дельфях и в 1С все параметры передаются по ссылке
  
        можешь попробовать var парам:Olevariant; парам:='SS040001228522'; openedFRV := onesobj.OpenFormModal('Отчет',парам ,'\\1c\1T\ExtForms\ФРВ.ert'); тогда параметр парам передастся по ссылке. Процедура ПриОткрытии() Текст = СоздатьОбъект("Текст"); Текст.ДобавитьСтроку(ТипЗначенияСтр(Форма.Параметр) + " " + Форма.Параметр); Текст.Записать("C:\12345.txt"); Форма.Параметр="Ответ из 1с"; КонецПроцедуры  | 
|||
| 
    23
    
        ЧеловекДуши    
     09.07.13 
            ✎
    15:16 
 | 
         
        (0) А закрывать обработку кто будет?
  
        Так то при открытой обработки отрабатывает уже процедура "ПриПовторномОткрытии" :) Добавь туда код "СтатусВозврата(0)"  | 
|||
| 
    24
    
        ЧеловекДуши    
     09.07.13 
            ✎
    15:16 
 | 
         
        + в Процедуру "ПриОткрытии"     
         | 
|||
| 
    25
    
        dk    
     09.07.13 
            ✎
    15:34 
 | 
         
        про отладчик уже было?     
         | 
|||
| 
    26
    
        KishMish    
     09.07.13 
            ✎
    15:40 
 | 
         
        можно записать значение в файл. и втой обработке его вытащить.     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |