*SAISIE DES MOUVEMENTS DE STOCK SET ESCAP OFF SELE 2 USE frz!BGMVSTO order BGMVSTO ALIAS Mvsto SELECT 1 USE frz!SDARTI order codeART alias AR TITRE = "SAISIE DES MOUVEMENTS DE STOCKS" rep="N" vdesign=space(30) DO WHILE .T. SELE 1 vcode=space(12) do titre @ 7,12 SAY "CODE " GET VCODE PICTURE "@!" READ IF VCODE =SPACE(12) exit endi SET EXACT OFF vrech =TRIM(VCODE) seek Vrech SET EXACT ON IF EOF() rep="N" @ 10,12 SAY "Cet article est inexistant " @ 12,12 SAY "VOULEZ VOUS LE CREER O/N " GET REP READ IF UPPER(REP)="O" append blank DO FORM sdsarti2 REPLACE CODEart WITH VCODE WAIT @ 6,0 CLEAR ELSE LOOP ENDI *DO SDPRESa.PRG *@ 23,0 SAY " " *WAIT LOOP ENDI *PRG="SDPRESa.PRG" v_pres="N" DO FORM f_pres_arti DO FORM sdsarti2 SCATTER TO m_arti *ENDI SELE 2 @ 19,0 CLEAR @ 19,0 TO 24,79 DOUBLE if len (vcode)=4 VMOUV=VCODE+SUBSTR(DTOC(DATE()),9,2)+substr(DTOC(DATE()),4,2)+SUBSTR(DTOC(DATE()),1,2) else VMOUV=VCODE+SUBSTR(DTOC(DATE()),9,2)+substr(DTOC(DATE()),4,2)+SUBSTR(DTOC(DATE()),1,2) endi SET EXAC ON v_ajout = "O" seek VMOUV IF .NOT. EOF() @ 23,5 SAY "UN MOUVEMENT EXISTE DEJA CE JOUR MODIF O/N " GET v_ajout READ v_code = mvsto.codearti SCATTER TO m_mvsto *IF REP ="N" *APPEND BLANK ELSE SCATTER BLANK TO m_mvsto m_mvsto[1]=vcode m_mvsto[3]=DATE() *REPLA CODEARTI WITH VCODE, DATE WITH DATE() *REPLACE STOCK WITH STOCK-QUANTITE *ENDI *ELSE *APPEND BLAN *REPLA CODEARTI WITH VCODE, DATE WITH DATE() *if vdesign<>space(30) *replace mouv->nature with vdesign *endi ENDI DO FORM f_s_bgmvsto2 SELE 1 v_pres="O" DO FORM f_pres_arti *WAIT ENDDO CLOSE DATA RETU