|   |   | 
| 
 | v7: Контекст | ☑ | ||
|---|---|---|---|---|
| 0
    
        Широкий 18.12.12✎ 18:52 | 
        Из документа открываю внешнюю обработку, при этом передается контекст документа.
  Далее процедуры в самое обработке - изменяю документ. Процедура Загрузить() КонтДокумента=Форма.Параметр.Получить("Контекст"); КонтДокумента.УдалитьСтроки(); КонецПроцедуры Процедура ПриОткрытии() КонтДокумента=Форма.Параметр.Получить("Контекст"); КонтДокумента.УдалитьСтроки(); КонецПроцедуры В "ПриОткрытии" отрабатывает нормально, а вот в "Загрузить" вываливает сообщение "Нет возможности удалить строку!" Почему? | |||
| 1
    
        zak555 18.12.12✎ 18:53 | 
        ТипЗначениеяСтр(КонтДокумента) в Загрузить что ?     | |||
| 2
    
        Широкий 18.12.12✎ 18:56 | 
        ТипЗначенияСтр(КонтДокумента)  = "ГрупповойКонтекст"
  ТипЗначения(КонтДокумента) = 100 и там и там | |||
| 3
    
        КонецЦикла 18.12.12✎ 19:10 | 
        Модально открывай
  счас убегаю, некогда думоть | |||
| 4
    
        zak555 18.12.12✎ 19:23 | 
        Объяви переменную КонтДокумента как глобальную модуля обработки и убери из процедуры Загрузить()
  КонтДокумента=Форма.Параметр.Получить("Контекст"); | |||
| 5
    
        Широкий 18.12.12✎ 19:31 | 
        (4) Попробовал - нет     | |||
| 6
    
        zak555 18.12.12✎ 19:35 | 
        так не работает :
  Перем КонтДокумента; Процедура Загрузить() КонтДокумента.УдалитьСтроки(); КонецПроцедуры Процедура ПриОткрытии() КонтДокумента=Форма.Параметр.Получить("Контекст"); КонтДокумента.УдалитьСтроки(); КонецПроцедуры | |||
| 7
    
        Широкий 18.12.12✎ 19:38 | 
        (6) Нет     | |||
| 8
    
        zak555 18.12.12✎ 19:48 | 
        а так ?
  Перем КонтДокумента; Процедура Загрузить() КонтДокумента.УдалитьСтроки(); КонецПроцедуры Процедура ПриОткрытии() КонтДокумента=Форма.Параметр.Получить("Контекст"); КонецПроцедуры | |||
| 9
    
        Широкий 18.12.12✎ 20:02 | 
        Тоже самое     | |||
| 10
    
        zak555 18.12.12✎ 20:03 | 
        там какая была хитрость с контекстом     | |||
| 11
    
        SED 18.12.12✎ 20:04 | 
        типа чтото жестко Док= СоздатьОбъект("Ч");
  Пометить на удаление, или что в системе проставлено непосредственное удаление??? | |||
| 12
    
        zak555 18.12.12✎ 20:10 | 
        (11) я так понял ему нужно интерактивно что-то добавить и удалить из табличной части     | |||
| 13
    
        zak555 18.12.12✎ 20:10 | 
        (0) этот документ записан ?     | |||
| 14
    
        Широкий 18.12.12✎ 20:11 | 
        (12) Да
  (13) Да | |||
| 15
    
        Стрелок 18.12.12✎ 20:20 | 
        а не меняет ли вид параметр формы где то внутри? автор скажи ка что в отладчике пишет на КонтДокумента.Вид()?
  И ещё покажи как форпму обработки открываешь? Сдаётся мне я помню эту фичу - нельзя напрямую контекст передавать в некоторых случаях. Именнот для этого в типовых есть глобальная функция глВзятьКонтекст | |||
| 16
    
        Vovik 18.12.12✎ 20:21 | 
        Тогда реквизит ТекДок
  Док=создатьОбъект("Документ"); Док.Найти(ТекДок); Док.УдалитьСтроки(); | |||
| 17
    
        Гинзбург Олег Валнти 18.12.12✎ 20:22 | 
        при открытии формы не обязательно передача контекста, и так все переменные, форма и контекст будут доступны - фича стара     | |||
| 18
    
        КонецЦикла 18.12.12✎ 20:23 | 
        (16) Док может быть не записан :)
  (0) Так пробовал модально открывать? Если такой вариант устроит, то он работать будет | |||
| 19
    
        ADirks 18.12.12✎ 20:26 | 
        (0) FormEx или 1С++ не пробовал загрузить?     | |||
| 20
    
        Широкий 18.12.12✎ 20:27 | 
        (15) Нет,.. к реквизитам шапки документа обращение проходит..
  А вот к табл.части я почему-то могу обратиться только в "ПриОткрытии" обработки | |||
| 21
    
        КонецЦикла 18.12.12✎ 20:27 | 
        (19) Да, обычно, кстати тожы :)     | |||
| 22
    
        Широкий 18.12.12✎ 20:28 | 
        (20) Конфа ТиС - штатное открытие внешней печатной формы
  (19) Пытаюсь пока штатными методами сделать. | |||
| 23
    
        Стрелок 18.12.12✎ 20:29 | 
        (20) попробуй через глобальник получить контекст вот так
  // Функция возвращает переданное значение параметра (для получения Контекста) Функция глВзятьКонтекст(Конт) Экспорт Возврат Конт; КонецФункции Парам=глВзятьКонтекст(Контекст); ОткрытьФорму("Обработка.Моя",Парам); | |||
| 24
    
        КонецЦикла 18.12.12✎ 20:29 | 
        Доктор, почему меня все игнорируют...
  (23) Не выйдет | |||
| 25
    
        Широкий 18.12.12✎ 20:30 | 
        (23) В типовых так и реализован вызов обработок (я ипользую типовой механизм)     | |||
| 26
    
        Стрелок 18.12.12✎ 20:30 | 
        вот помню что я задавал когда то давно этот вопрос
  Для чего нужна промежуточная функция "глВзятьКонтекст()"? | |||
| 27
    
        Гинзбург Олег Валнти 18.12.12✎ 20:30 | 
        в тисе есть зачудительная функция типа "можнооткрыть" или как то так     | |||
| 30
    
        ADirks 18.12.12✎ 20:33 | 
        атож!!!     | |||
| 31
    
        Широкий 18.12.12✎ 20:34 | 
        (18) Модально кстати работает.. неожиданно     | |||
| 32
    
        Стрелок 18.12.12✎ 20:34 | 
        ёмко     | |||
| 33
    
        Широкий 18.12.12✎ 20:34 | 
        +31 Но конфу править уж очень не хочется     | |||
| 34
    
        Гинзбург Олег Валнти 18.12.12✎ 20:34 | 
        еще пит писовал как к тч не записанного добираться     | |||
| 35
    
        Стрелок 18.12.12✎ 20:34 | 
        (31) а чего неожиданного? я подозревая что теряется контекст то. вызова теряется контекст     | |||
| 36
    
        volfy 18.12.12✎ 20:39 | 
        (1) зак я смотрю ты тут один из самых бошковитых)) какой у тебя стаж ?)     | |||
| 37
    
        КонецЦикла 18.12.12✎ 20:40 | 
        (31) :)     | |||
| 38
    
        ADirks 18.12.12✎ 20:41 | 
        модератор, почто удалил называние меня дураком? я ж ведь согласился.     | |||
| 39
    
        КонецЦикла 18.12.12✎ 20:42 | 
        (38) А я удалил ругательство
  Некрасиво | |||
| 40
    
        Гинзбург Олег Валнти 18.12.12✎ 20:43 | 
        (39) ну бульбаши тут еще будут осуждать красоту русского языка ))     | |||
| 41
    
        ADirks 18.12.12✎ 20:43 | 
        (39) ну и что? зато прямо и честно.     | |||
| 42
    
        Гинзбург Олег Валнти 18.12.12✎ 20:44 | 
        (41) у вас там реально сгибень под 40 и далее ?     | |||
| 43
    
        КонецЦикла 18.12.12✎ 20:45 | 
        (40) Я русский
  Но это неважно | |||
| 44
    
        Гинзбург Олег Валнти 18.12.12✎ 20:46 | 
        (43) нифига, ты это мисте расскажи, что не из бульбашии ? ))     | |||
| 45
    
        ADirks 18.12.12✎ 20:47 | 
        (42) у меня щас за бортом -35, но местами было и -50     | |||
| 46
    
        Широкий 18.12.12✎ 20:47 | 
        Финт ушами .. е-мое
  Открываю обработку-пустышку а там вызов рабоче обработки но модально - и конфу править не надо.. Процедура ПриОткрытии() Параметры=СоздатьОбъект("СписокЗначений"); Параметры.ДобавитьЗначение(Форма.Параметр.Получить("Контекст"), "Контекст"); ОткрытьФормуМодально("Отчет",Параметры,КаталогИБ()+"ExtForms\PrnForms\ОбработкаТаблЧасти.ert"); СтатусВозврата(0); Возврат; КонецПроцедуры | |||
| 47
    
        Гинзбург Олег Валнти 18.12.12✎ 20:48 | 
        (45) как вы там существуете, у нас 27 - кажется небесная ось уже налетела не ожидая 21     | |||
| 48
    
        Гинзбург Олег Валнти 18.12.12✎ 20:50 | 
        (46) еще позырь на всяк случай (27) название процедуры наверняка переврал правдо     | |||
| 49
    
        ADirks 18.12.12✎ 20:50 | 
        (45) да нормально, одеваешься потеплей, и все дела     | |||
| 50
    
        Гинзбург Олег Валнти 18.12.12✎ 20:51 | 
        (49) главное исподнее не забыть     | |||
| 51
    
        КонецЦикла 18.12.12✎ 20:52 | 
        (46) Молодец     | |||
| 52
    
        Злопчинский 18.12.12✎ 22:12 | 
        как-то смутно.. если формекс загружен по идее все должно получиться с ТЧ безо всяких модалей?     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |