7.7 Обход справоничка

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем igorekkrav, 25 фев 2011.

  1. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Код:
    Для к=2 По ТЗ.КоличествоСтрок() Цикл
    ДатаПредыдущая = ТЗ.ПолучитьЗначение(к - 1, "ДатаКонтакта");
    ДатаПредыдущая1 = ТЗ.ПолучитьЗначение(к - 1, "ДатаКонтакта1")
    ДатаТекущая = ТЗ.ПолучитьЗначение(к, "ДатаКонтакта");
    ДатаТекущая1 = ТЗ.ПолучитьЗначение(к, "ДатаКонтакта1")
    //далее идет сравнение
    КонецЦикла;
    
    
    
  2. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Все здорово сравнивает! Возможно в приделах владельцев это обойти?

    В выборке так делал
    Код:
    Спр = СоздатьОбъект("Справочник.ХКК");                
    СпрВл = СоздатьОбъект("Справочник.Клиенты");          
    СпрВл.ВыбратьЭлементы();
    Пока СпрВл.ПолучитьЭлемент() = 1 Цикл
    Спр.ИспользоватьВладельца(СпрВл.ТекущийЭлемент());
    
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    что именно обойти? Наложить дополнительное условие или что?
  4. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Ну при этом подходе у меня получается
    Что я запросом обхожу реквизиты справочника ( Дата , Дата1) всех владельцев Заношу это в ТЗ и применяю условие.
    В итоге получается сравниваю Даты от разных клиентов (владельцев).
    А могу ли я сравнивать у каждого из владельцев справочника реквизиты дата1 и дата.
    Если бы делал через выборку то получил бы владельца. А возможно ли это реализовать?
  5. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Здесь тоже это можно делать. Покажите ваш окончательный текст запроса который потом грузите в ТЗ. К тому же для удобства в запросе есть же пониятие группировки что тоже нужно использовать))))
  6. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Код:
    Перем Запрос, ТекстЗапроса, Таб;  
    ТекДата = ТекущаяДата();
    //Создание объекта типа Запрос
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса="";
    ТекстЗапроса=ТекстЗапроса+"
    |ПЕРИОД С ВыбНачПериода По ВыбКонПериода;";
    ТекстЗапроса=ТекстЗапроса+"
    |Владелец = Справочник.ХКК.Владелец;   
    |ТекущийЭлемент = Справочник.ХКК.ТекущийЭлемент; 
    |Менеджер = Справочник.ХКК.Владелец.Менеджер;
    |ДатаКонтакта = Справочник.ХКК.ДатаКонтакта;
    |ДатаКонтакта1 = Справочник.ХКК.ДатаКонтакта1; 
    |Группировка ТекущийЭлемент упорядочить по ТекущийЭлемент.ДатаКонтакта без групп;
    |Условие(Менеджер в ВыбМенеджер); 
    |"//}}ЗАПРОС     
    
    
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Ну и добавьте
    - либо группировку по владельцу в запрос
    - либо условие по владельцу в запрос
    - либо в результат сравнения в ТЗ
  8. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Добавил группировку в запросе.Такая у меня сейчас ТЗ

    Компания | Дата | ДатаСлКонтакта
    Азбука Ветра | 20.01.10| 25.01.10
    Азбука Ветра | 25.01.10| 27.01.10
    Теплокон | 29.01.10| 20.05.10

    Вот как мне теперь получить значения
    Код:
    ДатаПредыдущая1 = ТЗ.ПолучитьЗначение(к - 1, "ДатаКонтакта1")   
    
    
    не по всем полям , а только в пределах каждой компании .


Поделиться этой страницей