Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

в. 7.7Бухгалтерия. Нужно выводить РН только по одному типу деталей

Zabey
читатель
офлайн
Дата регистрации: 07.12.2009
Сообщений: 39
Пост №1
 
18.12.2009 16:40

"Собственно проблема стоит в том, что при установке флажка нужно "Выводить только детали 2К" (2К - это наименование производителя). <br> Запрос = СоздатьОбъект("Запрос"); <br> ТекстЗапроса =                         <br> ....<br>       |Производитель = Документ.РасходнаяНакладная.Товар.Наименование.Производитель;<br>       ....<br>       |"//}}ЗАПРОС<br> ; <br><br>Имя2К = "2К"; <br>Если Флаг2 = 1 Тогда <br> ТекстЗапроса = ТекстЗапроса + "Условие(Производитель=Имя2К);"<br>КонецЕсли;<br><br>Поидее должно выводить детали только "2К" , но при текущей постановке запроса, без флажка он работает как обычно выводит все ЗН, когда его ставишь то при формировании он показывает пустую строку... Я думаю что неправильно указываю путь запроса... есть справочник Производители, в нем наименования самих производителей, но при создании прямой цепочки запроса в этот справочник он всеравно пишет пустую строку.. кто может подсказать в чем ошибка?"

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №2
 
18.12.2009 16:49

1. Как правильно сказали, "Производитель=Имя2К" - такая запись не правильная, поскольку сравниваете Справочник со строкой.<br>2. А вот когда сравниваете "Производитель.Наименование=Имя2К", тогда вы не учитываете пробелы. Если Наименование длиной 10 символов, то Производитель.Наименование="2К       ", а потому попробуйте добавить пробелов в конец значения переменной Имя2К до длины наименования.

Zabey
читатель
офлайн
Дата регистрации: 07.12.2009
Сообщений: 39
Пост №3
 
18.12.2009 16:58

Наименование требующихся производителей не более 3 символов, это что нужно добавить 5 пробелов к Имя2К ?<br><br>я просто не уловил ход вашей мысли

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №4
 
18.12.2009 17:14

"Можно так:<br>Условие(СокрЛП(Производитель.Наименование)=Имя2К);<br>правда работать будет подольше.<br>Вообще все верно BelikovS написал. При выполнении запроса идет сравнение двух строк, причем каждая из них имеет какую то длину.<br>Если вы видите наименование контрагента "2К", это вовсе не означает, что оно такое и есть. Реально в таблице базы данных хранится значение "2К            ", то есть, еще имеется куча пробелов в количестве, соответствующем тому, которое описано в конфигураторе как "Длина поля" (общая длина строки всегда именно такая). Поэтому если хотите сравнивать побыстрее, надо сделать что то примерно такое:<br>Имя2К="2К";<br>Для i=1 По Метаданные.Справочник("Контрагенты").ДлинаНаименования-СтрДлина(Имя2К) Цикл<br> Имя2К=Имя2К+" ";<br>КонецЦикла;<br><br>и уж потом запрос выполнять<br><br>P.S. У вас, кажется, ошибка:<br>> Производитель = Документ.РасходнаяНакладная.Товар.Наименование.Производитель;<br>наверное, надо так:<br>Производитель = Документ.РасходнаяНакладная.Товар.Производитель.Наименование;"

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №5
 
18.12.2009 17:22

"Я обычно использую такую конструкцию:<br>Строка50 = "                                                 ";<br>Имя2К = Имя2К+Лев(Строка50, Метаданные.Справочник("Контрагенты").ДлинаНаименования-СтрДлина(Имя2К));<br><br>> Для i=1 По Метаданные.Справочник("Контрагенты").ДлинаНаименования-СтрДлина(Имя2К) Цикл<br>Тут i должно начинаться с СтрДлина(Имя2К)"

Zabey
читатель
офлайн
Дата регистрации: 07.12.2009
Сообщений: 39
Пост №6
 
18.12.2009 17:32

Установить этот цикл вместо моего условия? И поместить перед началом старта запроса?

Zabey
читатель
офлайн
Дата регистрации: 07.12.2009
Сообщений: 39
Пост №7
 
18.12.2009 17:42

блин, вобщем нифига не получается отфильтровать 2К.<br>Можете подсказать как закрепить в сформированном отчете верхнюю строчку документа, тоесть когда бы мы листали табличку вниз, шапка постоянно была видна

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №8
 
18.12.2009 17:52

> Можете подсказать как закрепить в сформированном отчете верхнюю строчку документа, тоесть когда бы мы листали табличку вниз, шапка постоянно была видна<br>У таблицы метод Опции(<ВыводСетки>,<ВыводЗаголовков>,<ФиксСтрок>,<ФиксСтолбцов>,<ИмяОпцийПечати>,<ИмяСохрРазмОкна>,<ФлагЧБПросмотра>,<НаправлПерехода>)<br><br>Только в базовом виде он работает только один раз, т.е. один раз вызвал и изменению для этого объекта не подлежит.

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №9
 
18.12.2009 17:54

> блин, вобщем нифига не получается отфильтровать 2К.<br>Кстати, помимо 2-х предложенных способов, есть еще 3-й:<br>Найти элемент справочника по наименованию и использовать найденый элемент в условии.

Zabey
читатель
офлайн
Дата регистрации: 07.12.2009
Сообщений: 39
Пост №10
 
18.12.2009 18:09

"уже сделал)<br>А подскажите еще, нужно чтоб результаты обработки обнулялись после формирования отчета, чтобы не приходилось постоянно ее перезапускать?)<br><br>А насчет 3го варианта я говорил уже, он не может вытащить то что мне нужно, яж описал пример своего условия.... он отчет формирует но таблица пустая...;("

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация