Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
CALLING ORACLE SP with parameters
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Versions des environnements
Visual FoxPro:
VFP 9
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Oracle
Application:
Desktop
Divers
Thread ID:
01389524
Message ID:
01389604
Vues:
42
Thanks Naomi, I would really appreciate.

I've CALL ORACLE SP before but not with OUTPUT parms...


>Something like this. I didn't work with Oracle either, I can do a search on this forum later for you.

>You mean like this:
>
>When I try it, VFP crash...
>
>
>LOCAL P1,P2,P3,P4,P5,P6,P7,P8,P9,P0 AS Number
>P1 = .NULL.
>P2 = .NULL.
>P3 = .NULL.
>P4 = .NULL.
>P5 = .NULL.
>P6 = .NULL.
>P7 = .NULL.
>P8 = .NULL.
>P9 = .NULL.
>P0 = .NULL.
>
>TEXT TO lcSQL TEXTMERGE NOSHOW PRETEXT 15
>{CALL ESC60.MOVE_PATIENTS_MAINT ('MTL','AC019_CLIN_01', 'QC', '0001', '80047', 'AC019_CLIN_01', 'QC', '0035', '80047',
> ?P1, ?P2, ?P3, ?P4, ?P5, ?P6, ?P7, ?P8, ?P9, ?P0 ) }
>ENDTEXT
>
>? SQLEXEC(ConnectHandle,lcSQL) > 0
>
>
>
>
>
>
>>Can you pass parameters as parameters, e.g. ?myParam1Null, ?myParam2Null
>
>>etc.
>
>>Hi,
>>
>>I want to call an ORACE Stored Procedure with parameter :
>>
>>
>>
>>PROCEDURE move_patients_maint
>> ( o_siteid VARCHAR2,
>> o_pno VARCHAR2,
>> o_sctry VARCHAR2,
>> o_cno VARCHAR2,
>> o_patno VARCHAR2,
>> n_pno VARCHAR2,
>> n_sctry VARCHAR2,
>> n_cno VARCHAR2,
>> n_patno VARCHAR2,
>> mon_b_ade_rowcnt IN OUT NUMBER,
>> mon_b_pats_rowcnt IN OUT NUMBER,
>> mon_b_pats_comm_rowcnt IN OUT NUMBER,
>> mon_b_crfparts_rowcnt IN OUT NUMBER,
>> mon_b_crfchkl_rowcnt IN OUT NUMBER,
>> mon_b_pachklit_rowcnt IN OUT NUMBER,
>> mon_b_patadd_rowcnt IN OUT NUMBER,
>> mon_b_prealloc_rowcnt IN OUT NUMBER,
>> mon_b_patsphase_rowcnt IN OUT NUMBER,
>> mon_b_supform_rowcnt IN OUT NUMBER)
>>
>>
>>
>>Ive tried this in FoxPro:
>>
>>
>>TEXT TO lcSQL TEXTMERGE NOSHOW PRETEXT 15
>> {CALL ESC60.MOVE_PATIENTS_MAINT ('MTL','AC019_CLIN_01', 'QC', '0001', '80047', 'AC019_CLIN_01', 'QC', '0035', '80047', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL ) }
>>ENDTEXT
>>
>>? SQLEXEC(ConnectHandle,lcSQL) > 0
>>
>>
>>
>>I think that the problem are the NULL values...
>>
>>Ive also tried to define strong type variable without success e.g.
>>
>>LOCAL TEST1 AS NUMBER
>>TEST1 = NULL
>>
>>Passing the variable instead of the NULL value but it doesn't work
>>If I verify the type of the TEST1 variable it is not NUMBER...What am I doing wrong?
>>
>>
>>Any idea are welcome. Here is the CODE that work in TOAD (...SQL PLUS)
>>
>>DECLARE
>> MON_B_ADE_ROWCNT NUMBER;
>> MON_B_PATS_ROWCNT NUMBER;
>> MON_B_PATS_COMM_ROWCNT NUMBER;
>> MON_B_CRFPARTS_ROWCNT NUMBER;
>> MON_B_CRFCHKL_ROWCNT NUMBER;
>> MON_B_PACHKLIT_ROWCNT NUMBER;
>> MON_B_PATADD_ROWCNT NUMBER;
>> MON_B_PREALLOC_ROWCNT NUMBER;
>> MON_B_PATSPHASE_ROWCNT NUMBER;
>> MON_B_SUPFORM_ROWCNT NUMBER;
>>
>>
>>BEGIN
>> MON_B_ADE_ROWCNT := NULL;
>> MON_B_PATS_ROWCNT := NULL;
>> MON_B_PATS_COMM_ROWCNT := NULL;
>> MON_B_CRFPARTS_ROWCNT := NULL;
>> MON_B_CRFCHKL_ROWCNT := NULL;
>> MON_B_PACHKLIT_ROWCNT := NULL;
>> MON_B_PATADD_ROWCNT := NULL;
>> MON_B_PREALLOC_ROWCNT := NULL;
>> MON_B_PATSPHASE_ROWCNT := NULL;
>> MON_B_SUPFORM_ROWCNT := NULL;
>>
>>ESC60.MOVE_PATIENTS_MAINT ( 'MTL', 'AC019_CLIN_01', 'QC', '0001', '80047', 'AC019_CLIN_01', 'QC', '0035', '80047', MON_B_ADE_ROWCNT, MON_B_PATS_ROWCNT, MON_B_PATS_COMM_ROWCNT, MON_B_CRFPARTS_ROWCNT, MON_B_CRFCHKL_ROWCNT, MON_B_PACHKLIT_ROWCNT, MON_B_PATADD_ROWCNT, MON_B_PREALLOC_ROWCNT, MON_B_PATSPHASE_ROWCNT, MON_B_SUPFORM_ROWCNT );
>>
>>END;
>>
Luc Nadeau
lnadeau@neova.ca

"the theory, it is when all is known and that nothing works. The practice, it is when all works and that nobody knows why." - Albert Einstein (Nobel of physique 1921)
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform