Имя: Пароль:
1C
1C 7.7
v7: Подскажите алгоритм действий. (Регистр+Справочник)
,
0 bestuzhev
 
24.04.13
13:48
В общем есть регистр со взаимосрасчетами и есть справочник клиенты, нужно бырать из регистра так чтобы был какой-то признак местонахождения Элемента в справочнике, а именно там есть группа Поставщики, так вот нужно получить такую таблицу:
1) Признак (поставщик или нет, находится в этой группе или нет) к примеру 1 или 0
2) Клиент
3) Сумма остаток

Пока получается только пункты 2 и 3 подскажите алгоритм действий.

ЗЫ
В 8-ке такое сделаю без проблем.
1 ukolabrother
 
24.04.13
13:50
А родителя почему нельзя читать при выборке?
2 bestuzhev
 
24.04.13
13:52
(1) Сказать честно я не силен в 7ке пишу по справке если что надо и не всегда знаю возможности что может она а что нет.
3 ukolabrother
 
24.04.13
13:53
(2) родитель есть как 7 так и в 8
4 Rie
 
24.04.13
13:53
(0) Запросом? Попробуй что-нибудь вроде
Функция Признак = Сумма(Клиент.ПринадлежитГруппе(Поставщики));
5 bestuzhev
 
24.04.13
13:58
Сейчас вот такой код:

       ДатаНач = ДатаОтчета;    
       
       Запрос = СоздатьОбъект("Запрос");
       ТекстЗапроса =
       "//{{ЗАПРОС(Сформировать)
       |Период с ДатаНач по ДатаНач;
       |Контрагент = Регистр.Взаиморасчеты.Клиент;
       |СуммаБазовая = Регистр.Взаиморасчеты.СуммаБазовая;
       |Функция СуммаБазоваяКонОст = КонОст(СуммаБазовая);
       |Группировка Контрагент без групп;
       |Условие(Сумма <> 0);";  

       Если Запрос.Выполнить(ТекстЗапроса) <> 0 Тогда                
           Пока Запрос.Группировка(1) = 1 Цикл
               Сообщить(Запрос.Контрагент);
               Сообщить(Запрос.СуммаБазоваяКонОст);
               Сообщить("--------------------");
           КонецЦикла;
       КонецЕсли;
6 varelchik
 
24.04.13
14:54
(5) И работает?
Что-то смутно вериться.
7 bestuzhev
 
24.04.13
19:23
(6) Работает, а что смущает?
8 Злой Бобр
 
24.04.13
19:30
(7) Ну например :
|Условие(Сумма <> 0);
У вас "Сумма" неопределена в запросе.
9 bestuzhev
 
24.04.13
19:39
(8) А это да.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн