|   |   | 
| 
 | v7: Форма списка справочника, Идентификатор тестового поля для дальнейшего расчета | ☑ | ||
|---|---|---|---|---|
| 0
    
        IgorA100 02.09.21✎ 18:57 | 
        Есть форма списка справочника, в нескольких столбцах нужно выводить реквизит другого связанного справочника с текущим элементом.
 Сейчас в каждом таком столбце прописано: глНайтиКонтрагента(ТекущийЭлемент()).Рек1 глНайтиКонтрагента(ТекущийЭлемент()).Рек2 и т.д. Т.е. идет постоянный поиск, замедляющий работу. А хочется сделать так, что например в одном добавленном текстовом столбце формы списка рассчитать значение ЧегоНашли = глНайтиКонтрагента(ТекущийЭлемент()) а далее уже к нему обращаться типа: ЧегоНашли.Рек1 ЧегоНашли.Рек2 Но что-то не работает такое извращение :( | |||
| 1
    
        Смотрящий 02.09.21✎ 19:05 | 
        (0) В форме списка справочника на первую колонку функцию вешай, во вторую, третью и т.д. колонки пиши переменные, переменные заполняй в функции     | |||
| 2
    
        Злопчинский 02.09.21✎ 19:07 | 
        (0) см. по п.1
 знал бы типовые - давно бы сделал, так как в п.1 написано сделано в Типовой ТиС в форме подбора номенклатуры. | |||
| 3
    
        IgorA100 02.09.21✎ 19:15 | 
        (1) (2) На первой колонке висит план раскраски, пробовал вешать на вторую - не работает :(
 Ладно, попробую совместить с функцией раскраски. Я уже больше 10лет вообще не касался 1С, а тут приспичило, вот уже полгода как потихоньку ковыряю.. | |||
| 4
    
        IgorA100 02.09.21✎ 19:17 | 
        А, все, кажется понял в чем моя ошибка было......
 Попробую - отпишусь. | |||
| 5
    
        IgorA100 02.09.21✎ 19:42 | 
        (1) (2) ОГРОМНОЕ СПАСИБО!
 Все прекрасно работает и не в первой колонке. | |||
| 6
    
        Злопчинский 02.09.21✎ 21:35 | 
        (5) Галктико вздохнула с облегчением...     | |||
| 7
    
        серый КТУЛХУ 02.09.21✎ 21:51 | 
        про кэш-тз с таймаутами с автообновленем по времени в отдельной колонке - никто не подсказывал еще?..
 а, ну и ладненько. | |||
| 8
    
        Злопчинский 03.09.21✎ 00:05 | 
        (7) это про что/как? разверни баян!     | |||
| 9
    
        IgorA100 03.09.21✎ 00:55 | 
        (6) Типа того, но... на очень короткое время...
 Сейчас не могу побороть глюк, когда НЕ видится имя таблицы печатной формы. ЗЫ: Вынести Т = СоздатьОбъект("Таблица"); Т.ИсходнаяТаблица(ИмяТаблицы); в "ПриОткрытии()" не предлагать (там то оно работает) А мне нужно в цикле создавать и отображать новые таблицы. У меня запускается обработка складов по списку, при обработке каждого склада формируется две таблицы, которые нужно отобразить. После формирования таблицы формируется и проводится документ. Так вот, если документ НЕ провелся (ошибка), то появляется глюк с не найденной таблицей. Если провелся - проблем нет. Бред какой-то... (7) Я и не слышал про это. Можно меня "пальцем ткнуть" ? :) | |||
| 10
    
        Злопчинский 03.09.21✎ 01:45 | 
        (9) недавно у меня тоже наткунлся. как починил не помню. и из-за чего это - не помню, забыл, Ёпрст пояснит если только. Плюс порыщи здесь по формум, этот вопрос подымался по-моему отдельнйо веткой как-то, там были расследования.
 попробуй сделай Т глобальной в модуле формы. с работой в процедуре "ПриОткрытии" (и в формексовских ПослеОткрытия и ПриСоздании) есть "глюки/фичи" (особливо когда из этой процедуры надо открыть другую форму, когда эта дочерняя форма открывается модально - там есть определенные траблы, когда писал фейсы для ТСД - приходилось извращаться. . так вот - в ряде случаев - может и в твоем поможет такой маневр: . в ПриОткрытии() сделай мин.необходимые дейстия, и запусти типа Форма.ОбработкаОжидания("ТвояПроцедура",1); далее Процедура ТвояПроцедура() Форма.ОбработкаОжидания("",0); //здесь делаем что нужно //заодно на форме счетчик процесса обновляем | |||
| 11
    
        серый КТУЛХУ 03.09.21✎ 01:52 | 
        (8): переменная модуля - КэшТЗ. и переменная модуля - КэшСЗ (индекс для КэшТЗ).
 в КэшТЗ колоки: ТМЦ, дата+время (в виде числа ГГГГММДДччммсс), и по колонке на каждую расчетную колонку. 1. во первой расчетной колонке функция формулы делает вотето: ТекДатаВремя = Число(Формат(ТекущаяДата(),"ДГГГГММДД")+СтрЗаменить(Прав("00"+ТекущееВремя(),8),":","")); НомСтрКэш = Число(КэшСЗ.Получить(ТекущийЭлемент.ПолныйКод()); Если НомСтрКэш = 0 Тогда КэшТЗ.НоваяСтрока(); КэшТЗ.ТМЦ = ТекущийЭлемент(); КэшТЗ.ДатаВремя = 10000000000000; КэшСЗ.Установить(КэшТЗ.ТМЦ.ПолныйКод(),КэшТЗ.НомерСтроки); Иначе КэшТЗ.ПолучитьСтрокуПоНомеру() КонецЕсли; Если ТекДатаВремя > КэшТЗ.ДатаВремя + ИнтервалОбновленияСек Тогда // рассчитать все расчетные колонки КэшТЗ.<РасчетныеКолонки> КэшТЗ.ДатаВремя = Число(Формат(ТекущаяДата(),"ДГГГГММДД")+СтрЗаменить(Прав("00"+ТекущееВремя(),8),":","")); КонецЕсли; и тупо дернуть и вернуть что нужно показывать в первой колонке а в остальных колонках функция формулы делает топо: Возврат КэшТЗ.<ЧоТамНадоДляЭтойКолонки> | |||
| 12
    
        серый КТУЛХУ 03.09.21✎ 01:53 | 
        Иначе КэшТЗ.ПолучитьСтрокуПоНомеру(НомСтрКэш) КонецЕсли; //конечно же прдн     | |||
| 13
    
        Злопчинский 03.09.21✎ 01:55 | 
        (11) а, то есть для расчетных колонок просто кэширует с таймаутом?     | |||
| 14
    
        серый КТУЛХУ 03.09.21✎ 02:13 | 
        (13): именно.     | |||
| 15
    
        серый КТУЛХУ 03.09.21✎ 02:21 | 
        (13): я там у себя еще переменную модуля ТекНомерСтрокиПроверкиКэша добавлял, в 1 ее инициализировал, и по обработке ожидания: локальный счетчик проверок инициализировать в нуль, и цикл пока локальный счетчик проверок не превысит лимит: ТекНомерСтрокиПроверкиКэша=ТекНомерСтрокиПроверкиКэша+1, КэшТЗ.ПолучитьСтрокуПоНомеру(ТекНомерСтрокиПроверкиКэша), проверить таймаут и если надо - перерассчитать ...
 эта беда отрабатывает только при ездействии и потихоньку перелопачивает и обновляет кэш.. там даже совсем маленький лимит строк для пересчета (до десяти) на таймауте 2-3 секунды - совершенно незаметно и эффективно пересчитывает. мек было тогда не жалко сервер нашгружать, да... | |||
| 16
    
        IgorA100 03.09.21✎ 10:37 | 
        (10) Так у меня вообще процедура формирования таблиц по кнопке с формы запускается. Без модальных режимов, без всякого навороченного. Т.е. чистая классика.
 Переменную пробовал делать и глобальной для модуля и локальной для процедуры - пофиг. Пробовал даже такой изврат: Т = ПолучитьТаблицу("ОстаткиПоСкладу"); Функция ПолучитьТаблицу(ИмяТаблицы) Перем Т, ТТ; Т = СоздатьОбъект("Таблица"); Т.ИсходнаяТаблица(ИмяТаблицы); Попытка Т.ИсходнаяТаблица(ИмяТаблицы); Возврат Т; Исключение ТТ = СоздатьОбъект("Таблица"); ТТ.ИсходнаяТаблица(ИмяТаблицы); Возврат ТТ; КонецПопытки; КонецФункции // ПолучитьТаблицу(ИмяТаблицы) Не помогает. Еще раз алгоритм: Открывается форма, далее заполняются склады для обработки и дата на форме обработки. В цикле перебираем список складов и запускаем процедуру анализа складов. В начале этой процедуре выполняется Т = СоздатьОбъект("Таблица"); Т.ИсходнаяТаблица(ИмяТаблицы); Т.е. для каждого склада нужна своя таблица. Дале в процедуре идет цикл анализа номенклатуры. После цикла анализа номенклатуры запускается процедура формирования и проведения документа. Так вот если документ проводится - проблем нет и при следующем цикла таблица инициализируется, а если документ не проводится - то ИНОГДА!!! возникает ошибка с ненайденной таблицей. | |||
| 17
    
        IgorA100 03.09.21✎ 10:39 | 
        (16) Т = ПолучитьТаблицу("ОстаткиПоСкладу"); Конечно так =>: Табл = ПолучитьТаблицу("ОстаткиПоСкладу");     | |||
| 18
    
        IgorA100 03.09.21✎ 14:01 | 
        Что более интересно:
 1. Если после ошибки проведения провести документ, то проблем нет. 2. Проведение доков вообще убрал в отдельную процедуру, т.е. если раньше формировался документ, записывался и проводился в одном месте, то сейчас формирую список доков, затем вызываю другую процедуру в которой проводу доки - глюк остается. 3. Если я по очереди обрабатываю склады (руками на форме выбираю по одному, а не по несколько), то проблемы нет. Т.е. физическое жмаканье по кнопе формы с вызовом функции или вызов той-же процедуры из цикла модуля формы имеют, в данном случае, разное поведение! Ощущение, что после ошибки проведения что-то не то происходит с формой обработки. Форма.Обновить() не помогает. Бред какой-то.... | |||
| 19
    
        Mikeware 03.09.21✎ 14:11 | 
        (18) ну тогда "что ж показывайте своего друга"©
 выкладывай на какую-нибудь файлопомойку | |||
| 20
    
        IgorA100 03.09.21✎ 14:31 | 
        (19) В обработке "черт ногу сломит" :) Она под комплексную с изменением. Т.е. если только просто код посмотреть, запустить на другой конфе ее будет не реально.
 Я попробую почистить ее немного и тогда уж выложить. | |||
| 21
    
        IgorA100 03.09.21✎ 14:38 | 
        (19) Хотя, блин, у меня же еще всякие классы (мульен..) подгружаются в конфе. Это мне уже тогда надо новую конфу делать со всеми классами и т.п....     | |||
| 22
    
        IgorA100 03.09.21✎ 15:22 | 
        (19) Сделал обработку без всякого мусора, которая глючит и на типовой комплексной.
 https://disk.yandex.ru/d/TuZB_872HOh69w В процедуре Сформировать() нужно указать коды двух любых фирм имеющихся в конфигурации. Остальное все должно быть понятно. | |||
| 23
    
        Злопчинский 03.09.21✎ 16:19 | 
        (22) на ТиСе работать должна?     | |||
| 24
    
        IgorA100 03.09.21✎ 16:25 | 
        (23) Если там есть ф-ция "глЗаполнитьШапку", то будет.     | |||
| 25
    
        Злопчинский 03.09.21✎ 16:29 | 
        (22) Трабл воспроизводится     | |||
| 26
    
        IgorA100 03.09.21✎ 16:30 | 
        (25) Че, правда?????????
 Я уже и запрос выкинул, и промежуточную процедуру. Все выкинул, все равно глючит... Т.е. это не у меня маразм произошел? | |||
| 27
    
        IgorA100 03.09.21✎ 16:32 | 
        Вот совсем минимальный код, который на любой платформе запустится
 https://disk.yandex.ru/d/3xYK0xpOuri5dg Ну не может его так колбасить... Не может.... | |||
| 28
    
        Злопчинский 03.09.21✎ 16:36 | 
        та работает
 Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("ОстаткиПоСкладу"); Для ъ=1 По О.РазмерСписка() Цикл ТекОбъект = О.ПолучитьЗначение(ъ); ОстаткиПоСкладу(ТекОбъект); КонецЦикла; | |||
| 29
    
        Злопчинский 03.09.21✎ 16:37 | 
        если впихнуть внутрь цикла - ломается     | |||
| 30
    
        IgorA100 03.09.21✎ 16:38 | 
        (28) Так то да.
 НО, мне внутри цикла нужна новая таблица, а в этом случае все просто перезапишется в старой.... | |||
| 31
    
        IgorA100 03.09.21✎ 16:40 | 
        (29) Да блин, с какого перепуга ломается все если док не провелся.... неужели это старинный глюк про который особо никто и не знал...
 И если в цикле ломается создание новой таблицы, то как мне в цикле получать новые таблицы? | |||
| 32
    
        Злопчинский 03.09.21✎ 16:45 | 
        почему - вот хз...
 как обойти - это понятно. | |||
| 33
    
        Злопчинский 03.09.21✎ 16:45 | 
        но осадочек остался...     | |||
| 34
    
        Злопчинский 03.09.21✎ 16:46 | 
        вынеси макет во внешний моксель, типа так
 Таб.ИсходнаяТаблица(КаталогИБ()+"таблица1.mxl"); . благодарить можно лобызанием ступней... ;-) | |||
| 35
    
        Злопчинский 03.09.21✎ 16:48 | 
        (31) второй вариант обхода - сделай Таб.ИсходнаяТаблица(ТутВстроенныйМакет); перед циклом, будет все выводится в одну ТАб.     | |||
| 36
    
        IgorA100 03.09.21✎ 16:50 | 
        (34) Попробую с внешним макетом. 
 (35) В одной таблице - не вариант... Я еще попробовал перед циклом заранее наклепать пустых таблиц в СЗ, а затем в цикле из СЗ их получать, работает.. Но все это какие-то извращения.... | |||
| 37
    
        IgorA100 03.09.21✎ 20:23 | 
        Кстати, еще заметил, что если ВКЛЮЧЕНО комментирование действий и ОТКРЫТО окно с комментариями, то глюк НЕ проявляется!     | |||
| 38
    
        Злопчинский 03.09.21✎ 21:10 | 
        (37) где-то что-то внутрях ломается, теряется контекст какой-то... Ёпрст нужен, он все знает     | |||
| 39
    
        Смотрящий 03.09.21✎ 21:24 | 
        (25) Не воспроизводится     | |||
| 40
    
        Смотрящий 03.09.21✎ 21:36 | 
        Аоспроизводится (     | |||
| 41
    
        Злопчинский 03.09.21✎ 22:44 | 
        (37) кста, интересно.
 а если запуститься без дополнительных ВК...? | |||
| 42
    
        IgorA100 03.09.21✎ 23:12 | 
        (41) Так а в чистой комплексной и так вроде ничего из ВК не грузится, разве что может 1с++... 
 (38) Угу. И не хочется выносить mxl и не хочется сразу создавать массив объектов таблиц, т.к. в реальности у меня две таблицы читаются и для второй я заранее не знаю сколько таблиц будет. Полсотни создавать с запасов - как-то коряво это... Плохо, что нет возможности скопировать сам объект. Вот можно было бы так: Создал таблицу Таб, использовал метод ИсходнаяТаблица и написал бы Таб1 = Таб, а потом Таб1 бы и заполнял, потом Таб2 = Таб. Но фига.... | |||
| 43
    
        IgorA100 03.09.21✎ 23:31 | 
        ААааааа.....
 ЕСТЬ РЕШЕНИЕ!!! После открытия создаем объект "Сервис" Далее в цикла просто вызываем процедуру через сервис: Сервис.ВыполнитьПроцедуру(глВзятьКонтекст(Контекст),"ОстаткиПоСкладу",ТекОбъект); Вуаля.... Все работает!!! Глюк не воспроизводится, контекст не теряется! | |||
| 44
    
        IgorA100 03.09.21✎ 23:50 | 
        (43) Только метод "ВыполнитьПроцедуру" не понимает передачу одного параметра в выполняемую процедуру, нужно даже при одном параметре передавать список из этого одного параметра, но это фигня, пара лишних строк кода...     | |||
| 45
    
        Злопчинский 04.09.21✎ 00:08 | 
        (42) "И не хочется выносить mxl"
 - а по мне это как раз самое правильное решение (безотносительно к данной проблеме) | |||
| 46
    
        Злопчинский 04.09.21✎ 00:10 | 
        (42) "Плохо, что нет возможности скопировать сам объект.
 Вот можно было бы так: Создал таблицу Таб, использовал метод ИсходнаяТаблица и написал бы Таб1 = Таб, а потом Таб1 бы и заполнял, потом Таб2 = Таб. Но фига...." чето мутно как-то . опиши попроще и доступнее что ты хочешь скопировать имеем один макет. и что мы хотим сделать? | |||
| 47
    
        Злопчинский 04.09.21✎ 00:11 | 
        (43) совершенно излишне. достаточно из внешнего макета загрузить...     | |||
| 48
    
        IgorA100 04.09.21✎ 00:32 | 
        (46)
 Таб = СоздатьОбъект("Таблица"); - я создал объект. Таб.ИсходнаяТаблица("ОстаткиПоСкладу"); - модифицировал объект методом. В итоге у меня есть модифицированный объект "Таб". Я хочу его "размножить". Я пишу: Таб1 = Таб. Таб2 = Таб. По идее у меня должно быть три объекта, но у меня по факту 1 объект "Таб" и + две ссылки на него "Таб1" и "Таб2" Далее - Я чего-то делаю с Таб1 и с Таб2.... Далее: Таб1.Показать() - должен отобразиться объект "Таб1" Таб2.Показать() - должен отобразиться объект "Таб2" В реальности же отобразится "Таб" Это как в ООП. А тут похоже такого нет... (47) Как раз не излишество. Если я захочу перетащить обработку в другое место, мне нужно еще и про макет не забыть, а если пройдет пару лет и я про макет забуду и он удалится ? Или мне макет изменить надо через год-два-три и я буду вспоминать, почему-же у меня изменения таблицы из формы никак не повлияло на результат, или, если таблицы в форме вообще не будет, мне надо вспоминать, почему так получилось и анализировать код. А если таблиц 3-5 ? Не удобно, это уже как совсем "крайний вариант"... | |||
| 49
    
        IgorA100 04.09.21✎ 00:35 | 
        (45) Ну тут может дело привычки, не знаю... Как по мне, помнить десятки макетов где лежат и к чему относятся - лишние затраты мозговой деятельности :) Можно именам макетов давать имена обработок + суффиксы и хранить всегда рядом друг с другом, но к этому нужно привыкать...
 Для меня все хранить в одном файле - привычней. | |||
| 50
    
        Злопчинский 04.09.21✎ 00:44 | 
        (49) "Для меня все хранить в одном файле - привычней."
 в контексте проблемы: в макете храни блобом сам макет при запуске обработки - смотрим есть ли внешний макет? если нет - распаковываем из себя из макета-блоба внешний макет и кладем его во внешний файл. ;-) . так например продвинутые любят 1С++, формекс ипрочие ВК втихую устанавливать из-под себя ;-) | |||
| 51
    
        IgorA100 04.09.21✎ 00:51 | 
        (50) УУуу.... какой хитрый :) В общем-то да, такой вариант имеет право на жизнь, но! Или править нужно два макета, или перед/после правки встроенного, нужно не забыть "прибить" внешний ;)     | |||
| 52
    
        Злопчинский 04.09.21✎ 00:53 | 
        (51) фигня! зато сколько возможностей! ;-)     | |||
| 53
    
        IgorA100 04.09.21✎ 01:00 | 
        (52) А в чем, глобально, преимущество? Кроме избегания глюкавости?     | |||
| 54
    
        Ёпрст гуру 04.09.21✎ 11:36 | 
        (27) 
 //Перем Таб; Эффект не воспроизводится. И не зависит , провелся документ или нет. | |||
| 55
    
        Злопчинский 04.09.21✎ 11:38 | 
        (54) а почему если раскомментарить - ломается? что не так?     | |||
| 56
    
        IgorA100 04.09.21✎ 12:36 | 
        (54) Только что проверил - у меня воспроизводится и с закомментированной переменной.
 Комментирование действий выключено7 со включенным комментированием и открытым окном комментариев глюк не воспроизводится. | |||
| 57
    
        Злопчинский 04.09.21✎ 12:53 | 
        (56) аналогично.
 Если закомментарить переменную модуля - все равно воспроизводится. | |||
| 58
    
        Злопчинский 04.09.21✎ 12:54 | 
        отключил загрузку всех ВК - не помогло...     | |||
| 59
    
        IgorA100 04.09.21✎ 12:57 | 
        (58) Ёпрст - шаман, и у него шаманский компьютер :)
 Ждем его для продолжения воспроизведений бага | |||
| 60
    
        victuan1 06.09.21✎ 06:44 | 
        (31) Да, это старинный глюк платформы - теряется контекст таблиц текущей формы, если вызывать другую форму, в которой используется Таблица с отображением совместно с диалогом (не обязательно в Режиме ввода данных).
 Именно такая форма с такой таблицей открывается при трассировке проведения документа в типовых конфах (встроенная обработка Трассировка). Вот модифицировал пример - https://disk.yandex.ru/d/qOcnhgLbEWnSUg Вместо проведения дока сделал просто вызов внешней обработки Тест.ert, в которой используется такая Таблица - она всё ломает. Можно использовать на любой конфе, в т.ч. нетиповой и пустой. Процедура СформироватьПеремещение() Перем Путь,Имя; РасположениеФайла(Путь,Имя); ОткрытьФорму("Отчет",,Путь+"Тест.ert"); //Док = СоздатьОбъект("Документ.ПеремещениеТМЦ"); //Док.Новый(); //Док.ДатаДок = ВыбКонПериода; //Док.УстановитьВремя(23,59,59); //Док.УстановитьНовыйНомер(); //Док.Записать(); //Док.Провести(); КонецПроцедуры // СформироватьПеремещение(ТаблицаДвижений, Запрос.Склад) | |||
| 61
    
        Злопчинский 06.09.21✎ 07:41 | 
        (60) "Именно такая форма с такой таблицей открывается при трассировке проведения документа в типовых конфах (встроенная обработка Трассировка)."
 - у мен ятрассировка не включается, инфо о непроведении документа а табло выводится. все равно ломается. а в (39) "Кстати, еще заметил, что если ВКЛЮЧЕНО комментирование действий и ОТКРЫТО окно с комментариями, то глюк НЕ проявляется!" . т.е. как-то все наоборот? если трассировка включена - то все работает... | |||
| 62
    
        Злопчинский 06.09.21✎ 07:46 | 
        (60) проверил по мод.примеру - да, ломается.     | |||
| 63
    
        Злопчинский 06.09.21✎ 07:47 | 
        Я натыкался на такую ошибку когда никаких сообщений/манипуляцийкак вмо.примере не использовалось...     | |||
| 64
    
        Ёпрст гуру 06.09.21✎ 08:51 | 
        (60) 
 Да уж. Таб.ИсходнаяТаблица("ОстаткиПоСкладу",РасположениеФайла()); //Чудо! Глюкак нет..правда, формекс нужен. | |||
| 65
    
        Злопчинский 06.09.21✎ 12:14 | 
        (64) млин, застрелиться и не жить!
 . Спасибо тебе, премудрый Ёпрст, что не оставляешь нас, сирых и убогих клюшечников, своей милостью! Будем молиться за твое здравие! | |||
| 66
    
        IgorA100 06.09.21✎ 13:49 | 
        (64) Красивое решение! И проще, чем мое предложенное тут (43) с использованием запуска процедуры через "Сервис"
 Действительно работает, СПАСИБО! Блин, читал доку по Формексу, но как-то не обратил внимания на доп. параметр "Путь", который указывает где искать таблицу. (61) Это видно как-то связано с тем, что форма уже открыта! Т.е. ломается при попытке открытия другой формы, IMHO. Могу быть и не прав. | |||
| 67
    
        IgorA100 06.09.21✎ 13:50 | 
        (65) Поддерживаю :)     | |||
| 68
    
        IgorA100 07.09.21✎ 15:02 | 
        Да, с контекстом наблюдается "задница" и в других случаях...
 Например, из документа вызывается глобальная процедура (передать туда документ конечно можно, но нужно перелопатить ХХ вызовов процедуры) и из этой процедуры я хочу получить контекст документа, я пишу: К = глВзятьКонтекст(Контекст); И в итоге а "К" пустота (а ИНОГДА, так получается получить контекст), при этом, если я в отладчике выполняю глВзятьКонтекст(Контекст), то контекст без проблем получаю. Во как... | |||
| 69
    
        Злопчинский 07.09.21✎ 18:23 | 
        (68) ну, с этимм не разу не сталкивался, вроде всегда контекст брало норм.
 К = глВзятьКонтекст(Контекст); - надо делать до передачи "К" в процедуру | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |