не транслируются некоторые запросы, Комплексная конфигурация 1С: Update _1SSTREAM set DATE_TIME_DOCID=E '20090319ANK31S MZ1 ' where ID=1946; If @@ROWCOUNT = 0 Insert into _1SSTREAM (ID, DATE_TIME_DOCID) values (1946, E'20090319ANK31S MZ1 ') Delete from _1SDNLOCK where DNPREFIX=E' 48242009 ' and DOCNO=E'СТ00000001 ' select count(*) from SC6005(NOLO CK) where substring(ID,7,3) not in (' ','1 ') and ISMARK<>1
там же, при смене периода расчета зарплаты на более ранний, set nocount on declare @_date datetime declare @idx int declare @periodlen int declare @perioddate datetime declare @typeid int declare @holid int declare @startdate datetime, @enddate datetime select @periodlen = 1 select @perioddate = '19960101' select @typeid = 7668 select @holid = 11 select @startdate = '20030101' select @enddate = '20030131' declare @daylen numeric(6,2) declare @len0 numeric(6,2) select @len0 = 0.00 select @_date = @startdate while @_date <= @enddate begin select @idx = DateDiff(day,@perioddate,@_date) % @periodlen if (@idx<0) select @idx = @periodlen+@idx if @idx=0 begin select @daylen = @len0 end update CL set DAYLEN = @daylen where DATE = @_date and ID=@typeid if @@rowcount=0 insert into CL (DATE, DAYLEN, ID) values(@_date,@daylen,@typeid) select @_date = DATEADD(day,1,@_date)end
(In reply to comment #0) ошибки такого вида часто проявляются при различных операциях, например, при увеличении долга поставщика, при удалении помеченных объектов, при проведении некоторых других документов
+ сюда же: просмотреть список запросов MarkSQL http://bugs.etersoft.ru/attachment.cgi?id=1103 и добавить нетранслируемые
not in добавил, но запрос полностью все равно не выполняется
select count(*) from SC6005(NOLO CK) where substring(ID,7,3) not in (' ','1 ') and ISMARK<>1 работает
> Delete from _1SDNLOCK where DNPREFIX=E' 48242009 ' and > DOCNO=E'СТ00000001 ' > теперь работает
все из #0 и #1 работает
(In reply to comment #3) > + сюда же: просмотреть список запросов MarkSQL > http://bugs.etersoft.ru/attachment.cgi?id=1103 > и добавить нетранслируемые > в соответствующей баге
словил еще один нетранслированный запрос: ERROR: ошибка синтаксиса в или рядом "ERROR" на символе 7 КОМАНДА: BEGIN;ERROR: can not translate query: Update CJ7287 set RESULT=0, RECALC = RECALC&-2 where PERIOD>='20030401M' and PERIOD<='20030501M' and RECALC&16<>16 and RECALC&8<>8 and RECALC&4<>4
(In reply to comment #9) > словил еще один нетранслированный запрос: > > ERROR: ошибка синтаксиса в или рядом "ERROR" на > символе 7 > КОМАНДА: BEGIN;ERROR: can not translate query: Update CJ7287 set > RESULT=0, RECALC = RECALC&-2 where PERIOD>='20030401M' and PERIOD<='20030501M' > and RECALC&16<>16 and RECALC&8<>8 and RECALC&4<>4 > проблема в PERIOD>='20030401M' and PERIOD<='20030501M', в знаках '>='
(In reply to comment #10) > проблема в PERIOD>='20030401M' and PERIOD<='20030501M', в > знаках '>=' > исправил, появилась еще одна: ERROR: оператор не существует: tinyint &- integer на символе 52 ПОДСКАЗКА: No operator matches the given name and argument type(s). You might need to add explicit type casts. КОМАНДА: BEGIN;UPDATE CJ7287 SET RESULT = 0, RECALC = RECALC&-2 WHERE PERIOD >= '20030301M' AND PERIOD<='20030501M' AND RECALC&16<>16 AND RECALC&8<>8 AND RECALC&4<>4 на этот раз в ' &- '
(In reply to comment #11) > на этот раз в ' &- ' > такого в постгри не существует ни для tinyint &- integer, ни для integer &- integer
добавил в транслятор разруливание битовых операторов в сокращенной записи - &+, &-, |+, |-
добавил в test.sql новые запросы
снова нашел неработающий запрос, но не определил какой именно при смене расчетного периода на следующий - меняет на 2 месяца вперед. если на предыдущий - не меняет вообще. если на 2 месяца назад - меняет только на месяц назад. очевидная ошибка трансляции какого-то запроса..
словил лог сельты, но ошибок трансляции не нашел...
(In reply to comment #16) > словил лог сельты, но ошибок трансляции не > нашел... > не ошибка сельты. но и не ошибка вайна... пробовал lin+selta, lin+ms, win+selta, ошибка есть везде, не знаю в чем дело, может это и не ошибка вовсе, а связано с проведенными/непроведенными документами/операциями