-ปรับปรุงระบบ search

This commit is contained in:
2025-11-13 17:59:15 +07:00
parent 69261c05ab
commit 29d85cbf61
3 changed files with 42 additions and 1 deletions

View File

@@ -0,0 +1,40 @@
CREATE OR REPLACE FUNCTION accpj.translatedtl(
p_tblcode TEXT,
p_dtlcod TEXT
)
RETURNS TEXT
LANGUAGE plpgsql
AS $func$
DECLARE
resultName TEXT;
BEGIN
SELECT dtlnam
INTO resultName
FROM accpj.dtlmst
WHERE dtltblcod = p_tblcode
AND dtlcod = p_dtlcod
LIMIT 1;
RETURN resultName;
END;
$func$;
--แบบ สองดัชนี SELECT public.translatedtl_multi(ARRAY['ACTCAT_INC','ACTCAT_EXP'], actcat) AS actcatnam;
CREATE OR REPLACE FUNCTION accpj.translatedtl_multi(
p_tblcodes TEXT[],
p_dtlcod TEXT
)
RETURNS TEXT
LANGUAGE sql
AS $func$
SELECT dtlnam
FROM accpj.dtlmst
WHERE dtltblcod = ANY(p_tblcodes)
AND dtlcod = p_dtlcod
LIMIT 1;
$func$;

View File

@@ -11,6 +11,7 @@ export class AccountingSearchService {
SELECT
actseq,
actnum,
acttyp,
${database}.translatedtl('ACTTYP', acttyp) as acttypnam,
${database}.translatedtl_multi(ARRAY['ACTCAT_INC', 'ACTCAT_EXP'], actcat) as actcatnam,
actqty,

View File

@@ -8,7 +8,7 @@ export class AccountingSetupService {
const sql = `
SELECT
dtlnam,
${database}.translatedtl('ACTTYP', dtlcod) as dtlname,
dtlcod,
dtltblcod
FROM ${database}.dtlmst
WHERE dtltblcod IN ('ACTTYP', 'ACTCAT_INC', 'ACTCAT_EXP');