Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как обозначить пустой результат списка          
Gigi Подменю пользователя
сообщение 29.05.17, 12:40
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

Привет Всем!
Уважаемые форумчане!
На подскажете к как обозначить пустой результат списка.
На пример такого отбора:

&НаКлиенте
Процедура Отобор_СубТочки()
ЗначениеОтбора="" +Объект.Код;
СтолбецОтбора="СнабжКод";    
//==========================
Если ЗначениеОтбора="" Тогда
ЗначениеОтбора="----";
КонецЕсли;
//==========================
Отбор = СубТочкиСписок.Отбор.Элементы;
СубТочкиСписок.Отбор.Элементы.Очистить();
//==========================
ЭлементОтбора=СубТочкиСписок.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ПравоеЗначение=ЗначениеОтбора;
ЭлементОтбора.ЛевоеЗначение=Новый ПолеКомпоновкиДанных(СтолбецОтбора);
ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование=ИСТИНА;
//==========================
//Сообщить(КАК ОБОЗНАЧИТЬ ЕСЛИ РЕЗУЛЬТАТ ОТБОРА ПУСТ. Т.е когда не было не одного совпадения);
КонецПроцедуры

Это нужно для того, что бы самому вставленную кнопку, в случае пустого динамического списка, сделать недоступной.

Буду признателен!

Flexy Подменю пользователя
сообщение 29.05.17, 12:54
Сообщение #2

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Gigi @ Сегодня, 12:40 * ,
Как получаете количество записей в динамическом списке при изменении отбора?

logist Подменю пользователя
сообщение 29.05.17, 13:00
Сообщение #3

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

У динамического списка нет количества элементов. что бы понять что результат отбора пустой надо выполнить аналогичный запрос с отбором, иначе никак.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Gigi Подменю пользователя
сообщение 29.05.17, 13:12
Сообщение #4

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

logist @ Сегодня, 13:00 * ,
Блин! Ну а как тогда быть?
Цитата(logist @ 29.05.17, 13:00) *
аналогичный запрос с отбором

Это нагрузка.... только так и никак иначе?
мне просто нужно, что бы кнопка стала недоступной... как в командной панели по стандарту.
ведь когда список пуст, на пример кнопка "удалить" становиться ведь недоступной. И в стандартном режиме, как то ведь это работает,.?... без проблем.
просто нужно то же самое, только с самим вложенной кнопкой.
Только для этого не знаю как обозначить пустой результат отбора.. при любом событии... на пример при изменении значения отбора, или при открытии... не важно.

Flexy Подменю пользователя
сообщение 29.05.17, 13:22
Сообщение #5

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Gigi @ Сегодня, 13:12 * ,
Велосипед smile.gif
&НаКлиенте
Процедура Отобор_СубТочки()
ЗначениеОтбора="" +Объект.Код;
СтолбецОтбора="СнабжКод";    
//==========================
Если ЗначениеОтбора="" Тогда
ЗначениеОтбора="----";
КонецЕсли;
//==========================
Отбор = СубТочкиСписок.Отбор.Элементы;
СубТочкиСписок.Отбор.Элементы.Очистить();
//==========================
ЭлементОтбора=СубТочкиСписок.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ПравоеЗначение=ЗначениеОтбора;
ЭлементОтбора.ЛевоеЗначение=Новый ПолеКомпоновкиДанных(СтолбецОтбора);
ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование=ИСТИНА;
//==========================
// Flexy
Элементы.МояКнопка.Доступность = Не Элементы.Список.ТекущаяСтрока = Неопределено;
//-----
КонецПроцедуры


Сообщение отредактировал Flexy - 29.05.17, 13:22

Спасибо сказали: Gigi,

logist Подменю пользователя
сообщение 29.05.17, 13:46
Сообщение #6

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Gigi @ 29.05.17, 14:12) *
только так и никак иначе?

Откуда ж я знаю, вы себе придумали задачу, и придумали что надо сделать именно так... Возможно всё это можно сделать по другому, и оптимально, только надо понимать задачу в целом, а не тот конкретный кусок в который вы уперлись и решили огласить тут.

Цитата(Gigi @ 29.05.17, 13:40) *
ЗначениеОтбора="" +Объект.Код;

это же не php (или откуда вы это взяли), если Код явно имеет тип строка то не зачем ставить кавычки, и не зачем создавать эту переменную.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Gigi Подменю пользователя
сообщение 29.05.17, 13:47
Сообщение #7

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

Flexy @ Сегодня, 13:22 * ,
Цитата(Flexy @ 29.05.17, 13:22) *
// Flexy
Элементы.МояКнопка.Доступность = Не Элементы.Список.ТекущаяСтрока = Неопределено;

Не знаю велосипед или мотоцикл но НЕ РАБОТАЕТ!!!!
Имя кнопки: "СубТочка_Отменить".
В отладчике, на месте:
Элементы.СубТочка_Отменить.Доступность

Пишет, что поле: "СубТочка_Отменить" не найдено.

logist Подменю пользователя
сообщение 29.05.17, 13:51
Сообщение #8

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Gigi @ 29.05.17, 14:47) *
Пишет, что поле: "СубТочка_Отменить" не найдено.

Значит имя кнопки не такое, или её нет на форме.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Gigi Подменю пользователя
сообщение 29.05.17, 13:55
Сообщение #9

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

logist @ Сегодня, 13:51 * ,
Как нет

smile.gifsmile.gifsmile.gifsmile.gifsmile.gif

Flexy Подменю пользователя
сообщение 29.05.17, 13:59
Сообщение #10

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Gigi @ Сегодня, 13:55 * ,
Давайте скрин где размещена кнопка. Или на пальцах объясняйте.

logist Подменю пользователя
сообщение 29.05.17, 14:09
Сообщение #11

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Flexy @ 29.05.17, 14:59) *
Или на пальцах объясняйте.

В прошлый раз уже объясняли на пальцах, это затянется надолго)))

Цитата(Gigi @ 29.05.17, 14:55) *
Как нет

Ну если отладчик говорит что нет - значит нет, всё просто smile.gif


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Gigi Подменю пользователя
сообщение 29.05.17, 14:12
Сообщение #12

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

Цитата(Flexy @ 29.05.17, 13:59) *
Давайте скрин где размещена кнопка. Или на пальцах объясняйте.


Кнопка на форме размещена в командной панели динамического списка.


Хотя я перенес ее прямо на форму ... все равно не находит зараза.

Пишет:
Поле объекта не обнаружено (СубТочка_Отменить)

Flexy Подменю пользователя
сообщение 29.05.17, 14:15
Сообщение #13

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Цитата(Gigi @ 29.05.17, 14:12) *
Кнопка на форме размещена в командной панели динамического списка.

Ну дык, так и пишите: Элементы.Список.КоманданаяПанель.ПодчиненныеЭлементы.МояКнопка ... как-то так.

Сообщение отредактировал Flexy - 29.05.17, 14:19

Petre Подменю пользователя
сообщение 29.05.17, 14:24
Сообщение #14

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

Gigi @ Сегодня, 15:12 * ,
Еще раз после просмотренных скриншотов: у вас НЕТ элемента "СубТочка_Отменить".


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Gigi Подменю пользователя
сообщение 29.05.17, 14:27
Сообщение #15

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

Flexy @ Сегодня, 14:15 * ,
Гуууу... да что же это в самом деле... опять для до передела простого аж велосипед заново....


//Для теста сделал так:
Элементы.СубТочкиСписок.КоманданаяПанель.ПодчиненныеЭлементы.СубТочка_Отменить.Доступность = ЛОЖЬ
//пишет: в поле не обнаружено КоманданаяПанель


Ладно! вижу что лажа.. сделать до предела простое это наверно целое дело. Так не получается ... сьяк не хочет. Тупизм! Опять вечно капризничает!
с VBA в Экселе было проще!
Придется обойтись без того, что хотел сделать.

Flexy Подменю пользователя
сообщение 29.05.17, 14:30
Сообщение #16

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Цитата(Gigi @ 29.05.17, 14:27) *
КоманданаяПанель faceoff.gif


logist Подменю пользователя
сообщение 29.05.17, 14:30
Сообщение #17

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Gigi @ 29.05.17, 15:27) *
Тупизм! Опять вечно капризничает!
с VBA в Экселе было проще!

Точно так же могу сказать с точки зрения программиста 1с, делая что-то в VBA - в 1С было бы проще, а там тупизм какой-то. Всего лишь потому, что я в этом не разбираюсь. Продолжая винить в этом всё/всех кроме себя, вы будете зарывать в себя в еще большую яму. Берегите нервы, они источник всех болезней wink.gif


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Спасибо сказали: Gigi,

Bernet Подменю пользователя
сообщение 29.05.17, 14:31
Сообщение #18

Ветеран
Иконка группы
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 317 раз
Рейтинг: 0

Gigi @ Сегодня, 15:27 * ,
Оно же вам в конфигураторе должно подсказывать когда нажимаете ".", пройдите полный путь, посмотрите как достучаться, элементарно если так не можете понять, откройте отладчик, поставте точку остановы где-нибудь и посмотрите что у вас есть в "Элементы", пораскрывайте ветки, найдите свою кнопку, выделите её мышкой и получите сверху полный путь к ней =)

Цитата
Берегите нервы, они источник всех болезней
золотые слова, знаю не по наслышке, у очень близкого человека на этой почве рак развился....


Signature
Дописываю конфигурации на платформе 8.х.
- Управление торговым предприятием для Украины
- Управление производственным предприятием для Украины
- Управление небольшой фирмой для Украины
- Бухгалтерия для Украины;
- Общепит для Украины
- Ресторан (Рарус)
- Розница

Спасибо сказали: Gigi,

Gigi Подменю пользователя
сообщение 29.05.17, 14:58
Сообщение #19

Оратор
*****
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0

Bernet @ Сегодня, 14:31 * ,
Ладно! Попытаюсь .... чуть успокоившись.
Но в любом случае спасибо!


Gigi @ Сегодня, 14:35 * ,
Сработало!
Я понял в чем была ошибка.
Дело в том, что во вкладке "Команды" кнопка так и называется: "СубТочка_Отменить". Как и видно на первом скине.
И как только ее (кнопку) переносишь на форму ее имя уже меняется. И складывается в зависимости от того, где размещена
Так что, вот так сработала:
Элементы.СубТочкиСписокСубТочка_Отменить.Доступность = ЛОЖЬ;

Наконец то...
Но без Вашей помощи не обошлось бы.
Так что всем финальное спасибо! smile.gifsmile.gif

Vofka Подменю пользователя
сообщение 29.05.17, 15:21
Сообщение #20

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13948
Из: Киев
Спасибо сказали: 4514 раз
Рейтинг: 3635.6

Цитата(Gigi @ 29.05.17, 15:27) *
Ладно! вижу что лажа.. сделать до предела простое это наверно целое дело. Так не получается ... сьяк не хочет. Тупизм! Опять вечно капризничает!

Зачем же вы лезете в эту "тупую" 1С?

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 28.03.24, 20:12
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!