1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
PROCEDURE INIT_TAB_REMIS_ID(sGrille_Id IN NUMBER, sGrille_Version IN NUMBER,sFabr IN VARCHAR2,MyRemisLifaTab OUT RemisLifaTab,MyRemisNisgTab OUT RemisNisgTab,MyRemisNigaTab OUT RemisNigaTab,bTrouvfabr OUT BOOLEAN) IS
sBaseA LIFA.LIFA_BASEA%TYPE;
sAchat LIFA.LIFA_ACHAT%TYPE;
sUtilA LIFA.LIFA_UTILA%TYPE;
sBaseV LIFA.LIFA_BASEV%TYPE;
sVente LIFA.LIFA_VENTE%TYPE;
BEGIN
MyRemisLifaTab := RemisLifaTab();
MyRemisNisgTab := RemisNisgTab();
MyRemisNigaTab := RemisNigaTab();
MyRemisLifaTab.extend;
MyRemisNisgTab.extend;
MyRemisNigaTab.extend;
BEGIN
SELECT LIFA_BASEA,LIFA_ACHAT,LIFA_UTILA,LIFA_BASEV,LIFA_VENTE
INTO sBaseA,sAchat,sUtilA,sBaseV,sVente
FROM LIFA
WHERE LIFA_GRIL_ID = sGrille_Id AND LIFA_GRIV_VERSION = sGrille_Version
AND LIFA_FABR_LIDIC = sFabr;
MyRemisLifaTab(MyRemisLifaTab.COUNT) := NEW RemisLifa(0,sGrille_Id,sGrille_Version,sBaseA,sAchat,sUtilA,sBaseV,sVente) ;
bTrouvfabr := TRUE;
EXCEPTION WHEN NO_DATA_FOUND THEN
bTrouvfabr := FALSE;
END;
IF bTrouvfabr THEN
EXECUTE IMMEDIATE ' SELECT 0,'||sGrille_Id||','||sGrille_Version||',NIGA_GAMM_CODE,NIGA_BASEA,NIGA_ACHAT,NIGA_UTILA,NIGA_BASEV,NIGA_VENTE '||
' FROM NIGA'||
' WHERE NIGA_FABR_LIDIC = '''||sFabr||''''||
' AND NIGA_GRIL_ID = '||sGrille_Id||
' AND NIGA_GRIV_VERSION = '||sGrille_Version BULK COLLECT INTO MyRemisNigaTab; |
Partager