|
|
|
Проблема со схемой запроса. soldierboy, AlexKimp, kostik79, Hawk_1c, trad, arsik, formista2000, AntiBuh, ГдеСобакаЗарыта, TormozIT, Бычье сердце, crotnn, nextssbt, spiller26, 1cVandal, serpentt, Vostochnick, Ильф, craxx, alexxx961503, СвинТуз, Prog_man, saaken, Михаил Козлов, breezee, Amfiaray, ads55, Кир Пластелинин, laeg, alex_kld_2024, zenik, rbcvg, Hmster, ЕRPe, SleepyHead, Eiffil123, piter3, Михаил_, Ногаминебить, 2S, zva, d4rkmesa, программистище, Kigo_Kigo, pasha_d, maxar, Crusher, Мультук, Волшебник, lubitelxml, RomanYS, KuznecovvIvan, katamoto, Galaad, _Batoo, toypaul, Timon1405, Rovan, denk32, Phace, Ненавижу 1С, LuckyStar, elka302
| ☑ | ||
|---|---|---|---|---|
|
0
soldierboy
03.12.25
✎
17:06
|
Всем привет, не могу решить проблему с операциями веденными в ручную в 1С БП
Поле объекта не обнаружено (Тип) {PEN005_BUH_ROLE Документ.ОперацияБух.Форма.ФормаСписка.Форма(42)}:Пока КонечныйИсточник.Источник.Тип = Тип("ИсточникЗапросаСхемыЗапроса") Цикл {PEN005_BUH_ROLE Документ.ОперацияБух.Форма.ФормаСписка.Форма(5)}:PEN005_ИзменитьЗапросСписка(ЭтотОбъект.Список); {ОбщийМодуль.ОбщегоНазначенияБПКлиент.Модуль(977)}:ОткрытьФорму(ПараметрыОткрытия.ИмяФормы, {ОбщаяФорма.ДлительнаяОперацияОткрытиеСписка.Форма(40)}:ОбщегоНазначенияБПКлиент.ОткрытьОсновнуюФорму(Истина, ПараметрыОткрытияКлиент, Параметры.ПараметрыОткрываемойФормы); [ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка] Вот код &НаСервере Процедура PEN005_ИзменитьЗапросСписка(Знач оСписок) Перем СхемаЗапроса, ОператорЗапроса, Источники, ИсточникПравый, ИсточникЛевый, сВыражение, Параметр; СхемаЗапроса = Новый СхемаЗапроса(); СхемаЗапроса.УстановитьТекстЗапроса(оСписок.ТекстЗапроса); ОператорЗапроса = СхемаЗапроса.ПакетЗапросов[0].Операторы[0]; Источники = ОператорЗапроса.Источники; ИсточникПравый = Источники.Добавить("РегистрБухгалтерии.Хозрасчетный.Обороты", "ХозрасчетныйОбороты"); ИсточникПравый.Источник.Параметры[2].Выражение = Новый ВыражениеСхемыЗапроса("Регистратор"); ИсточникПравый.Источник.Параметры[3].Выражение = Новый ВыражениеСхемыЗапроса("Счет В (&СчетаСОграничениями)"); ИсточникЛевый = Источники.НайтиПоИмени("Документ.ОперацияБух"); ИсточникЛевый.Соединения.Добавить(ИсточникПравый, "ДокументОперацияБух.Ссылка = ХозрасчетныйОбороты.Регистратор"); ИсточникЛевый.Соединения[0].ТипСоединения = ТипСоединенияСхемыЗапроса.ЛевоеВнешнее; сВыражение = " |ВЫБОР | КОГДА ХозрасчетныйОбороты.Счет ЕСТЬ NULL | ТОГДА ЛОЖЬ | ИНАЧЕ ИСТИНА |КОНЕЦ"; ОператорЗапроса.ВыбираемыеПоля.Добавить(сВыражение, 0); СхемаЗапроса.ПакетЗапросов[0].Колонки[0].Псевдоним = "ЕстьСчетаСОграничениями"; оСписок.ТекстЗапроса = СхемаЗапроса.ПолучитьТекстЗапроса(); оСписок.УстановитьОбязательноеИспользование("ЕстьСчетаСОграничениями", Истина); Параметр = оСписок.Параметры.Элементы.Найти("СчетаСОграничениями"); Параметр.Значение = PEN005_УправлениеДоступом.PEN005_СчетаЗарплаты(); Параметр.Использование = Истина; КонецПроцедуры Кто знает в чем может быть проблема? |
|||
|
1
1cVandal
03.12.25
✎
17:10
|
Отладка в этом месте "КонечныйИсточник.Источник" что показывает?
|
|||
|
2
mikecool
03.12.25
✎
17:31
|
в ошибке одно расширение, кяп, в тексте запроса - другое...
|
|||
|
3
СвинТуз
04.12.25
✎
09:10
|
КонечныйИсточник.Источник это строка видимо
соответственно свойств нет у нее |
|||
|
4
СвинТуз
04.12.25
✎
09:10
|
тут лажа
ИсточникПравый = Источники.Добавить("РегистрБухгалтерии.Хозрасчетный.Обороты", "ХозрасчетныйОбороты"); |
|||
|
5
Ненавижу 1С
гуру
04.12.25
✎
09:11
|
сВыражение = "
|ВЫБОР | КОГДА ХозрасчетныйОбороты.Счет ЕСТЬ NULL | ТОГДА ЛОЖЬ | ИНАЧЕ ИСТИНА |КОНЕЦ"; можно упростить до НЕ ХозрасчетныйОбороты.Счет ЕСТЬ NULL |
|||
|
6
soldierboy
04.12.25
✎
15:34
|
(5) исправил запрос
Обнаружено дублирование ключевых значений в колонках: "Ссылка". Отображение данных в списке невозможно. Выдает теперь данную ошибку. Вот код процедуры &НаСервере Процедура PEN005_ИзменитьЗапросСписка(Знач оСписок) Перем СхемаЗапроса, ОператорЗапроса, Источники, ИсточникПравый, ИсточникЛевый, сВыражение, Параметр; СхемаЗапроса = Новый СхемаЗапроса(); СхемаЗапроса.УстановитьТекстЗапроса(оСписок.ТекстЗапроса); ОператорЗапроса = СхемаЗапроса.ПакетЗапросов[0].Операторы[0]; Источники = ОператорЗапроса.Источники; ИсточникПравый = Источники.Добавить("РегистрБухгалтерии.Хозрасчетный.Обороты", "ХозрасчетныйОборотыОграничения"); ИсточникПравый.Источник.Параметры[2].Выражение = Новый ВыражениеСхемыЗапроса("Регистратор"); ИсточникПравый.Источник.Параметры[3].Выражение = Новый ВыражениеСхемыЗапроса("Счет В (&СчетаСОграничениями)"); ИсточникЛевый = Источники.НайтиПоИмени("Документ.ОперацияБух"); ИсточникПравый.Соединения.Добавить(ИсточникЛевый, "ХозрасчетныйОборотыОграничения.Регистратор = ДокументОперацияБух.Ссылка"); ИсточникПравый.Соединения[0].ТипСоединения = ТипСоединенияСхемыЗапроса.ЛевоеВнешнее; сВыражение = "НЕ ХозрасчетныйОборотыОграничения.Счет ЕСТЬ NULL"; ОператорЗапроса.ВыбираемыеПоля.Добавить(сВыражение, 0); СхемаЗапроса.ПакетЗапросов[0].Колонки[0].Псевдоним = "ЕстьСчетаСОграничениями"; оСписок.ТекстЗапроса = СхемаЗапроса.ПолучитьТекстЗапроса(); оСписок.УстановитьОбязательноеИспользование("ЕстьСчетаСОграничениями", Истина); Параметр = оСписок.Параметры.Элементы.Найти("СчетаСОграничениями"); Параметр.Значение = PEN005_УправлениеДоступом.PEN005_СчетаЗарплаты(); Параметр.Использование = Истина; КонецПроцедуры а вот конечный запрос исходя из отладчика ВЫБРАТЬ НЕ ХозрасчетныйОборотыОграничения.Счет ЕСТЬ NULL КАК ЕстьСчетаСОграничениями, ДокументОперацияБух.ПометкаУдаления КАК ПометкаУдаления, ДокументОперацияБух.Номер КАК Номер, ДокументОперацияБух.Дата КАК Дата, ДокументОперацияБух.МежотчетныйПериод КАК МежотчетныйПериод, ДокументОперацияБух.Проведен КАК Проведен, ДокументОперацияБух.Организация КАК Организация, ДокументОперацияБух.СуммаОперации КАК СуммаОперации, ДокументОперацияБух.Содержание КАК Содержание, ДокументОперацияБух.СпособЗаполнения КАК СпособЗаполнения, ДокументОперацияБух.СторнируемыйДокумент КАК СторнируемыйДокумент, ДокументОперацияБух.Ответственный КАК Ответственный, ДокументОперацияБух.Комментарий КАК Комментарий, ДокументОперацияБух.ТиповаяОперация КАК ТиповаяОперация, ДокументОперацияБух.МоментВремени КАК МоментВремени, ВЫБОР КОГДА ДокументОперацияБух.ПометкаУдаления = ИСТИНА ТОГДА 2 ИНАЧЕ 1 КОНЕЦ КАК СостояниеДокумента, ВЫБОР КОГДА НаличиеФайлов.ЕстьФайлы ЕСТЬ NULL ТОГДА 1 КОГДА НаличиеФайлов.ЕстьФайлы ТОГДА 0 ИНАЧЕ 1 КОНЕЦ КАК ЕстьФайлы, СостоянияПоОбъектамУчета.ПредставлениеСостояния КАК СостояниеЭДО ИЗ РегистрБухгалтерии.Хозрасчетный.Обороты(, , Регистратор, Счет В (&СчетаСОграничениями)) КАК ХозрасчетныйОборотыОграничения ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОперацияБух КАК ДокументОперацияБух {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеФайлов КАК НаличиеФайлов ПО ДокументОперацияБух.Ссылка = НаличиеФайлов.ОбъектСФайлами} {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияПоОбъектамУчетаЭДО КАК СостоянияПоОбъектамУчета ПО ДокументОперацияБух.Ссылка = СостоянияПоОбъектамУчета.СсылкаНаОбъект} ПО ХозрасчетныйОборотыОграничения.Субконто1 = ДокументОперацияБух.Ссылка И ХозрасчетныйОборотыОграничения.Субконто2 = ДокументОперацияБух.Ссылка И ХозрасчетныйОборотыОграничения.Субконто3 = ДокументОперацияБух.Ссылка И ХозрасчетныйОборотыОграничения.КорСубконто1 = ДокументОперацияБух.Ссылка И ХозрасчетныйОборотыОграничения.КорСубконто2 = ДокументОперацияБух.Ссылка И ХозрасчетныйОборотыОграничения.КорСубконто3 = ДокументОперацияБух.Ссылка И (ХозрасчетныйОборотыОграничения.Регистратор = ДокументОперацияБух.Ссылка) |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |