Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Перечислить элементы справочника  (Прочитано 13305 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Robo
Гость
« : 28-05-2008 17:10 » 

Здравствуйте, вот начинаю постигать программирование в 1С. Учусь по учебнику Игоря Ощенко - модератора данного раздела. Кстати книга понятная и хорошая, спасибо вам Игорь.

Но вот беда, начал читать про внешние обработки, задался целью написать обработку экспорта и импорта справочников (из одного в другой). Цель такая: Пользователю выводится окошко,  он выбирает, какие элементы ему нужны в новом справочнике, жмёт ok, и новые елементы копируются в файл, потом несёт на работу, опять жмёт кнопку и новые элементы опять таки копируются, но не в файл, а из файла в базу. Проблема стала на самом очевидном месте - нужно узнать число элементов во всём справочнике. Потом хотябы вывести их коды и наименования просредствам функции Сообщить(). Чтобы узнать сколько всего элементов попытался использовать такую конструкцию:

Код:
Перем Колво;
СправСотруд = СодзатьОбъект("Справочник.Сотрудники");
Колво = КоличествоСтрок(СправСотруд);
Сообщить (Колво);

Ругаеться, что функция КоличествоСтрок не найдена  А черт его знает... Помогите найти число элементов. Спасибо.
Записан
Dest
Опытный

ru
Offline Offline

« Ответ #1 : 28-05-2008 23:55 » 

По моему, я в этом уверен, ФУНКЦИЯ "КоличествоСтрок" применима только для объекта типа "Текст". Это дело к справочникам применять нельзя.
Попробуй так:

СправСотруд = СодзатьОбъект("Справочник.Сотрудники");
Колво=0;
СправСотруд.выборгруппы(0);
СправСотруд.ВыбратьЭлементы(); 
Пока (СправСотруд.ПолучитьЭлемент()>0) цикл
Колво=Колво+1;
конецЦикла;
Сообщить (Колво);


Если тебе необходимо в "Колво" включить еще и наименовани групп, то
СправСотруд.выборгруппы(0);
Вставь "1",а не "0"  в качестве параметра(если справочник многоуровневый);
Записан
Robo
Гость
« Ответ #2 : 29-05-2008 00:31 » 

dest, Большое спасибо. А я то думал просто, что справочники - это тупо массив строк. Ошибку свою осознал. Кстати, где можно посмотреть методы и свойства элементов управления типа кнопка, флажок, выпадающий список и другие? Хочется влепить флажок, чтобы он закрывал доступность кнопки. Что то типа вот этого:

Код:
if checkbox.checked = true then begin
    button.enabled = false;
else
    button.enabled = true;
end;
[code]

Скажите где про это прочитать или дастать справочник? Зарание благодарен, спасибо.
[/code]
Записан
Robo
Гость
« Ответ #3 : 29-05-2008 01:10 » 

С флажком допёр, а вот как быть например с кнопкой, при нажатии на которую необходимо её скрыть с глаз долой? мм?
Записан
tulke
Гость
« Ответ #4 : 29-05-2008 06:35 » 

Форма.ТвойКнопка.Видимость(0); ТвойКнопка - Идентификатор кнопки
Форма.ТвойКнопка.Доступность(0);
Записан
Robo
Гость
« Ответ #5 : 29-05-2008 15:28 » 

tulke, Спасибо.

Всё это конечно хорошо и клёво, но очень нехватает справочника по свойствам. Очень кстати нехватает такой клёвой штуки в 1С 7.7 как CodeInsight, ну знаете как в 1С 8, как тока ты набрал точку так высвечивается табличка доступных методов и свойств данного элемента.
Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 29-05-2008 19:15 » new

Robo, смотри проект OpenConf & Телепат
Записан
Robo
Гость
« Ответ #7 : 30-05-2008 07:58 » 

Kivals, Вот, спасибо. Теперь другое дело. А всё таки, как насчёт справочника по методам и свойствам? Никто не видел подобного?
Записан
Harry
Модератор

ua
Offline Offline

« Ответ #8 : 02-06-2008 05:04 » 

Robo, спасибо за похвалу, приятно слышать Улыбаюсь 
Насчет справочника методов и свойств - нет такого. Хотя, в принципе, справочник конечно можно создать любой, только я не очень понял смысл - что этот справочник должен в себе хранить? Какие-то свойства элементов форм?

Записан

Слабый пол силен в силу слабости сильного пола к слабому
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #9 : 08-06-2008 18:08 » 

Robo, я так понимаю тебе документация надо?
В 1С эта штука называется "Синтакс-помощник". Он понимает файлы формата ".als" (можно поискать в ИНете - есть например по метаданным и внешним объектам). Эти файлы могут находится либо в каталоге базы, либо в каталоге 1С (например: C:\Program files\1Cv7\bin\), либо в системных каталогах (не рекомендуется).
При стандартной установке 1С ставятся файлы помощи по стандартным объектам 1С. Вызывается помощь из текста нажатием Ctrl+F1.
Что касается формы - так и набираешь "Форма" и жмешь Ctrl+F1 и ищешь рядышком "Объект "Форма""
Записан
Hypertronic
Гость
« Ответ #10 : 20-01-2009 03:59 » 

if checkbox.checked = true then begin
    button.enabled = false;
else
    button.enabled = true;
end;
Код:
Соотв:
Если Переключатель=1 тогда
   Форма.Кнопка.Доступность(0);
иначе
   Форма.Кнопка.Доступность(1);
КонецЕсли;

Кажется ;)
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines