Внешний отчет и пользователи

Новая тема
Показывать по сообщений
А еще "настоятельно рекомендуют" прежде чем начать программировать, научиться программировать...
"вот блин.<br>Конструктор запроса, вот его работа:<br> <br><br><pre>    Запрос = Новый Запрос;<br>    Запрос.Текст = <br>    "ВЫБРАТЬ<br>    |    РеестрНакладных.Оплачено,<br>    |    РеестрНакладныхНакладные.ДатаДок,<br>    |    РеестрНакладныхНакладные.СуммаДок,<br>    |    РеестрНакладныхНакладные.СуммаНДСДок,<br>    |    РеестрНакладныхНакладные.НазваниеДок,<br>    |    РеестрНакладныхНакладные.Документ.Номер,<br>    |    РеестрНакладныхНакладные.Документ.Дата,<br>    |    РеестрНакладныхНакладные.Документ.Ссылка,<br>    |    РеестрНакладныхНакладные.Документ.НомерВходящегоДокумента КАК НомерВходящегоДокумента,<br>    |    РеестрНакладныхНакладные.Контрагент,<br>    |    РеестрНакладных.Ссылка<br>    |ИЗ<br>    |    Документ.РеестрНакладных КАК РеестрНакладных,<br>    |    Документ.РеестрНакладных.Накладные КАК РеестрНакладныхНакладные<br>    |ГДЕ<br>    |    РеестрНакладныхНакладные.Ссылка.Дата МЕЖДУ &НачПериода И &КонПериода";<br>    Если ЗначениеЗаполнено(Организация) Тогда<br>        Запрос.Текст = Запрос.Текст + "<br>        |    И РеестрНакладныхНакладные.Документ.Организация = &Организация";<br>    КонецЕсли;<br>    Если ЗначениеЗаполнено(Номер) Тогда<br>        Запрос.Текст = Запрос.Текст + "<br>        |    И РеестрНакладныхНакладные.Документ.НомерВходящегоДокумента = &Номер";<br>    КонецЕсли;<br>    Если ЗначениеЗаполнено(Поставщик) Тогда<br>        Запрос.Текст = Запрос.Текст + "<br>        |    И РеестрНакладныхНакладные.Контрагент = &Контрагент";<br>    КонецЕсли;<br>    <br>    Запрос.УстановитьПараметр("НачПериода", НачалоДня(НачПериода));<br>    Запрос.УстановитьПараметр("КонПериода", КонецДня(КонПериода));<br>    Запрос.УстановитьПараметр("Номер", Номер);<br>    Запрос.УстановитьПараметр("Контрагент", Поставщик);<br>    Запрос.УстановитьПараметр("Организация", Организация);<br>    <br>    ТЗ = Запрос.Выполнить().Выгрузить();<br></pre><br><br> <br>А еще "настоятельно рекомендуют" учиться программировать на практике. И читать вопрос. ПОД ПОЛНЫМИ ПРАВАМИ РАБОТАЕТ. Под неполными нет. Почему?"
"> А еще "настоятельно рекомендуют" учиться программировать на практике.<br> <br>Интересно кто? Это же прямой метод для размножения "дятлов"...<br> <br>По существу:<br>1. Убрать из запроса вторую таблицу и получить значение "Оплачено" через "РеестрНакладныхНакладные.Ссылка.Оплачено" (для упрощения).<br>2. Использовать в запросе "ВЫБРАТЬ РАЗРЕШЕННЫЕ".<br>3. Локализовать возникновение ошибки, разделив проблемную строку на операции, а именно:<br> <br>Результат = Запрос.Выполнить();<br>ТЗ           = Результат.Выгрузить();"
А ты как учился? Изучил всю теорию, сел, и сразу же начал кодить как бог?<br> <br>Сейчас попробую.. Странно это всё, конечно.
Я что-то не вижу противоречий.<br>При чем тут внешний отчет?<br> <br>Сколько типов у реквизита "Документ" табличной части "Накладные" документа "РеестрНакладных"?<br> <br>Делая получение составного реквизита через точку (РеестрНакладныхНакладные.Документ.Ссылка), вы делаете столько левых соединений, сколько у вас там может быть типов.<br> <br>Если полные права еще тянут, то в случае неполных прав, на каждое левое соединение накладывается еще одно соединение - по RLS.
Оказалось, проблема в лишней таблицце.<br>Денис, может объяснишь, почему так?<br> <br>Что же, впредь буду внимательнее. Всем спасибо!
Все таки лучше для начала прочитать "теорию", а еще у 1С есть удаленный курс по составлению запросов. ИМХО на форуме не научить толком ничему...
Читают тему
(гостей: 1)

Быстрый переход