#0
by Гений 1С
В типовом коде конфигурации «Зарплата и Управление Персоналом, редакция 2.1 (2.1.10.2)», при расчете НДФЛ за август 2007 года, в модуле «ПроведениеРасчетов» в функции «ПолучитьДанныеНДФЛПоРегистратору» в строке 5817, содержащей код: «Запрос.Текст = ИсчисленныйНДФЛТекст; Возврат Запрос.Выполнить.Выбрать», вызывалась ошибка SQL-сервера: Ошибка СУБД: Microsoft OLE DB Provider for SQL Server: The column prefix '_Document120_VT1417_Q_274_T_001' does not match with a table name or alias name used in the query. Эта ошибка связана с тем, что текст запроса увеличивается пропорционально количеству времени, прошедшего от начала учета в программе. В запросе используется список дат, соответствующих началу каждого месяца в периоде от начала года, в котором начался учет, до конца месяца периода начисления НДФЛ. Этот список дат не передавался и не формировался в запросе, а формировался непосредственно в тексте запроса. Учет ведется в базе с осени 2006 года. Соответственно, с течением времени, текст запроса превысил ограничения, предъявляемые SQL сервером и запрос перестал выполняться. Для коррекции ошибки исходный код: Был замен на новый код: Новый код заполняет список месяцев по графику работы по видам времени, который в системе заполняется для каждого месяца. Осталось непонятно, действительно ли нужно использовать при расчете НДФЛ данные с начала учета и исправлен ли в последних версиях ЗУП способ формирования списка дат. Эти вопросы планируется уточнить в 1С.
#3
by almar
Там еще есть задница - если какой-нибудь юзер по ошибке введет, например, 2077 год в дате увольнения - расчет НДФЛ валится - "недостаточно памяти".
#4
by Гений 1С
и это в типовых решениях! мда.... Кстати, я сторонник прозрачности даже в ущерб производительности. От километровых запросов тошно становится.
#8
by Саша Питерский
Если это ошибка SQL серввера 2000, то при чем тут 1С? Почему бы не перейти на SQL 2005, где эта ошибка исправлена?
#9
by Гений 1С
Видишь ли Саша питерский, это ошибка не SQL сервера, а ошибка в мозгах писателей типовых конфигураций. Ни один сервер не выдержит запроса, текст которого растет с каждым месяцем ведения учета... Как минимум одну ошибку типовые писатели сделали - НДФЛ смотрят не с начала года, а с начала учета.
#10
by Господин ПЖ
>>Видишь ли Саша питерский, это ошибка не SQL сервера, а ошибка в мозгах писателей типовых конфигураций. +1 Может и не писателей в первую очередь, а тех кто такие задачи ставит.
#11
by Feanor
Да ну ты че, чел утверждает, что ошибка то эта исправлена в 2005 скуле. А мы то деревня и нихера не знали. То есть програмеры майкрософт такие уроды нихера писать не умеют, зато вот 1С написала супер-софт, безупречность которого не может даже ставиться под сомнение. гыгыгыгы
#12
by Господин ПЖ
(+10) Хотя это цветочки... Столкнулись с задачей сопряжения учетной системы с stand-alone АРМ (АРМ не 1С-ный). Так этот АРМ ждет логин, пароль(!), набор прав и настройки торг. оборудования от учетной системы. Причем завести самому/изменить что-то из перечисленного непосредственно в АРМ нельзя(!). Мне стало страшно...
#13
by Гений 1С
я лично содрогнулся. Вот до чего доводит требования на экзаменах по 1С:специалист писать все в одном запросе. Может методистам пора пересмотреть это сомнительное правило в пользу прозрачности? ;-)
#14
by Саша Питерский
Почему она тогда под сиквелом 2005 не возникает? Или писатели из МС безупречны, не то что в 1С? :) Я, кстати, ни МС ни 1С сотрудников не обзывал и не извинял. Я всего лишь сообщил, что в СКЛ 2005 эта ошибка не возникает. Но тебе конечно же это не интересно, тебе главное 1С в очередной раз заклеймить.
#15
by Defender aka LINN
"The column prefix '_Document120_VT1417_Q_274_T_001' does not match with a table name or alias name used in the query." - тебе перевести, что это означает, или сам со словариком посидишь?
#17
by Said_We
Это означает (может, например, означать), что MS в SQL 2005 году научился чушь от 1С оптимизировать, что бы не возникало ошибки.
#18
by Саша Питерский
Ну конечно, сознание не поворачивается признать, что МС тоже может совершать ошибки :)
#19
by almar
SQL 2005 падает при отборах в списках документов, если есть документы с временем 0:00:00 в дате. Так что переход с SQL 2000 на 2005 - не панацея от всех бед
#21
by ave-kuban
а зачем 1С-ники НДФЛ смотрят не с начала года, а с начала учета??? СКЛ 2005 может работает оптимизированней или еще как, но косяк в данном случае 1с
#23
by Said_We
Почему ошибка MS? Они оптимизировали свой продукт, что бы даже тупо и не правильно написанные запросы все равно как-то работали.
#25
by Злобный Фей
Т.е. 2005 скуль умеет подключаться к недоразвитым мозгам авторов глючных запросов и выдирать оттуда че те хотели получить? Неее, ну нафиг. Пусть лучше всё валится, чем "как-то работает".
#26
by Said_We
Т.е. вы против любой оптимизации кода. Она в принципе отключается в SQL. Иногда красиво и понятно выглядящий код выполняется на порядок медленее чем не понятно и не красиво. Оптимизация и заключается в том что бы выцепить суть и написать более быстро, пусть даже не сильно понятно на первый взгляд.
#28
by Господин ПЖ
Сталкивался с запросом который делал Insert в таблицу SQL из 1С через ADO... Так он был круто написан - бралась строка и в цикле наращивалась Insert...Value...
#31
by Said_We
Да вопрос в другом. Почему 1С требует перехода на SQL 2005 иначе работать не будет нормально. А денег она даст на переход на новый сервер? Напиши нормально и будет работать и на 2000 и на 2005.
#33
by Саша Питерский
В платформе 8.1 добавили средства для обхода проблемы SQL 2000. В ЗУП 2.5 этот запрос переписан с использованием платформы 8.1 и нормально работает даже под 2000
#34
by ShoGUN
Правила оптимизации, не помню, честно говоря, откуда... 1. Не делай этого. 2. Все равно не делай.
#37
by Саша Питерский
Все таки ты не исправим в своей вере в МС или попытке заклеймить 1С. Посмотри на это с такой точки зрения: Правильный запрос не выполняется в 2000, но выполняется в 2005, потому что в СКЛ сервере поправили ошибку. Правильный запрос под 2000 не работает в 8.0 но работает в 8.1, потому что разработчики 1С придумали, как обойти ошибку 2000
#39
by Said_We
Если они смогли обойти ошибку MS, то может это совсем и не ошибка MS, а 1С. На самом деле я не люблю не MS, не 1С.
#43
by MRAK
мне кажется, ты тупишь... смотри топик: НДФЛ считается с начала года, а не с начала учета!
#44
by Саша Питерский
А как соотносится топик с тем, что у 2х версий SQL сервера разное поведение для одного и того же запроса?
#47
by Said_We
Ну это естественный процесс. Вопрос просто поставился что это однозначно ошибка .... того-то. Я бы просто не был таким категоричным. Кроме как ошибки каждого из продуктов - могут быть и ошибки взаимодействия.
#48
by Ndochp
Ну кеша там больше, или еще какое ограничение отодвинули. В общем просто 2005 съедает запросы большей длинны, чем 2000. Но это не значит, что и он не звезданется через пару лет учета.
#49
by Said_We
8.1. просто позволяет запросы большие по длине бить на части за счет временных таблиц... опа и все... и нету длинных запросов... Только долбать же сколько пришлось, что бы временные таблицы добавили.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- при обновлении с ЗУП 2.1.10.2 на ЗУП 2.5 выдаётся сообщение "Недостаточно п
- v7: ЗУП Не могу обновить ЗУП 2.1,13.1 до 2.1.14.3
- ЗУП 2.5.14.3 ЗУП 2.5.14.3 после обновления кто-нибудь пользовался обработкой
- ЗУП Решение первой задачи к экзамену "1С:Специалист ЗУП 8.1"
- ЗУП. Проблемы после переноса данных из ЗиК в ЗуП
- У кого нибудь есть правила обмена между ЗУП 8 проф и бюджетной ЗУП 8 проф?
- ЗУП (ЗБУ) 8.2 Сотрудник был отозван из отпуска. Как оформить в ЗУП?
- выгрузка из ЗУП в БП 2,0 , в док Отражение ЗП в ЗУПе нет подразделения, выгружаю
- Первоначальная выгрузка в ЗУП 3.0 из ЗУП 2.5.
- При переносе данных из ЗУП 2.5 в ЗУП 3.0 задвоилось кол-во отраб. календ. дней.
- Возврат с ЗУП 3 на ЗУП 2.5
- ЗУП 3.0, 3-0 в пользу ЗУП)
В этой группе 1С
- Внешняя обработка "Быстрая печать чеков"
- Как узнать остаток товара после проведения документа?
- передача ос на ответственном хранении
- Ошибки при обновлении
- OFF: Строим средства спасения от наводнений...
- При открытии файла excel - выбор принтера
- v7: ЗиК 275. Нужно ввести удержание с проводкой Дт70-Кт73.3
- Как вести учет номенклатуры в УПП 8.0
- Порядок процедур и функций в модуле формы
- v7: Не подрублюсь из 1С 7.7 (dbf) к 1С 7.7 (SQL) по OLE
- Как выделить жирным шрифтом одно слово в макете
- Оплаты в Торговле
- Как форматировать Excel из 1с
- Не загружается Конфигуратор 7.7.
- Как выгрузить результат запроса в табличную часть документа?
- v7: Печатная форма Т-53 "Платежной ведомости" (печать без разрыва стр.)
- чего делать с придурками
- Как отключить в Outlook окно сообщения об отправке сообщения?
- Как убрать заставку при запуске v8?
- СделатьНеПроведенным() в модуле формы.