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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| CREATE OR REPLACE FUNCTION REQ_PRESC_INJ ( p_niufGest IN INTEGER,
p_niuf IN INTEGER,
p_aujourd_hui IN INTEGER,
p_datedeb IN INTEGER,
p_datefin IN INTEGER,
p_datelast IN INTEGER,
p_datenext IN INTEGER
)return tbl_D_inj
IS
-----------------------------------------------------------------------------------------
l_nipresc NUMBER(7);
l_nimed NUMBER(7);
l_lib_comp_inj VARCHAR2(105);
l_solvant CHAR(1);
l_code_unit_presc NUMBER(6);
l_libvoie VARCHAR2(40);
l_code_voieadm VARCHAR2(8);
l_qttinj NUMBER(10,2);
l_posoinj NUMBER(13,3);
l_posoinj_totale NUMBER(13,2);
l_type_inj NUMBER(2);
l_typ_rap NUMBER(1);
l_rap_gab NUMBER(1);
l_rap_tmp NUMBER(1);
l_type_adm NUMBER(1);
l_duree NUMBER(4);
l_voldil NUMBER(6,1);
l_recA_inj rec_A_inj := rec_A_inj( null,null,null,null,
null,null,null,null,
null,null,null,null,
null,null,null,null,
null);
l_tblA_inj tbl_A_inj := tbl_A_inj(l_recA_inj);
a PLS_INTEGER;
nbrA INTEGER;
-- VEEEEEEEEERRRRIFFFFFFFFFFFFFFFFFFFFFFFF OOOOOOOOOOOOKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
-- ajout des droits select pour les tables c_voie_inj,perfdet et pr_prf to pharm
CURSOR c_A (c_datenext NUMBER)
IS
SELECT PPD.NIPRESC,
PPD.NIMED,
PPD.LIBELLE LIB_COMP_INJ,
PPD.CMP_SLV SOLVANT,
PCK_DXPHARM.GETUNITEPRESC(PPD.NIMED,
PPD.CMP_SLV,
PPD.UNITEPRESCT) CODE_UNITPRESC,
PCVI.LIBELLE LIB_VOIE,
PCVI.CODE CODE_VOIEADM,
PCK_DXPHARM.CALCQTTINJ( PPD.QUANTITE,
PPD.QUANTITE_TOTALE,
PPR.TYP_INJ_IDE,
PPR.TYP_ADM,
PPD.RAP_GAB,
PPD.RAP_TMP,
PPD.NIPRESC,
c_datenext,
PPR.VOLUME_TOTAL_DILUTION,
PPD.CMP_SLV) QTTINJ,
PPD.QUANTITE POSOINJ,
PPD.QUANTITE_TOTALE POSOINJ_TOTALE,
PPR.TYP_INJ_IDE TYPE_INJ,
PPD.TYP_RAP,
PPD.RAP_GAB,
PPD.RAP_TMP,
PPR.TYP_ADM,
PPR.DUREE,
PPR.VOLUME_TOTAL_DILUTION VOLDIL
FROM PENSOINS.PERFDET PPD,
PENSOINS.PR_PRF PPR,
PENSOINS.C_VOIE_INJ PCVI
WHERE PPD.NIMED > 0
and PPD.NIPRESC = PPR.NIPRESC
and PPR.VOIE_IDE = PCVI.NI(+)
and PPR.TYP_INJ_IDE = PCVI.TYP_INJ_IDE(+)
and PCVI.RETRAIT(+) = 'F'
;
l_tblD_inj tbl_D_inj;
begin
return l_tblD_inj;
end;
/ |
Partager