Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 03:26
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Внешний отчет на выборку  (Прочитано 2254 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sail

  • **
  • Сообщений: 91
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-12-08
  • Сайт: 
  • Профессия: Программист 8.1
Помогите мне пожалуйста, нужно срочно. Создаю отчет на выборку. Нужно из справочника "Контрагенты "выбрать тех контрагентов у которых есть договора с наименованием "Саночистка". В диалоге задается период и дата договоров должна быть из этого периода. Еще проблема в том, что наименования пользователи вводили по-разному: кто саночистка, кто сан.оч и др., поэтому договор по наименованию должет отбираться по первым 3-м символам. Спасибо за помощь. Выложу свой код и внешний отчет прикреплю.

Процедура Сформировать()
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Таблица");
   Таб.ВывестиСекцию("Шапка1");   
   
   спрк=создатьобъект("Справочник.Контрагенты");
   спрд=создатьобъект("Справочник.Договора");   
   [size=78%]  [/size][/size]
    спрк.ВыбратьЭлементы();   
   пока спрк.получитьэлемент()<>0 цикл 
            
      спрд.ИспользоватьВладельца(спрк.ТекущийЭлемент());
      спрд.выбратьЭлементы(); 
   
      Пока спрд.ПолучитьЭлемент() <> 0 Цикл
         Если спрд.ПометкаУдаления() = 1 тогда
            продолжить;
         КонецЕсли;   
      если (спрд.Наименование ="Саночистка") и (спрд.ДатаДоговора>=ВыбДатаНач) и (спрд.ДатаДоговора<=ВыбДатаКон)  тогда
            договор = спрд.Код;        
            датадог= спрд.ДатаДоговора;
       
      конецесли;
      конецЦикла;   
      [/size]
      Таб.ВывестиСекцию("Строка1");
   КонецЦикла    
      
таб.опции(0,0,0);
   Таб.Показать();
КонецПроцедуры




Процедура ПриОткрытии()
   ВыбДатаНач = НачМесяца(РабочаяДата());
   ВыбДатаКон = КонМесяца(РабочаяДата());
КонецПроцедуры


Оффлайн sail

  • **
  • Сообщений: 91
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-12-08
  • Сайт: 
  • Профессия: Программист 8.1
Все так сложно, если никто не отвечает? Мне уже к понедельнику нужно. Подскажите хот в каком направлении двигаться. Может тут надо запрос на выборку создать.

Оффлайн pavl_vs

  • *****
  • Сообщений: 1063
  • РЕПУТАЦИЯ: 168
  • КПД: 16%
  • Регистрация: 2011-05-09
  • Сайт: 
  • Профессия: Программист 7.7
Все так сложно, если никто не отвечает? Мне уже к понедельнику нужно. Подскажите хот в каком направлении двигаться. Может тут надо запрос на выборку создать.
Вы не назвали конфигурацию. В моей (тоже не назову) справочник "Договоры" подчинен справочнику "Организации", а не "Контрагенты", что мне кажется более логичным.

1. Проверьте подчиненность.
2. Посмотрите состав реквизитов Контрагента; может есть ОсновнойДоговор (т.е у меня один и тот же договор могут выполнять разные контрагенты и, с другой стороны, одному контрагенту можно "назначить" несколько договоров: будет несколько строк на одного и того же контрагента, но в каждой строке свой ОсновнойДоговор).

Если коротко, то в моем варианте Ваша обработка работает без привлечения внутреннего (подчиненного) цикла; а отбор по наименованию (ОсновногоДоговора) я выполнил не по равенству, а по фрагменту строки (метод "Найти").

Оффлайн Alex56

  • *****
  • Сообщений: 828
  • РЕПУТАЦИЯ: 11
  • КПД: 1%
  • Регистрация: 2013-10-02
  • Сайт: itoren.ucoz.ru
  • Профессия: Ученик 1С
Может вам это нужно критерии отбора. http://howknow1c.ru/programmirovanie-1c/kriterii-otbora-1s.html
Нужно постоянно трудиться.

Оффлайн sail

  • **
  • Сообщений: 91
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-12-08
  • Сайт: 
  • Профессия: Программист 8.1
Спасибо всем за участие. Я разобралась сама.:zebzdr:


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
55 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
27 Сообщений
Golickoff Golickoff
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 152
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal