![]() |
|
v7: Выборка по справочнику. | ☑ | ||
---|---|---|---|---|
0
JuixyJes
25.12.19
✎
09:03
|
Доброго утра, программисты! Помогите пожалуйста. Мне нужно сделать выборку по справочнику для внешнего отчета. Выборка должна происходить по группировкам по реквизиту.
|
|||
1
ДенисЧ
25.12.19
✎
09:05
|
Мы... Как бы не против..
|
|||
2
piter3
25.12.19
✎
09:06
|
Ну так пишите код,в чем проблема?
|
|||
3
Kigo_Kigo
25.12.19
✎
09:30
|
"Выборка должна происходить по группировкам по реквизиту."
А это как? Выбирай - суй в ТЗ сортируй аназизуруй Колонка1 товар Колонка2 Реквизиттовара Тз.Сортировать("Реквизиттовара+") |
|||
4
johnnik
25.12.19
✎
09:34
|
(0) Указывайте в запросе группировку этого реквизита. Рекв1 = Справочник.Номенклатура.Реквизит1 и все
Или в самом цикле перебора элементов сортируйте по реквизиту, а для этого в конфигурации на реквизите должен стоять флаг "Сортировать по реквизиту" |
|||
5
JuixyJes
25.12.19
✎
09:38
|
Так, другой вопрос.
|
|||
6
JuixyJes
25.12.19
✎
09:39
|
Как мне сделать выборку из справочника по определенному реквизиту?
|
|||
7
Bigbro
25.12.19
✎
09:39
|
запрос с соответствующей группировкой?
|
|||
8
JuixyJes
25.12.19
✎
09:43
|
Я просто в семерке не очень разумна:D
|
|||
9
JuixyJes
25.12.19
✎
09:44
|
И как написать запрос не вкуррррсе. Привыкла пользоваться консолью в 8ке
|
|||
10
Bigbro
25.12.19
✎
09:45
|
(9) там есть конструктор запросов, все достаточно просто.
|
|||
11
Bigbro
25.12.19
✎
09:47
|
Перем Запрос, ТекстЗапроса, Таб;
//Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |ОбрабатыватьДокументы все; |Обрабатывать НеПомеченныеНаУдаление; |Без итогов; |Сотрудники = Справочник.Сотрудники.ТекущийЭлемент; |Должность = Справочник.Сотрудники.Должность; |Группировка Должность; |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; // Подготовка к заполнению выходных форм данными запроса Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); // Заполнение полей "Заголовок" Таб.ВывестиСекцию("Заголовок"); Состояние("Заполнение выходной таблицы..."); Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0); Пока Запрос.Группировка() = 1 Цикл // Заполнение полей Сформировать Таб.ВывестиСекцию("Сформировать"); КонецЦикла; // Вывод заполненной формы Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать", ""); вот из конструктора, 1 минута времени. |
|||
12
JuixyJes
25.12.19
✎
10:00
|
Так, а если у меня в справочнике есть табличное поле, как посчитать в нем количество строк?
|
|||
13
JuixyJes
25.12.19
✎
10:01
|
//*******************************************
Процедура Сформировать() ТабДок = СоздатьОбъект("Таблица"); ТабДок.ИсходнаяТаблица("СведенияПоОбращениюСТвердымиКом"); ТабДок.ВывестиСекцию("Шапка"); Спр = СоздатьОбъект("Справочник.Клиенты"); СпрД = СоздатьОбъект("Справочник.Клиенты"); СпрД.ИспользоватьВладельца(Спр); Спр.ПорядокРеквизита("Дом"); Спр.ВыбратьЭлементы(); ДомДляТаблицы = ""; Пока Спр.ПолучитьЭлемент() = 1 Цикл Если ДомДляТаблицы <> Спр.Дом Тогда Если (Спр.ЭтоГруппа()=1) ИЛИ (Спр.ПометкаУдаления()=1) ИЛИ (Спр.ПринадлежитГруппе(ВЫБЫВШИЕ) = 1) Тогда Продолжить; КонецЕсли; ДомДляТаблицы = Спр.Дом; ДомТаб = ДомДляТаблицы; ТабДок.ВывестиСекцию("ШапкаДом"); СпрД.ВыбратьЭлементы(); ФИО = Спр.ФизЛицо.ПолнНаименование; ДатаРождения = Спр.ФизЛицо.ДатаРождения; МестоРождения= Спр.ФизЛицо.МестоРождения; Документ = Спр.ФизЛицо.ДокументУдЛичность; Адрес = Спр.Дом.Наименование+?(ПустаяСтрока(Спр.Кв)=0, " кв."+Спр.Кв, ""); ОбщаяПлощадь = Спр.ОбщПл; ЖилаяПлощадь = Спр.ЖилПл; Колво= Спр.Ж.КоличествоСтрок(); ТабДок.ВывестиСекцию("СтрокаДом"); КонецЕсли; КонецЦикла; ТабДок.Показать(); КонецПроцедуры |
|||
14
JuixyJes
25.12.19
✎
10:01
|
Там вот Ж.КоличествоСтрок(), не помогает.
|
|||
15
JuixyJes
25.12.19
✎
10:02
|
Ибо через вот это Ж я так полагаю обратиться возможно только из формы справочника того
|
|||
16
Kigo_Kigo
25.12.19
✎
10:05
|
Что такое "Ж"?
|
|||
17
JuixyJes
25.12.19
✎
10:08
|
Это Идентификатор табличного поля
|
|||
18
Kigo_Kigo
25.12.19
✎
10:10
|
(17) откуда у вас в семерке в справочнике табличное поле?
Если это ТаблицаЗначений , то она заполняется при окрытии справочника и в состоянии "покоя" там КоличествоСтрок() =0 |
|||
19
Bigbro
25.12.19
✎
10:11
|
табличное поле - оно на форме.
а где оно в справочнике хранится - нужно посмотреть в при открытии заполнение этого поля. |
|||
20
Bigbro
25.12.19
✎
10:12
|
оно может вообще в другом справочнике быть
или вообще не в справочнике) |
|||
21
uno-group
25.12.19
✎
10:14
|
Открой подчиненные справочники скорее всего в них хранится твоя таблица
|
|||
22
Kigo_Kigo
25.12.19
✎
10:17
|
(21) Один фиг в семерке нельзя подчиненый справочник положить на форму как таблицу штатными средствами, сто пудово там ТЗ
|
|||
23
JuixyJes
25.12.19
✎
10:18
|
Так, это я решила:D Там оказался реквизит.
|
|||
24
Карст
25.12.19
✎
10:33
|
некоторые подменяют справочники документами ))) и тогда там есть табличное поле
|
|||
25
Смотрящий
25.12.19
✎
10:41
|
(22) Можно
|
|||
26
Kigo_Kigo
25.12.19
✎
11:01
|
(25) Раскажи, я то я что то за 19 лет работы такого не освоил
|
|||
27
Смотрящий
25.12.19
✎
12:33
|
(26) Эмулировать форму элемента справочника-владельца на форме списка подчиненного справочника
|
|||
28
Salimbek
25.12.19
✎
12:44
|
(27) Мусье большой оригинал! :-)
|
|||
29
Смотрящий
25.12.19
✎
12:58
|
(28) "Как? Как ты сделал??!!" и выпученные пешки стоят того ;)
|
|||
30
Kigo_Kigo
25.12.19
✎
15:04
|
(27) О дааа
|
|||
31
Злопчинский
25.12.19
✎
15:39
|
(12) в справочнике блин, нет табличного поля.
|
|||
32
Kigo_Kigo
25.12.19
✎
15:58
|
(31) Смотрящий говорит есть в эмуляции, Бгггг
|
|||
33
Злопчинский
25.12.19
✎
16:03
|
(0) надо было в Мисс Миста-2019 участвовать - уже б все давно порешали...
. ну, если что - стучись в районе 20:30 в скайп Zlopun если надо будет |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |