Cap 10. Programe tip
În cadrul acestui
capitol vom studia şi vom discuta câteva programe performante,
pe care le recomandăm în lucrărite pe care le veţi proiecta
deoarece !e considerăm necesare şi eficiente.
Aceste programe vor fi mai
întâi prezentate, iar apoi vom discuta relativ la ele.
Pentru ca să discutăm despre programe este necesar să discutăm
despre bazele de date necesare. Bazele de date necesare sunt
prezentate în tabelul următor;
System:
Evidenta situatiilor financiar-contabile Author: Emil Pfeiffer
08/21/98
10:49:45
Database
Structure Summary
**********************************
13
databases in the system
NOM.DBF
STOC.DBF
MiSC.DBF
FACT.DBF
TMP.DBF
MISC3.DBF
INCAS.DBF
FUR.DBF
TYPE.DBP
FISTMP.DBF
FTMP.DBP
FUR1.DBF
MTOT.DBF
**********************************
Structure
for database: NOM.DBF
Number
of records: 15
Last
updated: 08/29/96 at 11:35
- FieldField nameTypeWidthDecStart
End 1CODMATER Numeric 10
1102 CODGRUPA Numeric 3
11 13 3 CODGRAPR Numeric 6
14 19 4 CONT Character 12
20 31 5 SURSA Numeric 1
32 32 6 DENUMIRE Character 40
33 72 7 UNITMASCharacter3
73758 PRETUNITARNumeric 12376 87 9 PRETMEDIUNumeric1238899 10 ACTCharacter1
100100 11 DATA_ACTDate8
101108 12 COEF_ECHNumeric52109 113
** Total
114
- This database appears to be associated with index file(s)::C:\CURS\PROGT\INDNOM.IDX (STR(CODMATER,8)) : :C:\CURS\PROGT\INDNOMA.IDX (DENUMIRE)This database appears to be associated with report form(s)::REPM1.FRXUsed by: INDEX.PRGCORSTOC.PRGACTMENU.PRGBC.PRGFIS.PRGECRBAL.PRGBRNOM.PRGCORBC.PRG
Structure for database: STOC.DBFNumber of data records: 2Last updated : 08/21/98 at 6:08*************************************Field Field name Type Width Dec Start End
1 CODMAG Numeric 2 1 22 CODMATER Numeric3 CANTITATE Numeric4 I Numeric5 Pl Numeric6 O Numeric7 PO Numeric** Total ** 73This database appears to be associated with index file(s);INDSTOC.IDX (STR(CODMAG,2)+STR(CODMATER,8))FoxDoc did not find any associated report formsUsed by: INDEX.PRG :CORSTOC.PRGACTMENU.PRGFIS.PRGECRBAL.PRGADDSTOC.PRGSUBSTOC.PRGStructure for database: MISC.DBFNumber of data records: 12Last updated : 08/29/98 at 10:57*************************************- FieldField nameTypeWidthDecStart
End 1TYPE Numeric 2
122 NRDOC Numeric 6
3 8 3 DATA Date 8
9 16 4 MAG Numeric 2
17 18 5 MAGP Numeric 2
19 20 6 FURN Numeric 6
21 26 7 CONTCharacter12
27388 SECNumeric 2
39 40 9 FORMNumeric2
4142 10 MARKNumeric 5
4347 11 CODNumeric 10
4857 12 PRETNumeric10358 67 13 CANTNumeric 1236879 14 VALOARENumeric 1428093 15 CODIESNumeric 8
94101 16 IMPCharacter1
102102
** Total
103
- This database appears to be associated with index file(s);FISMISC.IDX (STR(COD,8))INDMISC.IDX (STR(TYPE,2)+STR(NRDOC,6))FoxDoc did not find any associated report formsUsed by: INDEX.PRG :CORSTOC.PRGACTMENU.PRGBC.PRGFIS.PRGCORBC.PRG********************************************Structure for database: FACT.DBFNumber of data records: 6Last updated : 08/21/98 at 6:35*************************************
- FieldField nameTypeWidthDecStart
End 1TYPE Numeric 2
122 NRDOC Numeric 6
3 8 3 DATA Date 8
9 16 4 FURN Numeric 6
17 22 5 MATE Numeric 14 2 23 36 6 FINE Numeric 14 2 37 50 7 TVAENumeric 14251648 AMBENumeric 14265 78 9 ICMENumeric 14279 92 9 TRANENumeric14293106 10 BONENumeric 142107120 11 ICMENumeric 142121 134 12 MATINumeric142135148 13 FININumeric 142149162 14 TVAINumeric 142163176 15 AMBINumeric 142177190 16 TRANINumeric 142191204 17 BONINumeric 142205218 18 NRFACTNumeric 8
219226 19 FISCNumeric 10
227236 20 SCDDate8
219244
** Total
245
This database appears to be associated with index file(s);NRFACT.ind (NRDOC)FACF.IDX (STR(FURN,6))DAT.IDX (DATA)IFUR.IDX (FURN)This database appears to be associated report form(s):JURNAL1.FRXUsed by: INDEX.PRGCORSTOC.PRGJURNAL.PRGVBAL.PRG
Structure for database: TMP.DBFNumber of data records: 12Last updated : 08/29/96 at 10:35*************************************FieldField nameTypeWidthDecStartEnd 1TYPE Numeric 2
122 NRDOC Numeric 6
3 8 3 DATA Date 8
9 16 4 MAG Numeric 2
17 18 5 MAGP Numeric 2
19 20 6 FURN Numeric 6
21 26 7 CONTCharacter12
27388 SECNumeric 2
39 40 9 FORMNumeric2
4142 10 MARKNumeric 5
4347 11 CODNumeric 10
4857 12 PRETNumeric10358 67 13 CANTNumeric 1236879 14 VALOARENumeric 1428093 15 CODIESNumeric 8
94101 16 IMPCharacter1
102102
** Total
103
- FoxDoc did not find any associated index filesFoxDoc did not find any associated report formsUse by: CORSTOC.PRGBC.PRGGET_ITEMS (procedure in c:\curs\progt\bc.prg)*********************************************Structure for database: TMP.DBFNumber of data records: 12Last updated : 08/20/98 at 10:57
- FieldField nameTypeWidthDecStart
End 1COD Numeric 10
1102 MAG Numeric 2
11 12 3 EC3 Date 12 2 13 24 4 EC2 Numeric 12 2 25 36 5 EC1 Numeric 12 2 37 48 6 ECCR Numeric 12 2 49 60 7 ET3Character12261728 ET2Numeric 12273 84 9 ET1Numeric1228596 10 ETCRNumeric 12297108 11 DATADate 8
109116
** Total **
117
This database appears to be associated with index file(s);MISC3.IDX (STR(MAG,2)+STR(COD,10))Foxdoc did not find any associated reports formsUsed by: CORSTOC.PRGADDSTOC.PRGSUBSTOC.PRG
Structure for database: INCAS.DBFNumber of data records: 0Last updated : 05/16/97 at 7:40*******************************************- FieldField nameTypeWidthDecStart
End 1TYPENumeric2
122NRDOCNumeric6
383NRFACTNumeric6
9144NRDPNumeric6
15205DATIDate8
21286MATINumeric14229427FININumeric14243568TVAINumeric14257709AMBlNumeric142718410ICMINumeric142859811TRANlNumeric1429911212BONINumeric1421312613INCNumeric10
127136
** Total **137
This database appears to be associated with index file(s):: INCAS.IDX (STR(NRDOC,6)+STR(NRDP,6))FoxDoc did not find any associated report forms Used by:CORSTOC.PRGVBAL.PRG
Structure for database: FUR.DBFNumber of data records: 1Last updated : 02/04/92 at 9:32
- FieldField nameTypeWidthDecStart
End 1CODNumeric8
182DENCharacter60
9683CONTCharacter13
69814BANCACharacter40
82121
** Total **
122
This database appears to be associated with index file(s):: INDFUR.IDX (STR(COD,8))FoxDoc did not find any associated report formsUsed by: JURNAL.PRGACTFUR.PRGCORBC.PRGStructure for database: TYPE.DBFNumber of data records: 12Last updated : 05/15/97 at 14:52
- FieldField nameTypeWidthDecStart
End 1TYPENumeric2
122DENCharacter20
3223SHORTCharacter3
2325
** Total **
122
This database appears to be associated with index file(s):: TYPE.IDX (STR(TYPE,2))FoxDoc did not find any associated report formsUsed by: FIS.PRG***************************************************Structure for database: FISTMP.DBFNumber of data records: 1Last updated : 08/21/98 at 6:09FieldField nameTypeWidthDecStartEnd 1TYPENumeric2
122NRDOCNumeric6
383DATADate8
9164CODNumeric8
17245CANTNumeric12
2536
** Toatal **
37
- FoxDoc did not find any associated index filesFoxDoc did not find any associated report formsUse by: FIS.PRG**************************************************Structure for database: FTMP.DBFNumber of data records: 1Last updated : 08/21/98 at 6:09
- FieldField nameTypeWidthDecStart
End 1TYPE Numeric 2122 NRDOC Numeric 6
3 8 3 DATA Date 8
9 16 4 MAG Numeric 2
17 18 5 MAGP Numeric 2
19 20 6 FURN Numeric 6
21 26 7 CONTCharacter1227388 SECNumeric 239 40 9 FORMNumeric24142 10 MARKNumeric 54347 11 CODNumeric 104857 12 PRETNumeric10358 67 13 CANTNumeric 1236879 14 VALOARENumeric 1428093 15 CODIESNumeric 894101 16 IMPCharacter1102102
** Total103
This database appears to be associated with index file(s):FoxDoc did not find any associated report formsUse by: ADDSTOC.PRGSUBSTOC.PRG**************************************************Aceste baze de date (ca şi indexii asociaţi) sunt neapărat necesare pentru a se putea execuîa programele respective.Bazele de date cu explicaţiile necesarte despre conţinutul lor sunt urmatoarele: NOM.DBF - nomenclatorul de materiale / produse finite;STOC.DBF - fişierul de stocuri;MISC.DBF - fişierul de mişcări. Conţine documentele ce se operează in STOC;FACT.DBF - fişierul de facturi. Conţine facturiie emise şi încasările la facturi;MISC3.DBF - este un fişier cu mişcările cumulate din ultimele trei luni pentru situaţia materialelor/produselor cu mişcare lentă şi fără mişcare;INCAS.DBF - este un fişier conţinând încasările la facturi;FUR.DBF - este fişierul de beneficiari / furnizori;TYPE.DBF - este un fişier ce conţine tipul documentelor aşa cum sunt ele codificate în lucrare şi cu conturile respective pe fiecare tip de document;F!STMP, FTMP, TMP, FUR1 şi MTOT sunt fişiere temporare utilizate ca manevră de către lucrare.
Indexii fişierelor sunt prezentaţi în tabelu! care urmează:System: Evidenta situatiilor financiar-contabileAuthor: Emil Pfeiffer08/21/98 10:49:44Index Parameter Summary15 index files in the systemNOM INDNOM.IDXINDNOMA.IDXSTOC INDSTOC.IDXMISC FISMISC.IDXINDMISC.IDXFACT NRFACT.IDXFACF.IDXFACT DAT.IDXIFUR.IDXMISC3 MISC3.IDXINCAS INCAS.IDXFUR INDFUR.IDXTYPE TYPE.IDXIFISTMP IFISTMP.IDXMTOT MTOT.IDX
INDNOM.IDX- Indexed STR(CODMATER,8)This index file appears to be associated with database(s);: NOM.DBFUsed by: INDEX.PRG:CORSTOC.PRG:ACTMENU.PRG:BC.PRG:FIS.PRGECRBAL.PRGBRNOM.PRGCORBC.PRG********************************INDOMA.IDX. Indexed on: DENUMIREThis index file appears to be associated with database(s):NOM.DBFUsed by:INDEX.PRGCORSTOC.PRG :ACTMENU.PRGBRNOM.PRG********************************INDSTOC.IDX - Indexed on: STR(CODMAG,2)+STR(CODMATER,8)This index file appears to be associated with database(s):STOC.DBFUsed by : INDEX.PRGCORSTOC.PRGACTMENU.PRGFIS.PRG ECRBAL.PRGADDSTOC.PRGSUBSTOC.PRGFISMISC.IDX - Indexed on: STR(COD,8)This index file appears to be associated with database(s);MISC.DBFUsed by: INDEX.PRGCORSTOC.PRGACTMENU.PRGBC.PRGFIS.PRGCORBC.PRGINDMISC.IDX- Indexed on: STR(TYPE,2)+STR(NRDOC,6)This index file appears to be associated with database(s):: MISC.DBFUsed by: INDEX.PRG: CORSTOC.PRG:ACTMENU.PRG: BC.PRG: CORBC.PRGNRFACT.IDX - Indexed on: NRDOCThis index file appears to be associated with database(s):: FACT.DBFUsed by: INDEX.PRG: CORSTOC.PRG:JURNAL.PRG: VBAL.RG
FACF.IDX - Indexed on: STR(FURN,6)This index file appears to be associated with database(s):: FACT.DBFUsed by: INDEX.PRGJURNAL.PRGDAT.IDX – indexed on: DATAThis index file appears to be associated with database(s):FACT.DBF.Used by: |NDEX.PRG:JURNAL.PRG
IFUR.lDX – lndexed on FURNThis index file appears to be associated with database(s):FACT.DBFUsed by:INDEX.PRGJURNAL,PRGMISC3.IDX - Indexed on: STR(MAG,2)+STR(COD,10)This index file appears to be associated with database(s)::MISC3.DBFUsed by;CORSTOC.PRG:ADDSTOC.PRG:SUBSTOC,PRGINCAS.IDX - Indexed on: STR(NRDOC,6)+STR(NRDP,6)This file appears to be associated with database(s):INCAS.DBFUsed by: CORSTOC.PRGVBAL.PRG
INDFUR.IDX - Indexed on: STR(COD,8)This index file appears to be associated with database(s):FUR.DBFUsed by:.JURNAL.PRGACTFUR.PRGCORBC.PRG
TYPE.IDX – Indexed on: STR(TYPE,2)This index file appears to be associated with database(s):TYPE.DBFUsed by: FIS.PRG
IFISTIP.IDX – Idexed on: STR(TYPE,2)+DTOC(DATA,1)FoxDoc could not find an associeted databaseUsed by: FIS.PRGThis index fite appears to be associated with database(s):MTOT.DBFUsed by: ADDSTOC.PRG:SUBSTOC.PRGÎn tabel sunt prezentaţi indexii cu denumirea lor, fişierele la care se referă (care trebuie indexate), cheile de indexare, precum şi programele care apelează aceşti indexi. Aceste elemente sunt suficiente pentru a putea realiza indexarea care este neapărat necesară.În continuare se prezintă programele amintite:1*.***********************************************2- Program: C:\CURS\PROGT\MENU,PRG
- System: Evidenta situatiilor financiar-contabile
- Author: Emi! Pfeiffer
- Copyright (c) 1998, Emil Pfeiffer
- Lastmodified: 08/14/98 9:49
- Calls: SALAR.PRG :
- M!JLF!X,PRG :
- FIN.PRG :
- MENFACT.PRG :
- EMITF.PRG :
- MENUSP.PRG
- Memory Files: TERM.MEM
- Documented 08/14/98 at 10:19 FoxDoc
- **************************************
22 * DEFINING THE MAIN MENU AND POP-UP'S *2324 clea25 close data26 set safety off27 set date brit28 set talk off29 set confirm on30 set dele on31 rest from term additive32 if term#.t.33 @ 2,18 to 6,62 double
34 @ 3,23 say 'RULAREAANTERIOARA SFIRSIT ANORMAL! '
35 @ 4,23 say 'Se refac fisierele si indexii pentru:'36 @ 5,23 say 'fisierul ARTIC Sl FSTRU ............'37 clea38 endif39 term=.f.40 save to term all like term41 @ 2,2 to 20,78 double42 @ 4,6 to 18,7443 @ 6,10 to 16,7044 @ 8,14 to 14,6645 @ 10,25 to12,55 double46 @ 11,26 say 'CONTABILITATEA INTREPRINDERII'47 @ 21,10 say ' '48 wait ' '49 clea50 define menu mainme51 define pad eee of mainme prompt;"CONTABILITATEA INTREPRINDERII' at 2,2252 define pad salar of mainme prompt 'SALARII' at 6,20 message;53 ' Selectia acestei functii este invalida!!! Selectati alta'54 define pad mijlf of mainme prompt 'MIJLOACE FIXE' at 6,40 message;55 ' Selectia acestei functii este invalida !!! Selectati alta'56 define pad matpf of mainme prompt 'MATERIALE Sl PROD.FIN' at 10,10
message;
57 'Realizeaza evidenta materialelor si a produselor finite'58 define pad evidf of mainme prompt 'EVIDENTA FACTURI' at 10,35 message ;59 'Realizeaza evidenta facturilor si toate situatiile necesare'60 define pad factu of mainme prompt 'FACTURARE' at 10,58 message;61 ' Selectia acestei functii este invalida!!! Selectati alta'62 define pad conta of mainme prompt 'CONTABILITATE GENERALA' at 14,29 message;63 ' Selectia acestei functii este invalida!!! Selectati alta'64 define pad sfirs of mainme prompt 'SFIRSIT' at 18,37 message;65 'Realizeaza iesirea din lucrare'66- on pad eee of mainme acti popup nome
- on pad salar of mainme acti popup nome
- on pad mijlf of mainme acti popup mf
- on pad matpf of mainme acti popup pf
- on pad evidf of mainme acti popup ef
- on pad factu of mainme acti popup fa
- on pad conta of mainme acti popup co
- on pad sfirs of mainme acti popup sf
- defi popup nome from 5,20 shadow
- defi popup mf from 5,40 shadow
- defi popup pf from 9,10 shadow
- defi popup ef from 9,35shadow
- defi popup fa from 9,58 shadow
- defi popup co from 13,29 shadow
- defi popup sf from 17,37 shadow
- defi bar 1 of nome prompt '\SALARIl'
- defi bar 1 of mf prompt '\<MIJLOACE FIXE'
- defi bar 1 of pf prompt '\<MATERIALE Sl \<PROD.FIN'
- defi bar 1 of ef prompt '\<EVlDENTA FACTURI'
- defi bar 1 of fa prompt '\<FACTURARE'
- defi bar 1 of co prompt '\<CONTAB!LITATE 'GENERALA'
- defi bar 1 of sf prompt 'SFIRSI\<T'
- on sele popup nome do salar
- on sele popup mf do mijlfix
- on sele popup pf do fin
- on sele popup ef do menfact
- on sele popup fa do emitf
- on sele popup co do menusp
- on sele popup sf retu
100 acti menu mainme101102 *: EOF: MENU.ACTAcest program (MENU.PRG) este meniul principal al lucrării pe care am numit-o "Evidenţa situaţilor financiar-contabile'. Ea conţine de fapt mai multe lucrări şi anume: Evidenţa şi calculul saiariilor, Evidenţa mijloacelor fixe, Evidenţa contabilă a materiilor prime şi a materialelor, precum şi a produseior fmite, Evidenţa facturilor, Emiterea facturilor şi o lucrare pentru evidenţierea situaţiilor centralizatoare contabile ce rezultă din lucrările mai sus amintite în contabilitatea generală.Programu! listat rnai sus (ca şi cele ce vor fi listate în continuare) este obţinut prin Foxdoc, deci pentru a putea fi rulat, vor trebui şterse cifrele ce numerotează liniile (altfel la încercarea lor programele vor da eroare). De asemenea precizăm că numărul programelor acestor lucrări este mult mai mare (aici prezentăm doar câteva programe pe care le considerăm programe tip şi unele programe necesare pentru a face aplicaţia să fie explicită şi să funcţioneze).O serie de funcţii ale acestei lucrări nu sunt valide (fapt ce este semnalat de mesajele din subsoiul ecranului) deoarece ar fi mărit enorm această lucrare de prezentare.Vom prezenta în continuare toate aceste programe tip, urmând ca apoi să le discutăm pe fiecare în parte.- ************************************************
- Procedure file: C;\CURS\PROGT\FIN.PRG
- System: Evidenta situatiilor financiar-contabile
- Author: Emii Pfeiffer
- Copyright (c) 1998, Emil Pfeiffer
- Lastmodified: 08/21/98 10:39
- *: Procs & Fncts: BELL
- :CCONTROL
- : ED!T .RECORD
- Set by:MENU.PRG
- Cal!s:SET() (function in?)
- SIGNON.PRG
- INDEX.PRG
- CORSTOC.PRG
- MENUS.PRG
- Memory Files:FiNOK.MEM
- :ANTET1.MEM :
- ANTET2.MEM
- Documented 08/21/98 at 10:47 FoxDoc
- **************************************************
- Create view priorvue
- cloose all
- set talk off
- set date british
- set notify off
- set intensity on
- set safety off
- set deleted on
- set confirm on
- set decimals to 3
- hide menu mainme
- hide popup of
- * set printer to liste.prg
- xstat = set('status')
- if xstat='ON'
- set status off
- endif
- public mainscreen
- deactivate windows atl
- flpmed=.f.
- store .f. to indexing, fldelm1
- define window adaugmat from 2, 5 to 14,75 title;
[ADAUGARE IN FISIERUL PRODUSE50 define window modifmat from 2,5 to 14,75 title;[ MODSFiCARE IN FiSIERUL PRODUSE ]51 define window stergmat from 2,5 to 14,75 titie;[ STERGERE DIN FISIERUL PRODUSE ]52 define window errwind from 1,40 to 4,79 double53 define window errwind2 from 1,40 to 4,79 double54 define window confirma from 17,33 to 21,65 double55 define window wstoc from 16,40 to 21,7056 define window wlst from 3,0 to 22,79 none57 clear program58 par=' '59 do signon60 if par='FIN'61 rest from finok additive62 if .not. finok63 acti wind errwind264 clear65 @ 0,0 say 'Asteptati un moment sa refac fisierele'66 @ 1,0 say 'Ultima rulare terminata anormal'67 do index68 do corstoc69 deac wind errwind270 endif71 else72 retu73 endi74 rest from antet1 addi75 rest from antet2 addi76 finok=.f.77 save to finok all like finok78 save screen to mainscreen79 set message to 23 left80 do menus81 acti menus mainmenu82 term = .f.83 do while term = .T.84 clear85 activate menu mainmenu86 if term87 release all88 release menus mainmenu89 release popus actpop90 endif91 enddo92 finok=.t.93 save to finok all like finok94 if term#.t.95 if xstat='ON'96 set status on97 endif98 endif99 clear100 on escape101 if term=.T.102 ? FIN TERMINAT ************103 deac menu mainmenu104 release popup actpop105 show menu mainme106 show popup pf107 endif108 return109- ********************
- Procedure; BELL
- .
- Calls: CHR() (function in?)
- .
- ******************************
117 function bell118 ?? chr{7)119 return120121
134 *!*******************************135 *!136 *! Procedure: CCONTROL137138 Called by: ACTMENU.PRG139: FIS.PRG140: GET_LINE (procedure in BC.PRG)141 *!142 *! Calls: INT() : CHR() (function in ?)143 *! : CHR() (function in?)144 *!145 *!**********************************134 function ccontrol135 parameter x136 xx=int(x/10)137 dimens i(7)138 y=xx139 j=7140 q=int(xx/10)141 i=0142 do while .not.j<=0143 i(j)=y-q*10144 y=q145 q=int(q/10)146 j=j-1147 enddo148 q=i(7)*2+i(6)*3+i(5)*5+i(4)*7+i(3)*13+i(2)*17+i(1)*19149 y=int(q/11)150 cc=q-y*11151 if cc=10152 cc=0153 endif154 n=xx*10+cc155 if n=x156 hide window errwind157 return .t.158 else159 activate window errwind160 @ 0,1 saz Eroare cifra de control]161 ??chr(7)162 return .f.163 endif164175 *| *************************************176 *!177 *! Procedure: EDIT_RECORD178 *!179 Calledby:ACTMENU.PRG180 *!181 *! Calls: REPLICATE() (function in ?) :182 IIF() (function in ?)183184 *l**************************************175 procedure edit_record176 vsur=replicate( ,7)177 @ 3,1 say [Denumire :] get denumire function [@!]178 @ 4,1 say [Cod grupa :] get codgrupa picture [999]179 @ 5,1 say [Cont :] get cont180 @ 6,1 say [Unitate de masura:] get unitmas function [@!]181 @ 7,1 say [Pret unitar :] get Pretunitar picture [9999999.99]182 @ 8,1 say [Sursa material :] get vsur picture @M Indigen, Import]183 read184 replace sursa with iif(vsur='fndigen', 0,1)185 replace pretmediu with pretunitar186 return188 * EOF: FIN.ACT
Acest program (FIN.PRG), este programul ce lansează lucrarea de evidenţă contabilă a produselor finite. La selectarea acestei opţiuni, va apărea pe ecran lucrarea de produse finite cu toate opţiunile sale. Numai o parte din aceste opţiuni vor fi valide lucru care va fi semnalat printr-un mesaj în subsolul ecranului. Dacă se va încerca activarea unei astfel de optiuni, programul va semnaliza eroare.
1 *| *************************************2 *!3 *! Program C:\CURS\PROGT\SIGNON.PRG4 *5 * System: Evidenţa situaţiilor financiar-contabile6 * Author: Emil Pfeiffer7 * Copyright (c) 1998, Emil Pfeiffer8 * Last modified: 10/21/96 9.009 *10 Called by:FIN.PRG11 *12 * Calls: INT() (function in ?) :13 SUBSTR() (function in ?)14 SECONDS() (function in ?)15 UPPER() (function in ?)1617 Documented 08/14/98 at 10.1918 *l**************************************19 set talk off20 define window demo from 14,02 to 16,17 double21 clear22 @ 07,00394041 activate screen bottom42 @ 06,00 to 20,79 double43 store ' PRODUSE FINITE * PRODUSE FIITE * PRODUSE FINITE *;PRODUSE FINITE * PRODUSE FINITE * PRODUSE FINITE * '44 signon45 store 0 to line46 for line=0 to547 if line/2=int(line/2)48 @ line,00 say substr(signon,1,80) color scheme 1 && B/n49 else50 @ line,00 say substr(signon,5,80) colorscheme 1 && B/n51 endif52 endfor53 for line = 21 to 2354 if line/2=int(line/2)55 @ line,00 say substr(signon,1,80) color scheme 1 && B/n56 else57 @ !ine,00 say substr(signon,5,80) color scheme 1 && B/n58 endif59 endfor60 @ 24,00 say substr(signon,1,79) color scheme 1 && B/n61 @ 07,01 fill to 19,36 color scheme 1 && W+/B62 @ 07,37 fill to 19,78 color scheme 1 && W+/B63 activate window demo] 64 @ 00,00 say ' PROD-FIN ' color scheme 7 &&br+/B65 for mcol=03 to 5266 move window demo to14,mcol67 store seconds() to stime68 do while seconds() <= stime + .01569 enddo70 endfor71 activate screen bottom72 @ 07,01 fill to 19,36 color scheme 1 && n/B73 @ 0,0 clea to 5,7974 @ 24,1 clea to 28,7975 @ 3,10 say 'PAROLA:'76 set colo to x,x,w,gr77 @ 3,19 say 'PAROLA:' get par pict 'XXXXXX'78 read79 set color to80 par=upper(par)81 deac wind all82 retum83 *EOF85 *: EOF: SIGNON.ACT
1 *************************************************2*3*Program; C:\CURS\PROGT\INDEX.PRG4*5*System: Evidenta situatiilor financiar-contabile6*Author: Emil Pfeiffer7*Copyright (c) 1998, Emil Pfeiffer8*Lastmodified: 08/14/98 8:9 *10 *Called by: FIN.PRG11 *12 *Ca!ls: STR() (function in ?)13 *14 *Uses: NOM.DBF15 *STOC.DBF16 *MISC.DBF17 *FACT.DBF18 *19 *Indexes: INDNOM.IDX20 *INDNOMA.IDX21 *INDSTOC.IDX22 *FISMISC.IDX23 *INDMISC.IDX24 *NRFACT.IDX25 *FACF.IDX26 *DAT.IDX27 *IFUR.IDX28 *29 *Documented 08/14/98 at 10:19 FoxDat30 **************************31 Set talk on32 close all33 use nom34 jnde on str(codmater,8) to indnom comp35 inde on denumire to indnoma comp36 use stoc37 inde on str(codmag,2)+str(codmater,8) to indstoc comp38 use misc39 inde on str(cod,8) to fismisc comp40 inde on str(type,2)+str(nrdoc,6) to indmisc comp41 use fact42 inde on nrdoc to nrfact43 inde on str(fum,6) to facf44 inde on data to dat45 inde on fum to ifur46 close all47 set talk off48 retu49 *: EOF: INDEX.ACT
INDEX.PRG este un program care pregăteşte fişierele pentru a face posibil lucrul privind contabilitatea produselor finite şi a materialelor. (De fapt face indexarea acestor fişiere în cazul în care programul lansat anterior nu s-a terminat normal - intreruperi de curent de exempiu sau a!te cauze - fapt ce poate face ca anumite fişiere să-şi piardă indexii).
1 ****************************************************2 *3 *Program: C:\CURS\PROGT\CORSTOC.PRG4 *5 System: Evidenta situatiilor financiar-contabile6 Author: Emil Pfeiffer7 Copyrigt (c) Emil Pfeiffer8 Last modified: 08/02/93 17:029 *10 Called by: FIN.PRG11 *13 FOUND() (function in ?)14 RECN() (function in ?)15 EOF() (function in ?)16 DATE() (function in ?)17 *18Uses: MISC.DBF19TMP.DBF
20STOC.DBF
21NOM.DBF
22MISC3.DBF
23FACT.DBF
24INCAS.DBF
25
26Indexes: FISMISC.IDX
27INDMISC.IDX
28INDSTOC.IDX
29INDNOM.IDX
30INDNOMA.IDX
31MISC3.IDX
32NRFACT.IDX
33DAT.IDX
34INCAS.IDX
35
36Documented 08/21/98 at 06:11 FoxDoc
37
*************************
- 38 set talk off39 set deleted on40 set decimals to 341 priv Imag, lcod, xx42 close databases43 copy filemisc.dbf to tmp.dbf44 sele 845 use misc inde fismisc, indmisc46 rein47 *total on str(cod,8) to svals fields valoare for type=948 sele 749 use stoc inde indstoc50 rein51 repl all i with 0, o with 0, pi with 0, po with 052 sele 253 use tmp54 sele 455 use nom inde indnom, indnoma56 rein57 select 558 use misc3 inde misc359 repl all etcr with 0,eccr with 074 select tmp75 scan all76 doc=type77 pmag=mag78 if doc=9.and.cont='206'79 lmag=080 lcod=codies81 else82 lmag=pmag83 lcod=cod84 endif85 vind = str(lmag,2)+str(lcod,8)86 vind1=str(icod,8)87 select stoc88 seek vind89 if.not.found()90 append blank91 repl codmater with lcod,codmag with lmag, cantitate with 0,;92 I withy 0, pi with 0, o with 0, po wilh 093 endif94 if doc > 1095 if doc=16.and.tmp.cont = 20696 reccr=recno()97 seek 0 +vind198 if .not.found()99 append blank100 repl codmater with lcod, codmag with 0, o with 0, po with 0101 endif102 repl i with i+tmp.cant, pi with pi+tmp.valoare103 go reccr104 endif105 repl o with o+tmp.cant, po with po + tmp.valoare106 else107 if doc#9108 replace i with i tmp.cant109 replace pi with pi tmp.valoare110 else111 if tmp.cont = 206112 reccr=recno()113 seek 0+vind1114 replace po with po+tmp->valoare115 replaceo with o+tmp->cant116 goreccr117 else118 replacei with i+tmp->cant119 selenom120 seek str(tmp->cod,8)121 selestoc122 replace pi with pi + tmp->cant*nom->pretunitar123 endif124 endif125 endif126 endscan127 select misc128 gotop129 do while .not eof()130 w=str(mag,2)+sfr(cod,8)131 selemisc3132 seekvv133 iffoundO134 ifm'sc.type=16135 repl eccr with eccr+misc.cant.data with misc.data136 else137 ifmisc.type<10138 repl etcr with etcr+misc.cant139 endif140 endif141 endif142 sele misc143 skip144 enddo145 sele misc3146 repl data with date()-15 for data = {/ /}147 use fact inde nrfact.dat148 rein149 use incas inde incas150 rein151 return153 *: EOF; CORSTOC.ACTCORSTOC.PRG este un program care este lansat automat în cazul în care area anterioară a lucrării a dus la terminarea anormală a programului (fapt ce este lan glgt de către variabila FINOK (variabilă de memorie care este salvată şi este citită rînceputul lucrufui) care în cazul că este .F. înseamnă că sfârşitul este anormal, iar a g gs(e J. înseamnă sfârşit normal. Programul reface fişierul de stoc din fişierul de iiscări (prin operarea fiecărei mişcări în stoc).
Niciun comentariu:
Trimiteți un comentariu