как получить тип значения контекста и имя формы контекста ? (без компонент) #110098


#0 by doloto
как получить тип значения контекста и имя формы контекста ?типа такого:Документ.Счет - - ТипЗначенияСтр(Конт.ТекущийДокумент)+"."+Конт.Вида как все остальное получать.. отчеты, обработки, журналы... ?(без компонент)
#1 by doloto
ау..
#2 by doloto
тут никого нету ?
#3 by doloto
ну ктонибудь поможет или нет ?
#4 by Пудель
Синтакс тебе помощник...
#5 by doloto
а , че , тяжело сказать нормально ?
#6 by doloto
вопрос элементарный если поделить на численность умов посещенных на кубани..так чего же тормозим ?
#7 by Пудель
Это ты тормозишь, а я не считаю нужным за тебя лазать в СинтаксПомощнике.
#8 by doloto
ты такой умный... может по делу скажешь..никогда в жизни не видел чтобы 1Ска по контексту могла сказать какой журнал...
#9 by Frog
А в чем проблема? Если ты правильно контекст передал при открытии формы, док-та и т.д. тогда ты по ТипЗначенияСтр должен получить его тип (название документа, обработки), единственное я не понимаю зачем Конт.ТекущийДокумент, нужен текущий документ, ты что передаешь? ТЗ, список значений или весь документ?
#10 by artbear
Сделай поиск по словам "FAQ" и "~sinor"там есть пример решения твоего вопроса.ЗЫ но с 1С++ проще :)
#11 by artbear
(10+)Точнее, http://www.sinor.ru/~my1c/
#12 by MetaEditor
http://www.sinor.ru/~my1c/knowhow/typecont.html
#13 by doloto
читай внимательно в чем проблема я же написал - БЕЗ КОМПОНЕНТ, на 1С++ любой сможет.. нужно без.. все классно, спасибо, но там только название объекта, а нужно еще его имя, тпа Журнал.Счета или Отчет.ОстаткиТоваров, ак их получать ?
#14 by doloto
+, не различает обработки, он их принимает за отчеты
#15 by Доктор
Предлагаю следующий способ.В глобальном модуле создай таблицу значений (имя пользователя,тип открытой формы).В каждой форме в процедурах ПриОткрытии и ПриПовторномОткрытии добавь ссылку на процедуру глобального модуля, которая находит в таблице строку текущего пользователя и записывает в колонку типа открытой формы имя открываемой пользователем формы.Таким образом, если нужно выяснить, какую форму открыл тот или иной пользователь, это всегда можно сделать.
#16 by doloto
гы.. тогда мне проще из каждой формы вместо контекста предавать текстовое значение типа : "Журнал.Счета" или "Обработка.Пересчет"это не выход... нужно универсальность... типа как но там есть моменты, которые я указал в 13 и 14
#17 by Абыр
А что если использовать , но в зависимости от типа контекста дополнительно определять его вид. Т.е.
#18 by doloto
ага... Журнал.Вид тоже будет работать ? с документами и справочниками у меня проблем нету ,как я писал , и небыло... а вот с остальным - суть веткии с - тоже проблемка
#19 by fez
А ты их никак не различишь. Ибо отчет ничем от обработки не отличается. Даже если написать ОткрытьФорму("Обработка.КарточкаСчета");, то откроется одноименный отчет и наоборот.
#20 by k
Вообще-то в конфигурации можно создать различные одноименные отчет и обработку. через меню "Операции" вызов производится корректно, а через "ОткрытьФорму(...)" у меня всегда открывается отчет.
#21 by Абыр
Различить внутренние отчет или обработку, зная их идентификатор можно так:Метаданные.Отчет("МойОтчет").Выбран вернет 1, если есть отчет с таким именем в конфе, и 0, если нет. Если есть обработка с таким именем, но нет отчета, то вернет 0
#22 by Абыр
Для журнала можно узнать через Метаданные.Документ(ВидДока).Журнал, где ВидДока будет Конт.ТекущийДокумент.ВидТолько вроде для этого нужно, чтобы в журнале строка на доке было спозиционирована
#23 by artbear
я в свое время делал функцию наподобие указанной мной по ссылке.имхо изврат.в 1С++ все просто и понятно :)любые данные о типе, виде и прочая для любого контекста.
#24 by doloto
- согласен что изврат, 1с++ я эту проблему решил за 5 минут... но ТЗ от меня хочет без компонент... - перебор метаданных эт вариант конесно.. но чегото сами переборы меня смущают... но как крайний выход - это оно
#25 by artbear
А где ты видишь перебор-то ?
#26 by Абыр
Да, перебора там никакого нет. Вот если еще кто подскажет, как для отчета или обработки идентификатор получить по контексту формы...
#27 by Джордж
Я делал типа так. В форму журнала/обработки/отчета - ставил на форму на форму нефидимый текст с идентификатором, например Тип и значением типа Обработка.МояОбработка.
#28 by Абыр
Опять же нет универсальности. См.
#29 by doloto
В принцыпе тип получить мона.. а вот вид, может через метаданные - перебирать имена конкретного типа както (Выбор) ?
#30 by doloto
как узнать через метаданные выбран ли конкретный контекст ?
#31 by doloto
хэлпми
#32 by fez
Просто интересно: как обосновывает?
#33 by doloto
в смысле ?
#34 by doloto
суть такова... но неработает...суть : сравнивать внктренние реквизиты журнала - и где совпадают с реквизитомс контекста - тот и журнал.
#35 by fez
В ты писал: "1с++ я эту проблему решил за 5 минут... но ТЗ от меня хочет без компонент".Кто такой ТЗ и как он обосновывает свое нежелание использовать компоненты?
#36 by doloto
техническое заданиезадача это решить штатными средствами
#37 by trdm
Клево, он принял за тебя решение, которое должен принимать ты - что именно использовать.+ ВК - штатное средство, узаконенное 1С.
#38 by doloto
он руководитель проекта и ему лучше знать что и как нужно делать...в двух словах - очень много мелких и крупных точек где должн аработать конфа, и её работоспособность должна независеть от дополнительных модулей как например вк... тоесть с вк и без вк она должна работать
#39 by doloto
+ умничать каждый может... отвечай по сути... не загаживай веткув четко и ясно написано что нужно.... и меня не интересуют высказывания котрые выходят за рамки ....
#40 by Пудель
какая наглость... быть таким тупым и требовать не загаживать ветку... требовательное долото... а ведь в синтакс-помощнике всё написно... я позавчера сам не поленился проверить...долото: иди работать грузчиком.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С