Untitled
def addAPMpkg(pkgDetails): pkgName = getAPMLookupPKG(pkgDetails[2].lower()) newParentName = pkgDetails[0].lower() newColName = getNewParentColumn(pkgDetails[1].lower()) scr=f'CREATE OR REPLACE PACKAGE {pkgName}\nAS\nPROCEDURE check_ri\n(\np_{newColName} {newParentName}.{newColName}%TYPE\n);\nEND {pkgName};\n/\n\n' scr=f'{scr}CREATE OR REPLACE PACKAGE BODY {pkgName}\nAS\nPROCEDURE check_ri\n(\np_{newColName} {newParentName}.{newColName}%TYPE\n)\nAS\nv_{newColName} {newParentName}.{newColName}%TYPE;\nBEGIN\nIF (p_{newColName} IS NOT NULL) THEN\nBEGIN\nSELECT {newColName} INTO v_{newColName} FROM syn_account WHERE {newColName} = p_{newColName};\nEXCEPTION\n WHEN no_data_found THEN\n' scr=f'{scr} RAISE_APPLICATION_ERROR(-20999, \'Primary key value \'|| p_{newColName} ||\' not found!\');\nEND;\nEND IF;\nEND check_RI;\nEND {pkgName};' pkgAPMsql=f'{APM_directory}/{pkgName}.sql'; addAlterSession(pkgAPMsql, 'APM') printf(f'Creating PKG file for {pkgName}') sql2script(pkgAPMsql,scr) return pkgAPMsql,pkgName
Leave a Comment