Как передать параметр времени выполнения в запросе hql в openbravo?

Я сделал этот запрос для виджета. Он работает правильно, если я передаю значение напрямую (т.е. ad_role_id). Но он не запускается, когда я использую динамический параметр (: роль).

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

hql-запрос:

SELECT ORG.name AS orgName
    ,INV.documentNo  AS documentNo
    ,INV.invoiceDate AS invoiceDate
    ,BP.name AS name 
    ,DT.name AS Doctype
    ,INV.grandTotalAmount AS grandTotalAmount

FROM Invoice INV,
DocumentType AS DT,
BusinessPartner AS BP,
Organization AS ORG
WHERE ORG.id = INV.organization
AND BP.id = INV.businessPartner
AND INV.transactionDocument = DT.id
AND INV.salesTransaction = 'N'
AND INV.id not in (select distinct e.invoice from InvoiceLine e )
AND INV.organization.id IN (select o.id
from Organization AS o,ADRoleOrganization AS arg,ADRole AS ar
where arg.organization = o.id
and ar.id = arg.role
and arg.role = :role)

person user    schedule 29.11.2014    source источник


Ответы (1)


Вероятно, ваша конфигурация параметров для роли неверна.

используйте Default_Filter_Expressions и настройте роль как фиксированное значение в параметре.

http://wiki.openbravo.com/wiki/Projects:Selector/Default_Filter_Expressions

person Thirumalai    schedule 17.12.2014