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
| If Cursor_Status('global', 'MonCurseur') <> -3
Begin
If Cursor_Status('global', 'MonCurseur') >= 0
Begin Close MonCurseur End
Deallocate MonCurseur
End
Set @Curseur = 'Declare MonCurseur cursor Global for Select * From ##tempFichierImport '
Exec (@Curseur)
---------------------------------------------
--Lecture de chaque ligne et qualification --
---------------------------------------------
Open MonCurseur
Fetch next From MonCurseur Into @ligneFichier
While @@Fetch_Status=0
Begin
Set @ligneTraitee = 0
If(LEN(@ligneFichier) > 4)
Begin
Set @EnTete = SUBSTRING(@ligneFichier,0,5)
If(@EnTete = 'PCRE' or @EnTete = 'PMOD')
Begin
Execute @erreurNumero = ps_ligneInterpreter_CREMOD @ligneFichier,
@aCode output, @cDiv output,
@pCode output, @fCode output,
@sfCode output, @pLibelle output,
@tValeur output, @pRevient output,
@pVente output, @pType output
If(@erreurNumero <> 0)
Begin
Print 'Erreur d''interprétation de la ligne ' + @ligneFichier + '( Code ' + @erreurNumero + ')'
Return 4
End
End
If(@EnTete = 'PANN')
Begin
Execute @erreurNumero = ps_ligneInterpreter_ANN @ligneFichier, @aCode output
If(@erreurNumero <> 0)
Begin
Print 'Erreur d''interprétation de la ligne ' + @ligneFichier + '( Code ' + @erreurNumero + ')'
Return 4
End
End
End
Fetch Next From MonCurseur INTO @ligneFichier
End
Close MonCurseur
Deallocate MonCurseur
Return 0 |
Partager