|
1С:Предприятие
:: 1С:Предприятие 7.7 и ранее
|
|
| ||
TDV 14.05.20 - 16:40 | Возможно ли устанавливать разные элементы (флажок, выбор и тому подобное) программно на форму, если возможно то можно увидеть пример? | ||
АЛьФ 1 - 14.05.20 - 16:47 | |||
Злопчинский 2 - 14.05.20 - 19:13 | (1) а можно как-то в ТЧ документа и списках форм журналов/справочников -
1. менять программно положение колонок..? 2. задавать программно ширину колонок? | ||
Mikeware 3 - 14.05.20 - 20:03 | Динамическое добавление флажков "Упр" и "бух" на форму документа, если справочником разрешено использование этих флажков в документ такого вида... Ну, как в документах УПП
(сами реквизиты - общие с отбором, ДокБух и ДокУпр) И динамическое добавления флажка разрешеиня редактирования, если пользователю разрешено разрешать редактирование:-) В перехватчике ////====================================================================== Функция Событие_ПослеОткрытия() Экспорт Если ТипОбъекта="Документ" Тогда ТекДок = КонтФормы.ТекущийДокумент(); ДобавитьФлажкиУчета(КонтФормы); ДобавитьФлажокРазрешения(КонтФормы); ДобавитьФлажокЗапрещения(КонтФормы); ИначеЕсли ТипОбъекта="Справочник" Тогда ТекДок=КонтФормы.ТекущийЭлемент(); КонецЕсли; Если ЗакладкиСканов.ЗакладкиСканов_РазрешеныСканыОбъекта(ПолныйТипОбъекта)=1 Тогда ЗакладкиСканов.ЗакладкиСканов_СоздатьЗакладку(КонтФормы); КонецЕсли; Если ТипОбъекта="Документ" Тогда КонтФормы.Форма.Обновить();//!! ФормаРасш.СбросМодифицированности(); КонецЕсли; Возврат Перехватчик.ВыполнитьОригинальноеСобытиеГК(КонтФормы,"ПослеОткрытия"); КонецФункции //====================================================================== Процедура ДобавитьФлажкиУчета(Конт)  //ФормаРасш = СоздатьОбъект("РасширениеФормы");  //ФормаРасш.УстановитьФорму(КонтФормы.Форма); ВидДокумента=Конт.Вид(); СпрПравил=СоздатьОбъект("Справочник.ПравилаБухУпр"); Если СпрПравил.НайтиПоНаименованию(ВидДокумента,0,1)=0 Тогда// Нет правила для объекта Возврат; КонецЕсли; Попытка Флажок = ФормаРасш.ПолучитьАтрибут("КДИР"); СтильФлажка=Флажок.Стиль; Исключение СтильФлажка=1073889283; КонецПопытки; ШиринаФ=ФормаРасш.Ширина; ВысотаФ=ФормаРасш.Высота; Попытка АттрДатаДок=ФормаРасш.ПолучитьАтрибут("ДатаДок"); ЛевК_АДД=0; ВерхК_АДД=0; ШирК_АДД=0; ВысК_АДД=0; СлойДатаДок=АттрДатаДок.Слой; АттрДатаДок.ПолучитьКоординаты(ЛевК_АДД, ВерхК_АДД, ШирК_АДД, ВысК_АДД); ЛевоК=ЛевК_АДД+ШирК_АДД+2; ВерхК=?(ВерхК_АДД>0,ВерхК_АДД,-ВерхК_АДД); ШиринаК=Цел(ШирК_АДД/2); ВысотаК=ВысК_АДД; Исключение ШиринаК=20; ЛевоК=2; ВерхК=2; ВысотаК=10; СлойДатаДок="Основной"; КонецПопытки; ф_флУпр_Идентификатор="флДокУпрУчет"; ф_флУпр=ФормаРасш.ДобавитьАтрибут("флДокУпрУчет",12,"Число"); ф_флУпр.Слой=СлойДатаДок; ф_флУпр.УстановитьКоординаты(ЛевоК, ВерхК, ШиринаК, ВысотаК); ф_флУпр.Формула="ПриНажатииФлагаУчета"+"(Контекст,"""+ф_флУпр.Идентификатор+""",""ДокУпр"")"; ф_флУпр.Заголовок="Упр"; ф_флУпр.Подсказка="Документ по упручету"; ф_флУпр.Стиль=СтильФлажка; Зн=Конт.ПолучитьАтрибут("ДокУпр"); ф_флУпр.Значение=Зн; ф_флБух_Идентификатор="флДокБухУчет"; ф_флБух=ФормаРасш.ДобавитьАтрибут("флДокБухУчет",12,"Число"); ф_флБух.Слой=СлойДатаДок; ЛевоК=ЛевоК+2+ШиринаК; ф_флБух.УстановитьКоординаты(ЛевоК, ВерхК, ШиринаК, ВысотаК); ф_флБух.Формула="ПриНажатииФлагаУчета"+"(Контекст,"""+ф_флБух.Идентификатор+""",""ДокБух"")"; ф_флБух.Заголовок="Бух"; ф_флБух.Подсказка="Документ по бухучету"; ф_флБух.Стиль=СтильФлажка; зн=Конт.ПолучитьАтрибут("ДокБух"); ф_флБух.Значение=Зн; КонтФормы.Форма.ИспользоватьСлой(СлойДатаДок,1); КонецПроцедуры //====================================================================== Процедура ДобавитьФлажокРазрешения(Конт) ВидДокумента=Конт.Вид(); СпрПравил=СоздатьОбъект("Справочник.ПравилаЗапрета"); Если СпрПравил.НайтиПоНаименованию(ВидДокумента,0,1)=0 Тогда// Нет правила для объекта Возврат; КонецЕсли; Если СпрПравил.ПометкаУдаления()=1 Тогда Возврат; КонецЕсли; Если СпрПравил.Запрещать=1 Тогда Возврат; КонецЕсли; Попытка Флажок = ФормаРасш.ПолучитьАтрибут("КДИР"); СтильФлажка=Флажок.Стиль; Исключение СтильФлажка=1073889283; КонецПопытки; ШиринаФ=ФормаРасш.Ширина; ВысотаФ=ФормаРасш.Высота; Попытка АттрДатаДок=ФормаРасш.ПолучитьАтрибут("ДатаДок"); ЛевК_АДД=0; ВерхК_АДД=0; ШирК_АДД=0; ВысК_АДД=0; СлойДатаДок=АттрДатаДок.Слой; АттрДатаДок.ПолучитьКоординаты(ЛевК_АДД, ВерхК_АДД, ШирК_АДД, ВысК_АДД); ЛевоК=ЛевК_АДД+ШирК_АДД+2; ВерхК=?(ВерхК_АДД>0,ВерхК_АДД,-ВерхК_АДД); ШиринаК=Цел(ШирК_АДД*2); ВысотаК=ВысК_АДД; Исключение ШиринаК=40; ЛевоК=2; ВерхК=2; ВысотаК=10; СлойДатаДок="Основной"; КонецПопытки; ф_флУпр_Идентификатор="флИзмененияРазрешены"; ф_флУпр=ФормаРасш.ДобавитьАтрибут("флИзмененияРазрешены",12,"Число"); ф_флУпр.Слой=СлойДатаДок; ф_флУпр.УстановитьКоординаты(ЛевоК, ВерхК+ВысотаК*1.2, ШиринаК, ВысотаК); ф_флУпр.Формула="ПриНажатииФлагаУчета"+"(Контекст,"""+ф_флУпр.Идентификатор+""",""ИзмененияРазрешены"")"; ф_флУпр.Заголовок="Изменения разрешены"; ф_флУпр.Подсказка="Изменения документа разрешены"; ф_флУпр.Стиль=СтильФлажка; Зн=Конт.ПолучитьАтрибут("ИзмененияРазрешены"); ф_флУпр.Значение=Зн; ф_флУпр.Доступность=0; СтрокаРолей=СокрЛП(СпрПравил.РазрешающиеРоли); сз=глРазложить(СтрокаРолей); разрешаем=0; Для сч=1 По сз.РазмерСписка() Цикл Если глИграетРоль(сз.получитьЗначение(сч))=1 Тогда  //Сообщить("разрешено для роли "+сз.получитьЗначение(сч)); разрешаем=разрешаем+1; КонецЕсли; КонецЦикла; Если разрешаем<>0 Тогда ф_флУпр.Доступность=1; КонецЕсли; КонтФормы.Форма.ИспользоватьСлой(СлойДатаДок,0); КонтФормы.Форма.ИспользоватьСлой(СлойДатаДок,1); КонецПроцедуры //====================================================================== | ||
Злопчинский 4 - 14.05.20 - 20:06 | особенно поянтно вот это
СтильФлажка=1073889283;
;-) | ||
Mikeware 5 - 14.05.20 - 20:10 | (4) магическое число от Ёпа :-) | ||
Mikeware 6 - 14.05.20 - 20:16 | (4) вообще, стиль нужно задавать числом. Но почему-то не во всех формах получалось. поэтому было взято значение стиля этого самого флажка КДИР...
вообще, тонкостей не помню, уж лет 5 прошло. | ||
Mikeware 7 - 14.05.20 - 20:19 | кому-то обещал почти год назад классы для подбора а-ля снеговик, но не было времени, вот только начал разгребать, поднял клюшки на ноуте - лепота. после идиотских УФ - все летает. | ||
Злопчинский 8 - 14.05.20 - 21:23 | (7) может, ну его нах, эту 8-ку..? организуем секту иеговистов 77 дня? | ||
big 9 - 15.05.20 - 05:39 | (8) Надо перенести ТиС на 8-ую платформу. И можно будет дальше спокойно жыть )) | ||
ДенисЧ 10 - 15.05.20 - 06:39 | МОжно, я сохраню эту ветку до зимы? Там дорожки посыпать буду... | ||
MWWRuza 11 - 15.05.20 - 07:42 | |||
vcv 12 - 15.05.20 - 08:07 | (9) Где-то был на инфостарте такой проект. То ли разработка простой торговли на 1с8, то ли перенос ТиС на 1с8. | ||
Mikeware 13 - 15.05.20 - 09:40 | |||
ДенисЧ 14 - 15.05.20 - 09:42 | (13) Мне не хватает )) | ||
Mikeware 15 - 15.05.20 - 09:49 | (14) ограничивай себя в пространствах | ||
ДенисЧ 16 - 15.05.20 - 09:52 | (15) До зимы ещё долго, режим самоограничения закончится... | ||
Mikeware 17 - 15.05.20 - 09:53 | (16) так ты в Сахаре самоизолировался? | ||
smitti911 18 - 15.05.20 - 10:16 | |||
smitti911 19 - 15.05.20 - 10:17 | (18) 9- сообщение, не? | ||
ДенисЧ 20 - 15.05.20 - 10:26 | (17) Почему? Я у нас, в России... Но летом тут хватает... | ||
trdm 21 - 15.05.20 - 10:57 | (8) > может, ну его нах, эту 8-ку..? организуем секту иеговистов 77 дня?
Я бы согласился на 7.8 c нехилыми модификациями. Ибо многое приходится делать через жопу. | ||
big 22 - 15.05.20 - 11:10 | (13) Ну, дык, платформа то будет 8.3, а "наполнение" ТиС-овское. | ||
trdm 23 - 15.05.20 - 11:31 | (4) > особенно поянтно вот это "СтильФлажка=1073889283;"По хорошему надо было сделать объект типа структуры , где в названии - стили а в значениях - значения стилей. А потом просто дать прогу складывать их. | ||
Arbuz 24 - 15.05.20 - 13:38 | (21) да-да, помечтаем. пусть 1с сорцы клюшек на гитхаб выложит и отпустит. разойдись нога - раззудись плечо! на любом утюге со сверхзвуковой скоростью - нативная поддержка скулайта, ооп из коробки, нормальный сетевой стек, управление исполнением потоков, интерфейс внешним модулем в виарэмэль. преферанс, комсомолки. а там и Сталин в кремлин вернётся. | ||
Mikeware 25 - 15.05.20 - 14:43 | (18) дык этта... это я и был. про это и говорю. | ||
Mikeware 26 - 15.05.20 - 14:44 | (23) да это уже делалось на "вотщазз", уже переход на снеговика маячил, делать по человечески лениво было.
Или ты про реализацию стилей в формексе? |
|
Список тем форума
|