1

Тема: Связи между документами - SQL-формула

Добрый день.

Как для поля прописать выполнение SQL-функции "Trim(BK.GetLanAddress(CLEANOBJ))", где CLEANOBJ - поле этого же  документа.

Нужно перезаполнить поле в т.ч. для уже введенных документов.
Т.е., это вычисление в пределах одного документа.

2

Re: Связи между документами - SQL-формула

Можно написать эту формулу как строку макроса, только заменив точку на двоеточие:)
Например, вот так "Trim(BK:GetLanAddress(doc.CLEANOBJ))" оно будет для пересчета Родитель->Родитель

3 Отредактировано Dr.Sydorenko (2017-05-16 16:15:06)

Re: Связи между документами - SQL-формула

Что-то не так sad

Результат компиляции:

SetEval(ReTranMacro([Trim(BK:GetLanAddress(doc.CLEANOBJ))]))

http://wgsoftpro.com/forum/extensions/hcs_image_uploader/uploads/0/0/311/thumb/p1bg8ph5ap2r8qrm4211a28jun1.jpg

Но получаю ошибку:

Error 7200:  AQE Error:  State = 42000;
   NativeError = 2115;
  [iAny
where Solutions]
[Advantage SQL Engine]
Expected lexical element not found: AS [Parsing Expression (column 7 in the 
SELECT clause)]
 -- Location of error in the SQL statement is: 233
Query text :
INSERT 
INTO #sodcontrol(id,type,koddoc,uniquesod,fieldname,parentvalue,childvalue,comment) 
SELECT          2 as id,          1 as type, doc.koddoc,0 as uniquesod,'ADDRESS' as fieldname, CAST(doc."ADDRESS" AS SQL_CHAR) as parentvalue,/*!*/ CAST(Trim(BK.GetLanAddress(doc.CLEANOBJ)) AS SQL_CHAR) as childvalue, 'Trim(BK.GetLanAddress(parent.CLEANOBJ))' 
FROM dc000027 doc 
WHERE doc.priznak=       109 AND doc."ADDRESS" <> Trim(BK.GetLanAddress(doc.CLEANOBJ))

Поле "ADDRESS" Строка(200), если важно

Post's attachments

save.formula 273 b, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.

4

Re: Связи между документами - SQL-формула

Все еще актуально

5 Отредактировано Igor Golobrodskiy (2017-06-08 13:01:24)

Re: Связи между документами - SQL-формула

Сорри, за задержку с ответом, но Вы явно лишние кавычки написали. Я выделил ими текст, но самих их писать не надо

6

Re: Связи между документами - SQL-формула

Так без кавычек не дает ввести строку макроса...

7

Re: Связи между документами - SQL-формула

Чтобы не забыть.
В строке макроса нужно заменить ВСЕ точки на двоеточие