192 lines
5.3 KiB
Plaintext
192 lines
5.3 KiB
Plaintext
////////////////////////////////////////////////////////////////////////////////
|
|
// Hook for dbs | invoice
|
|
// => Sets for user in d.3 admin
|
|
// File-Encoding: UTF-8 without BOM( Test: ü,ä,ö )
|
|
//------------------------------------------------------------------------------
|
|
// Created/Edited | Description
|
|
//------------------------------------------------------------------------------
|
|
// 08.2017 | dbs | invoice workflow 1.1.0
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Dynamic value sets
|
|
/*------------------------------------------------------------------------------
|
|
// - GetCurrency
|
|
// - GetCreditorNo
|
|
// - GetCreditorName
|
|
// - GetCompanyCode
|
|
// - GetClient
|
|
//------------------------------------------------------------------------------
|
|
*/
|
|
proc GetCurrency( pReposId, pUser, pDocTypeShort, pRowNo )
|
|
{
|
|
vars lFromClause
|
|
//add scheme to from clause if set
|
|
if(gGMF_SCHEME_NAME != "")
|
|
{
|
|
lFromClause = ":(gGMF_SCHEME_NAME).:(gGMF_TABLE_CURRENCIES)"
|
|
}
|
|
else
|
|
{
|
|
lFromClause = ":gGMF_TABLE_CURRENCIES"
|
|
}
|
|
|
|
DBMS ALIAS d3server_value_char_allowed, d3server_repos_id_allowed
|
|
DBMS SQL SELECT DISTINCT iso, \
|
|
:pReposId \
|
|
FROM :lFromClause \
|
|
ORDER BY iso
|
|
DBMS ALIAS
|
|
}//end of GetCurrency
|
|
|
|
proc GetCreditorNo( pReposId, pUser, pDocTypeShort, pRowNo )
|
|
{
|
|
vars lWhereClause = "", lContactId = "", lClient = "", lCompanyCode = "", lContactName = "", lFromClause
|
|
|
|
lContactId = dok_dat_feld[ gDDF_CONTACT_ID ]
|
|
|
|
// add wildcard
|
|
lContactId = lContactId ## "%"
|
|
lWhereClause = "WHERE creditor_no LIKE :+lContactId"
|
|
|
|
// if company code is known add to where-clause
|
|
lCompanyCode = dok_dat_feld[ gDDF_COMPANY_CODE ]
|
|
if ( lCompanyCode != "" )
|
|
{
|
|
lWhereClause = lWhereClause ## " AND company_code = :+lCompanyCode "
|
|
}
|
|
|
|
// if name is known add to where-clause
|
|
lContactName = dok_dat_feld[ gDDF_CONTACT_NAME ]
|
|
if ( lContactName != "" )
|
|
{
|
|
lContactName = lContactName ## "%"
|
|
lWhereClause = lWhereClause ## " AND name LIKE :+lContactName "
|
|
}
|
|
|
|
// if client is known add to where-clause
|
|
lClient = dok_dat_feld[ gDDF_CLIENT ]
|
|
if ( lClient != "" )
|
|
{
|
|
lWhereClause = lWhereClause ## " AND client = :+lClient "
|
|
}
|
|
|
|
//add scheme to from clause if set
|
|
if(gGMF_SCHEME_NAME != "")
|
|
{
|
|
lFromClause = ":(gGMF_SCHEME_NAME).:(gGMF_TABLE_CREDITORS)"
|
|
}
|
|
else
|
|
{
|
|
lFromClause = ":gGMF_TABLE_CREDITORS"
|
|
}
|
|
|
|
DBMS ALIAS d3server_value_char_allowed, d3server_repos_id_allowed
|
|
DBMS SQL SELECT DISTINCT creditor_no, \
|
|
:pReposId \
|
|
FROM :lFromClause :lWhereClause \
|
|
ORDER BY creditor_no
|
|
DBMS ALIAS
|
|
}//end of GetCreditorNo
|
|
|
|
proc GetCreditorName( pReposId, pUser, pDocTypeShort, pRowNo )
|
|
{
|
|
vars lWhereClause = "", lContactName = "", lClient = "", lCompanyCode = "", lContactId = "", lFromClause
|
|
|
|
lContactName = dok_dat_feld[ gDDF_CONTACT_NAME ]
|
|
|
|
// add wildcard
|
|
lContactName = lContactName ## "%"
|
|
lWhereClause = "WHERE name LIKE :+lContactName"
|
|
|
|
// if company code is known add to where-clause
|
|
lCompanyCode = dok_dat_feld[ gDDF_COMPANY_CODE ]
|
|
if ( lCompanyCode != "" )
|
|
{
|
|
lWhereClause = lWhereClause ## " AND company_code = :+lCompanyCode "
|
|
}
|
|
|
|
// if client is known add to where-clause
|
|
lClient = dok_dat_feld[ gDDF_CLIENT ]
|
|
if ( lClient != "" )
|
|
{
|
|
lWhereClause = lWhereClause ## " AND client = :+lClient "
|
|
}
|
|
|
|
// if creditor_no is known add to where-clause
|
|
lContactId = dok_dat_feld[ gDDF_CONTACT_ID ]
|
|
if ( lContactId != "" )
|
|
{
|
|
lWhereClause = lWhereClause ## " AND creditor_no = :+lContactId "
|
|
}
|
|
|
|
//add scheme to from clause if set
|
|
if(gGMF_SCHEME_NAME != "")
|
|
{
|
|
lFromClause = ":(gGMF_SCHEME_NAME).:(gGMF_TABLE_CREDITORS)"
|
|
}
|
|
else
|
|
{
|
|
lFromClause = ":gGMF_TABLE_CREDITORS"
|
|
}
|
|
|
|
DBMS ALIAS d3server_value_char_allowed, d3server_repos_id_allowed
|
|
DBMS SQL SELECT DISTINCT name, \
|
|
:pReposId \
|
|
FROM :lFromClause :lWhereClause \
|
|
ORDER BY name
|
|
DBMS ALIAS
|
|
}//end of GetCreditorName
|
|
|
|
proc GetClient( pReposId, pUser, pDocTypeShort, pRowNo )
|
|
{
|
|
vars lFromClause
|
|
|
|
//add scheme to from clause if set
|
|
if(gGMF_SCHEME_NAME != "")
|
|
{
|
|
lFromClause = ":(gGMF_SCHEME_NAME).:(gGMF_TABLE_COMPANY_CODE)"
|
|
}
|
|
else
|
|
{
|
|
lFromClause = ":gGMF_TABLE_COMPANY_CODE"
|
|
}
|
|
DBMS ALIAS d3server_value_char_allowed, d3server_repos_id_allowed
|
|
DBMS SQL SELECT DISTINCT client_id, \
|
|
:pReposId \
|
|
FROM :lFromClause \
|
|
ORDER BY client_id
|
|
DBMS ALIAS
|
|
}//end of GetClient
|
|
|
|
proc GetCompanyCode( pReposId, pUser, pDocTypeShort, pRowNo )
|
|
{
|
|
//CompanyCode depends on Client
|
|
vars lFromClause, lWhereClause, lClient
|
|
|
|
lWhereClause = ""
|
|
lClient = dok_dat_feld[ gDDF_CLIENT ]
|
|
|
|
if ( lClient != "" )
|
|
{
|
|
lWhereClause = "WHERE client_id = :+lClient"
|
|
}
|
|
|
|
//add scheme to from clause if set
|
|
if(gGMF_SCHEME_NAME != "")
|
|
{
|
|
lFromClause = ":(gGMF_SCHEME_NAME).:(gGMF_TABLE_COMPANY_CODE)"
|
|
}
|
|
else
|
|
{
|
|
lFromClause = ":gGMF_TABLE_COMPANY_CODE"
|
|
}
|
|
|
|
DBMS ALIAS d3server_value_char_allowed, d3server_repos_id_allowed
|
|
DBMS SQL SELECT DISTINCT company_id, \
|
|
:pReposId \
|
|
FROM :lFromClause :lWhereClause \
|
|
ORDER BY company_id
|
|
DBMS ALIAS
|
|
}//end of GetCompanyCode
|