#0
by Salamona
Помогите начинающему программисту 1С, please, с запросами, измучали они меня уже порядком. Есть у меня такой отчет в Упраление Торговлей 8.1, который называется "Реестр по приходным накладным", отчет формируется на основании проведенных документов "Поступление товаров и услуг" и "Счет-фактура полученный". В этом отчете уже реализовано: 1) период - устанавл-ся пользователем вручную, узел выбирается из выпадающего списка (т.е. по каким магазинам формируется отчет), вид отчета выбирается из списка (полный, товары, услуги, основные средства); 2) На форме настройки параметров отчета размещены закладки (основные параметры, отбор, порядок, настройки внешнего вида); 3) На закладке «Основные параметры» предоставляется возможность выбора полей: документ поступления, сч/фактура полученный, сумма из документа поступления, сумма из док-та сч/фактура получ., сумма без НДС из док-та поступления, сумма без НДС из док-та сч/фактура полученный, сумма НДС из документа поступления, сумма НДС из док-та сч/фактура полученный (При необходимости у пользователя есть возможность выбора любого поля, входящего в состав реквизитов документов поступления и счет-фактур полученных); 4) Если у документа «Пост.товаров и услуг» отсутствует связанный документ «Счет-фактура полученный», соответствующие поля в отчете не заполняются 5) В итоговой строке вычисляется сумма по следующим полям: - сумма из документа поступления; - сумма из документа сч/фактура полученный; - сумма без НДС из док-та поступления; - сумма без НДС из док-та сч/фактура полученный; - сумма НДС из док-та поступления; - сумма НДС из док-та сч/фактура полученный 6) В нижней части отражается информация: - количество документов поступления; - количество сч/фактур полученных 7) В печатной форме отображается дата и время печати, компьютер и пользователь 8) При формировании отчета осуществляется контроль: - дата док-та «Поступление тов.и услуг» = дата сч/фактура полученный - наименование контрагента док-та «Поступление тов.и услуг» = наим.контрагента сч/фактура полученный - сумма док-та «Поступление тов.и услуг» = сумма сч/фактура полученный - сумма НДС док-та «Поступление тов.и услуг» = сумма НДС сч/фактура полученный - дата док-та «Поступление тов.и услуг» = входящей дате сч/фактура полученный НУЖНО СДЕЛАТЬ: - Если у документа «Счет-фактура полученный» документ-основание «Пост.товаров и услуг» отсутствует или не является проведенным, поля «Документ Поступления», «Сумма из документа поступления», «Сумма без НДС из документа поступления», «Сумма НДС из документа поступления», «Дата документа поступления» в отчете не заполняются - Если у документа «Пост.товаров и услуг» отсутствует связанный документ «Счет-фактура полученный», соответствующие поля в отчете не заполняются Я ДЕЛАЮ: пишу запрос в модуле Формы – Отчет - Процедура ОтчетИнициализация ОБЪЕДИНИТЬ ВЫБРАТЬ СчетФактураПолученныйТовары.Ссылка.ДокументОснование, СчетФактураПолученныйТовары.Ссылка.Ссылка, 0, 0, 0, "некорректно" ИЗ ГДЕ СчетФактураПолученныйТовары.Ссылка.Дата МЕЖДУ &Дата1 И &Дата2 ВЫХОДИТ ОШИБКА: Разное количество полей объединяемых в запросах Посмотрите пожалуйста, в чем ошибка?
#4
by Point
А я думал никто даже читать этот роман не будет, а нет не перевелись еще любители книг :)
#7
by Kreont
В каждой секции между тем что ОБЪЕДИНИТЬ между ВЫБРАТЬ и ИЗ должно быть равное количество запятых :)
#9
by Salamona
СчетФактураПолученныйТовары.Ссылка.Ссылка, 0, 0, 0, "некорректно" ИЗ ГДЕ СчетФактураПолученныйТовары.Ссылка.Дата МЕЖДУ &Дата1 И &Дата2
#15
by пента
имеется только в электронном виде - С.МИТИЧКИН РАЗРАБОТКА В СИСТЕМЕ 1С:ПРЕДПРИЯТИЕ 8.0 в конфигураторе Shift+F1 - встроенный язык - работа с запросами - язык запросов
#17
by DUDE
Есть методичка по запросам типа как с курсов учебных центров 1С. Книги по основам SQL (про селект-запрос) помогут понять тк это "старший брат" запросов 1С, ну и встроенные справки не забывай. Еще есть в и-нете ЕСИС "Единая Справочно-Информационная Система" - подборка статей и книг по 1С (по 8.0).
#18
by DUDE
Это тебе решать. Можно забить их пустыми значениями, если во второй выборке нет такой инфы.
#20
by TheNewOne
Если грубо навскидку, то Внимание на "ОБЪЕДИНИТЬ ВСЕ" Но скорее всего это не сработает, отбразится что-то не то, короче лучшие советы имхо - и
#25
by пента
СчетФактураПолученныйТовары.Ссылка.ДокументОснование, СчетФактураПолученныйТовары.Ссылка.Ссылка, 0, СчетФактураПолученныйТовары.Сумма, СчетФактураПолученныйТовары.Сумма - СчетФактураПолученныйТовары.СуммаНДС, 0, 0, СУММА(СчетФактураПолученныйТовары.СуммаНДС), "некорректно", 0, NULL, СчетФактураПолученныйТовары.Ссылка.Дата
#26
by пента
СчетФактураПолученныйТовары.Ссылка.ДокументОснование, СчетФактураПолученныйТовары.Ссылка.Ссылка, 0, СчетФактураПолученныйТовары.Сумма, СчетФактураПолученныйТовары.Сумма - СчетФактураПолученныйТовары.СуммаНДС, 0, СУММА(СчетФактураПолученныйТовары.СуммаНДС), "некорректно", 0, NULL, СчетФактураПолученныйТовары.Ссылка.Дата
#27
by Salamona
Выдает ошибку {Отчет.РеестрПоПриходнымНакладным.Форма.Отчет(761,7)}: Ожидается ключевое слово 'КонецПроцедуры' ('EndProcedure')
#29
by Salamona
Спасибо помогло, но зато выходит ещё одна ошибка {Отчет.РеестрПоПриходнымНакладным.Форма.Отчет}: Ошибка при установке значения атрибута контекста (Текст): {(158, 4)}: Поле не входит в группу "СчетФактураПолученныйТовары.Сумма" <<?>>СчетФактураПолученныйТовары.Сумма, ПостроительОтчетаОтчет.Текст = по причине: {(158, 4)}: Поле не входит в группу "СчетФактураПолученныйТовары.Сумма" <<?>>СчетФактураПолученныйТовары.Сумма,
#30
by Rie
Если есть группировка в запросе, то поле надо или включить в группировку, или использовать агрегатную функцию. Вроде бы выше в обсуждении было СУММА(СчетФактураПолученныйТовары.Сумма), видимо, эта СУММА где-то потерялась.
#31
by Salamona
я ее вставила опять, в итоге получилось ОБЪЕДИНИТЬ | | ВЫБРАТЬ ВЫДАЕТ ОШИБКУ {Отчет.РеестрПоПриходнымНакладным.Форма.Отчет}: Ошибка при установке значения атрибута контекста (Текст): Разное количество полей в объединяемых запросах ПостроительОтчетаОтчет.Текст = по причине: Разное количество полей в объединяемых запросах
#32
by Rie
И вернулись в начало обсуждения... Количество полей в объединяемых запросах должно быть одинаковым. Если что-то вставлено в один из объединяемых запросов - то этому "что-то" должно быть соответствие и во всех других объединяемых запросах. Хотя бы 0 - но должно быть соответствующее поле. Просмотри все объединяемые запросы и убедись, что для первого поля есть везде соответствующие поля, для второго и т.д.
#33
by Salamona
ВЫБРАТЬ Потом выдало ошибку {Отчет.РеестрПоПриходнымНакладным.Форма.Отчет}: Ошибка при вызове метода контекста (Вывести): {(171, 59)}: Не задано значение параметра "Неопределенно" ПостроительОтчетаОтчет.Вывести(ЭлементыФормы.ПолеТабличногоДокумента); по причине: {(171, 59)}: Не задано значение параметра "Неопределенно" И СчетФактураПолученныйТовары.Ссылка.ДокументОснование = <<?>>&Неопределенно
#36
by Rie
Там потом надо сказать Запрос.УстановитьПараметр("Неопределено",ИТутЗначениеЭтогоПараметра); Но значением не будет Неопределено, там будет пустая ссылка. Либо NULL. Поскольку Неопределено не может хранится в таблицах.
#37
by Salamona
Может надо в конструкторе выходной формы делать? Вот только я не разобралась с ним :((
#40
by Rie
+ Такое ощущение, что Вам нужно просто ПОЛНОЕ СОЕДИНЕНИЕ таблиц для поступлений и счетов-фактур - с проверкой полей на NULL и заполнением NULL-полей чем-то вроде "не найдено", "отсутствует" или "ой, потеряли".
#41
by los_hooliganos
девушку надо отослать к основам реляционной алгебры. Пару часов поизучает, зато потом вопросов на всю оставщуюся жизнь не будет.
#44
by Salamona
Rie вот я старую на вашу обработку поменяла ОБЪЕДИНИТЬ | В ИТОГЕ ОШИБКА {Отчет.РеестрПоПриходнымНакладным.Форма.Отчет}: Ошибка при установке значения атрибута контекста (Текст): Разное количество полей в объединяемых запросах ПостроительОтчетаОтчет.Текст = по причине: Разное количество полей в объединяемых запросах
#45
by Salamona
Что-то я не поняла, как поменять смысл запроса? НУЖНО СДЕЛАТЬ: - Если у документа «Счет-фактура полученный» документ-основание «Пост.товаров и услуг» отсутствует или не является проведенным, поля «Документ Поступления», «Сумма из документа поступления», «Сумма без НДС из документа поступления», «Сумма НДС из документа поступления», «Дата документа поступления» в отчете не заполняются - Если у документа «Пост.товаров и услуг» отсутствует связанный документ «Счет-фактура полученный», соответствующие поля в отчете не заполняются ЧТО ДЕЛАТЬ?
#50
by hhhh
значит, он забыл сказать, что по правилам русского языка, орфографии, морфологии, пишется НЕОПРЕДЕЛЕНО.
#53
by Rie
Да почему же? Вам же посоветовали - аккуратно пересчитать число полей в объединяемых подзапросах. Оно везде должно быть одним и тем же. Если различается - то отсутствующее поле добавить и заполнить чем-нибудь по умолчанию (да хоть числом 0, если это ничему не повредит).
#57
by Salamona
Хорошо, спасибо большое. Вроде поменяла запрос | ОБЪЕДИНИТЬ | Теперь ошибку выдает {Отчет.РеестрПоПриходнымНакладным.Форма.Отчет}: Ошибка при установке значения атрибута контекста (Текст): {(169, 12)}: Поле не найдено "СчетФактураПолученныйДокументыОснования.ДокументОснование" И <<?>>СчетФактураПолученныйДокументыОснования.ДокументОснование = &Неопределено
#60
by Salamona
Ну, а я вам на почту сейчас скину внешними обработками, эти реестры, когда они были в начальном варианте
#63
by Salamona
Эту проблемочку решила, спасибо всем. Прочитала реляционную алгебру, научилась пользоваться конструктором запросов.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Терминал. RDP и ICA. Разное время у одного юзверя...
- Остаток отпуска - разное колличество дней отпуска - существенные условия ТД?
- Разное количество полей в объединяемых запросах
- ОФФ: Индексация полей в запросах.
- Один и тот же запрос в разное время работает по-разному
- Разное количество полей в объединяемых запросах
- Заполнение полей формы одного документа на основании полей другого.
В этой группе 1С
- v8: Как загрузить внешнюю компоненту в режиме "Клиент-сервер"
- Как избавится от незаполненного поля в документе в запросе?
- Граница запрета редактирования
- Как подписчику ИТС имеющему рег. номер продукта скачать обновления?
- Пакетный запуск 1С для выполнения обмена РИБ
- v8: УПП 1.2 Отчет Ведомость по учету МПЗ: ничего не отражает по УУ
- ДобавитьГлобальныйМодуль - лыжи?
- РЛС и доступ к иерархическим справочникам
- Через FAR не открывается сетевое окружение
- Импорт данных в 1С Налогоплательщик из файлов ПФР и 2НДФЛ
- Документация к "ОтчетСписокКроссТаблица"
- Не коннектится icq
- v7: УПП 1.2 (1.2.26.1) "Для целей учета НДС не списано 1,000 товара..."
- v8: Конвертация создает элементы вместо групп
- ЗУП и отрицательный НДФЛ
- Сколько времени сейчас нужно на покупку УПП ?
- Metrologic зависает
- Как очистить регистр накопления?!
- Подключение торгового оборудования
- BIOS для Asus