powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Форма с нуля
20 сообщений из 20, страница 1 из 1
Форма с нуля
    #39154289
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не могу в конфигураторе с нуля создать форму списка с колонками в таблице.
в нете все описывается программно об интерактивном создании примеров не нашел
Я хочу с помощью интеракивных средств создать форму для иерархического справочника как проводник windows - слева дерево, справа строки, потому что представление справочника в виде дерева некомпактно.

Плиз дайте пожалуйста ссылки или раскритикуйте идею.
...
Рейтинг: 0 / 0
Форма с нуля
    #39154301
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Draginsv, такого полно в типовых конфигурациях, просто посмотрите как там сделано. например, список номенклатуры в ут11
...
Рейтинг: 0 / 0
Форма с нуля
    #39154303
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Draginsv,
...
Рейтинг: 0 / 0
Форма с нуля
    #39154311
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker ,

Спасибо буду разбираться. Но как говориться самому с нуля это отличная тренировка в развитии.
Никак не уясню себе что в 1С танцуют от реквизита в форме, старая привычка от акцеса сидит крепко - все начинается от элементов управления.
...
Рейтинг: 0 / 0
Форма с нуля
    #39154415
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в отборе списка при интерактивной настройке в конфигураторе сослаться на значение к.н. элемента управления?
...
Рейтинг: 0 / 0
Форма с нуля
    #39154483
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DraginsvКак в отборе списка при интерактивной настройке в конфигураторе сослаться на значение к.н. элемента управления? насколько мне известно, интерактивно никак
...
Рейтинг: 0 / 0
Форма с нуля
    #39154523
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а я мучаюсь методом тыка. Значит только программно через элементы отбора.
А вообще какой оптимальный метод решения такой постановки задачи:
Два динамических списка - слева дерево, справа строки, при позиционировании по дереву обновляются строки.
В списке дерева - представление в виде дерева путь к данным -реквизит не основной справочник.номенклатура отбор настроен интерактивно этогруппа истина. Далее я хочу получить ссылку в дереве и применить ее для отбора по родителю в списке строк справа, который ссылается на основной реквизит и тоже справочник.номенклатура.
Только вот как через отбор или произвольный запрос?
И как получить ссылку в дереве?
Пытался через текущие данные, говорит ссылка недоступна. Как вытянуть?
...
Рейтинг: 0 / 0
Форма с нуля
    #39154990
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Удалось через запрос решить задачку следующим образом

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
&НаКлиенте
Процедура ДеревоГруппПриАктивизацииСтроки(Элемент)
	
	ТекСсылка = Неопределено;
	ТекСтр = Элементы.ДеревоГрупп.ТекущиеДанные;
	Если ТекСтр <> Неопределено Тогда
		ТекСсылка = Элементы.ДеревоГрупп.ТекущиеДанные.Ссылка;
	КонецЕсли;
	ДеревоГруппПриИзмененииНаСервере(ТекСсылка);
	
КонецПроцедуры

&НаСервере
Процедура ДеревоГруппПриИзмененииНаСервере(Ссылка)
	Если Ссылка = Неопределено Тогда
		 Ссылка = Справочники.Номенклатура.ПустаяСсылка();
	 КонецЕсли;
	 
	СтрокиГрупп.ТекстЗапроса ="
	|	ВЫБРАТЬ
	|	СправочникНоменклатура.Ссылка,
	|	СправочникНоменклатура.ПометкаУдаления,
	|	СправочникНоменклатура.Родитель,
	|	СправочникНоменклатура.ЭтоГруппа,
	|	СправочникНоменклатура.Код,
	|	СправочникНоменклатура.Наименование,
	|	СправочникНоменклатура.Артикул,
	|	СправочникНоменклатура.ЕдиницыИзмерения,
	|	СправочникНоменклатура.ЦенаПродажи,
	|	СправочникНоменклатура.Предопределенный,
	|	СправочникНоменклатура.ИмяПредопределенныхДанных
	|ИЗ
	|	Справочник.Номенклатура КАК СправочникНоменклатура
	|ГДЕ
	|	СправочникНоменклатура.Родитель = &Родитель";
	
	СтрокиГрупп.Параметры.УстановитьЗначениеПараметра("Родитель", Ссылка);
	Элементы.СтрокиГрупп.Обновить();
	
КонецПроцедуры



Никак в привычку не войдет что в 1С ссылка т е Id везде вылазит в виде наименования.
Все что видно в колонках таблицы то и доступно через ТекущиеДанные, стоит у колонки видимость убрать как поле становится недоступным. Тогда я включил в колонки деревогрупп только саму ссылку она все равно в виде наименования в форме.
Сейчас отрабатываю отбор.
...
Рейтинг: 0 / 0
Форма с нуля
    #39155005
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С отбором не работает, что не так?

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
&НаСервере
Процедура ДеревоГруппПриИзмененииНаСервере(Ссылка)
	Если Ссылка = Неопределено Тогда
		 Ссылка = Справочники.Номенклатура.ПустаяСсылка();
	 КонецЕсли;
	
	СтрокиГрупп.Отбор.Элементы.Очистить();
	ЭлОтбора = СтрокиГрупп.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
	ЭлОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлОтбора.ПравоеЗначение = Ссылка;
	ЭлОтбора.Использование = Истина;
	ЭлОтбора1 = СтрокиГрупп.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлОтбора1.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЭтоГруппа");
	ЭлОтбора1.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлОтбора1.ПравоеЗначение = Истина;
	ЭлОтбора1.Использование = Истина;
	Элементы.СтрокиГрупп.Обновить();
	
КонецПроцедуры



заменена только серверная процедура
...
Рейтинг: 0 / 0
Форма с нуля
    #39155061
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почитал в нете про отбор вычитал следующее
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
	СтрокиГрупп.Отбор.Элементы.Очистить();	 
	

	ГруппаОтбора = СтрокиГрупп.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
	ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
	
	ЭлОтбора = СтрокиГрупп.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлОтбора.Родитель = ГруппаОтбора;
	ЭлОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
	ЭлОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлОтбора.Использование = Истина;
	ЭлОтбора.ПравоеЗначение = Ссылка;
	
	
	ЭлОтбора = СтрокиГрупп.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлОтбора.Родитель = ГруппаОтбора;
	ЭлОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЭтоГруппа");
	ЭлОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлОтбора.Использование = Истина;
	ЭлОтбора.ПравоеЗначение = Ложь;

	Элементы.СтрокиГрупп.Обновить();


Отлаживаю и не пойму почему с первой строчки ЭлОтбора.Родитель = ГруппаОтбора;
перескакивает на СтрокиГрупп.Отбор.Элементы.Очистить(); и так до бесконечности.
Это глюк или мои ошибки?
...
Рейтинг: 0 / 0
Форма с нуля
    #39155075
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
реставрировал
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
	СтрокиГрупп.Отбор.Элементы.Очистить();	 
	
	ГруппаОтбора = СтрокиГрупп.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
	ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
	ГруппаОтбора.Использование = Истина;
	ЭлОтбора = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
	ЭлОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлОтбора.Использование = Истина;
	ЭлОтбора.ПравоеЗначение = Ссылка;
	ЭлОтбора = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЭтоГруппа");
	ЭлОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ЭлОтбора.Использование = Истина;
	ЭлОтбора.ПравоеЗначение = Ложь;
	
	Элементы.СтрокиГрупп.Обновить();



результат : высвечиваются группы и раскрывается только та которая выделена слева остальные пустые.
Как с отбором добиться чтобы в списке были только подчиненные записи а не сами группы?
...
Рейтинг: 0 / 0
Форма с нуля
    #39155113
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При существующих настройках СтрокиГрупп Отображение ИерархическийСписок через произвольный запрос все работало
при отборе результат в предыдущем топике.
Изменил настройки СтрокиГрупп Отображение Список - заработало при отборе. Высвечиваются только подчиненные позиции без групп.
...
Рейтинг: 0 / 0
Форма с нуля
    #39155115
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapeckerDraginsv, такого полно в типовых конфигурациях, просто посмотрите как там сделано. например, список номенклатуры в ут11
В Управление торговлей, редакция 11.1 (11.1.10.176) не нашел подобных форм.
...
Рейтинг: 0 / 0
Форма с нуля
    #39155429
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Draginsv,
...
Рейтинг: 0 / 0
Форма с нуля
    #39155474
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

посмотрел, реализовано через отбор и примерно такой же подход. Отличие - сложный код вложенности с идентификацией разного рода настроек компоновки данных. М б если придется обобщать то тоже придем к разного рода вложенностям но это надо быть очень очень скрупулезным. Многих кого спрашивал не любят 1С из-за сложной вложенности в коде их типовых решений.
...
Рейтинг: 0 / 0
Форма с нуля
    #39155505
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

Заметил интересную вещь: В конфигураторе УТ11 и моей пробной - в конструкторе формы высота строк большая и одинаковая
в режиме 1С предприятие в УТ11 высота строк меньше чем в конфигураторе и моей пробной конфигурации. В свойствах и параметрах разницы не обнаружил. С чем это связано?
...
Рейтинг: 0 / 0
Форма с нуля
    #39155526
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Высота строк в конфигураторе УТ11 отличается от 1С предприятия
...
Рейтинг: 0 / 0
Форма с нуля
    #39155652
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Draginsv,В свойствах и параметрах разницы не обнаружил. С чем это связано? наверное с тем что в конфигураторе при конструировании формы у вас интерфейс такси, а в режиме предприятия нет.
...
Рейтинг: 0 / 0
Форма с нуля
    #39155685
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,
а какой здесь интерфейс?
...
Рейтинг: 0 / 0
Форма с нуля
    #39158305
Draginsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

Нашел как уменьшить высоту строк в формах: Свойства формы "Вариант масштаба" - "Компактный".

Теперь еще бы в панелями такси решить подобный вопрос.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Форма с нуля
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]