From 7cc3bff3582ab6d5140aeaa2fd7e551f76086404 Mon Sep 17 00:00:00 2001 From: Marius Mutu Date: Mon, 3 Aug 2026 01:51:36 +0300 Subject: [PATCH] Initial: flux text FoxBin2Prg (git urmareste .??2 in-arbore, binarele VFP git-ignored) Inrolare ROACONTRACTE conform COMUN\docs\inrolare-proiect-git-text.md: - .gitignore/.gitattributes dupa modelul ROACONT (COMUN/ exclus, are repo propriu) - 439 texte FoxBin2Prg generate in arbore (vc2/sc2/fr2/mn2/pj2/db2) - Clase\registry.vcx ramane binar: memo .vct corupt (Error 41), nu se poate converti - Clase\ferestre_contracte.vcx: text generat, roundtrip scutit (fara write-back) - CLAUDE.md, docs/README.md, roa_sync.bat Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01RYbiinqXxdEqXi53x4Ro7K --- .gitattributes | 4 + .gitignore | 112 + CLAUDE.md | 144 + Clase/Outlook2003BarArrow.png | Bin 0 -> 360 bytes Clase/Outlook2003BarSplitter.png | Bin 0 -> 115 bytes Clase/ferestre_contracte.vc2 | 17957 ++++++++++++++++++++++++ Clase/oOptiuni.vc2 | 1456 ++ Clase/ofundal.vc2 | 47 + Clase/ofundal_roaclienti.vc2 | 1073 ++ Clase/onom_clienti.vc2 | 3347 +++++ Clase/outlook2003bar.vc2 | 1624 +++ Clase/registry.h | 79 + Clase/registry.vct | Bin 0 -> 36531 bytes Clase/registry.vcx | Bin 0 -> 2231 bytes Clase/roaclienti.vc2 | 218 + Clase/solution.vc2 | 65 + Clase/utility.vc2 | 83 + Ferestre/ATENTIE1.sc2 | 75 + Ferestre/frm_dg_date_generale.sc2 | 65 + Ferestre/frm_dg_fact.sc2 | 50 + Ferestre/frm_dg_link.sc2 | 47 + Ferestre/frm_dg_obiectul.sc2 | 94 + Ferestre/frm_dg_observatii.sc2 | 35 + Ferestre/frm_dg_tf.sc2 | 70 + Ferestre/frm_dg_tl.sc2 | 49 + Ferestre/fundal.sc2 | 129 + Ferestre/startfirma.sc2 | 783 ++ Grafice/C.ico | Bin 0 -> 766 bytes Grafice/CHECKMRK.ICO | Bin 0 -> 1078 bytes Grafice/Calendar Multiweek 16.png | Bin 0 -> 866 bytes Grafice/Calendar Multiweek 24.png | Bin 0 -> 1571 bytes Grafice/Cont12.ico | Bin 0 -> 766 bytes Grafice/Contacts 16.png | Bin 0 -> 870 bytes Grafice/Contacts 24.png | Bin 0 -> 1595 bytes Grafice/EXCLAM1.ICO | Bin 0 -> 1078 bytes Grafice/EXCLAM2.ICO | Bin 0 -> 1078 bytes Grafice/EXCLEM.ICO | Bin 0 -> 1846 bytes Grafice/EYE.ICO | Bin 0 -> 1078 bytes Grafice/Email Envelope 16.png | Bin 0 -> 825 bytes Grafice/Email Envelope 24.png | Bin 0 -> 1464 bytes Grafice/FIND.BMP | Bin 0 -> 246 bytes Grafice/Favourites 16.png | Bin 0 -> 687 bytes Grafice/Favourites 24.png | Bin 0 -> 1145 bytes Grafice/Games 16.png | Bin 0 -> 777 bytes Grafice/Games 24.png | Bin 0 -> 1494 bytes Grafice/HLP.BMP | Bin 0 -> 246 bytes Grafice/H_POINT.CUR | Bin 0 -> 318 bytes Grafice/Help 2 16.png | Bin 0 -> 762 bytes Grafice/Help 2 24.png | Bin 0 -> 1364 bytes Grafice/INFO_c.ICO | Bin 0 -> 1846 bytes Grafice/Intreb.ico | Bin 0 -> 1078 bytes Grafice/Music Player 1 16.png | Bin 0 -> 857 bytes Grafice/Music Player 1 24.png | Bin 0 -> 1655 bytes Grafice/Pics 1 16.png | Bin 0 -> 846 bytes Grafice/Pics 1 24.png | Bin 0 -> 1685 bytes Grafice/Security 1 16.png | Bin 0 -> 743 bytes Grafice/Security 1 24.png | Bin 0 -> 1326 bytes Grafice/Tech Support 16.png | Bin 0 -> 733 bytes Grafice/Tech Support 24.png | Bin 0 -> 1441 bytes Grafice/WZDELETE.BMP | Bin 0 -> 358 bytes Grafice/WZEDIT.BMP | Bin 0 -> 358 bytes Grafice/WZSETUP.INI | 36 + Grafice/attach.bmp | Bin 0 -> 2454 bytes Grafice/clienti_jos.bmp | Bin 0 -> 4050 bytes Grafice/clienti_sus.bmp | Bin 0 -> 4050 bytes Grafice/cont11.ICO | Bin 0 -> 1078 bytes Grafice/ctr_jos.bmp | Bin 0 -> 4050 bytes Grafice/ctr_sus.bmp | Bin 0 -> 4050 bytes Grafice/cump.bmp | Bin 0 -> 1078 bytes Grafice/curs_jos.bmp | Bin 0 -> 4050 bytes Grafice/curs_sus.bmp | Bin 0 -> 4050 bytes Grafice/dkcontrl.db2 | 4184 ++++++ Grafice/downArrow.bmp | Bin 0 -> 1998 bytes Grafice/entitati1.bmp | Bin 0 -> 7534 bytes Grafice/entitati2.bmp | Bin 0 -> 7534 bytes Grafice/f1.jpg | Bin 0 -> 9291 bytes Grafice/f2.jpg | Bin 0 -> 6403 bytes Grafice/f3.jpg | Bin 0 -> 2651 bytes Grafice/fact_jos.bmp | Bin 0 -> 1282 bytes Grafice/fact_sus.bmp | Bin 0 -> 1282 bytes Grafice/facturi_jos.bmp | Bin 0 -> 4050 bytes Grafice/facturi_sus.bmp | Bin 0 -> 4050 bytes Grafice/info_jos.bmp | Bin 0 -> 4050 bytes Grafice/info_sus.bmp | Bin 0 -> 4050 bytes Grafice/lock.bmp | Bin 0 -> 2238 bytes Grafice/open.bmp | Bin 0 -> 246 bytes Grafice/outlook2003bar_1.bmp | Bin 0 -> 182 bytes Grafice/outlook2003bar_2.bmp | Bin 0 -> 182 bytes Grafice/outlook2003bar_3.bmp | Bin 0 -> 182 bytes Grafice/outlook2003bar_4.bmp | Bin 0 -> 182 bytes Grafice/outlook2003bar_5.bmp | Bin 0 -> 182 bytes Grafice/outlook2003bar_6.bmp | Bin 0 -> 82 bytes Grafice/plcont1.bmp | Bin 0 -> 7534 bytes Grafice/plcont2.bmp | Bin 0 -> 7534 bytes Grafice/roaclienti.bmp | Bin 0 -> 367014 bytes Grafice/roafurnizori.bmp | Bin 0 -> 367014 bytes Grafice/unlock.bmp | Bin 0 -> 2238 bytes Grafice/upArrow.bmp | Bin 0 -> 1822 bytes Grafice/upArrow.png | Bin 0 -> 647 bytes Meniuri/rapIncasari.mn2 | 29 + Meniuri/roacontracte.mn2 | 125 + Programe/1proverb.prg | 107 + Programe/Log_mesaje.prg | 96 + Programe/actualizari.prg | 270 + Programe/genhtml.db2 | 2183 +++ Programe/mesaje.prg | 43 + Programe/onom_clienti.prg | 214 + Programe/oparteneri.prg | 687 + Programe/oparteneri_contracte.prg | 379 + Programe/oproceduri_preluari.prg | 41 + Programe/oproceduri_registretva.prg | 57 + Programe/oproceduri_roaclienti.prg | 1814 +++ Programe/oproceduri_roacontracte.prg | 1496 ++ Programe/ovariabile_globale.prg | 12 + Programe/pmenu.prg | 4578 ++++++ Programe/proceduri.prg | 935 ++ Programe/quitapp.prg | 340 + Programe/rapbal97.prg | 104 + Programe/refverif.prg | 7489 ++++++++++ Programe/roacontracte.prg | 1064 ++ Programe/shutdown.prg | 3 + Programe/update_nomenclator.prg | 65 + Programe/update_roadef_sal.prg | 119 + Programe/verifica.prg | 1486 ++ ROACONTRACTE.ARM | 46 + Rapoarte/Arhiva/rFactInc.fr2 | 1214 ++ Rapoarte/Arhiva/rFacturi.fr2 | 1274 ++ Rapoarte/fisa_contractului.fr2 | 2402 ++++ Rapoarte/ireg_parteneri_rpt5.fr2 | 669 + Rapoarte/rRate.fr2 | 902 ++ Rapoarte/rRate_facturi_extins.fr2 | 1370 ++ Rapoarte/ralerte.fr2 | 520 + Rapoarte/rap_facturat_incasat.fr2 | 914 ++ Rapoarte/ratedefacturat.fr2 | 650 + Rapoarte/rcontracte.fr2 | 806 ++ Rapoarte/rcontracte_centralizator.fr2 | 830 ++ Rapoarte/rctrrestdefact.fr2 | 1034 ++ Rapoarte/rincasari.fr2 | 422 + Rapoarte/rrate_facturi.fr2 | 1094 ++ Teste/fundal.sc2 | 923 ++ Teste/ofundal_roaclienti.vc2 | 1085 ++ Teste/oproceduri_roacontracte.prg | 1490 ++ Teste/outlook2003bar.vc2 | 1624 +++ Teste/readme.txt.txt | 0 Teste/roacontracte.prg | 1003 ++ changelog_roacontracte.txt | 1026 ++ config.fpw | 44 + datemenu/Vechi/menu1.db2 | 888 ++ datemenu/Vechi/nom_meniu.db2 | 306 + datemenu/Vechi/query.QPX | Bin 0 -> 273 bytes datemenu/Vechi/refaceri.db2 | 384 + datemenu/Vechi/tabela_fisa_cont.db2 | 567 + datemenu/infisiere.db2 | 545 + datemenu/yact.db2 | 426 + docs/README.md | 24 + roaContracte.pj2 | 592 + roa_sync.bat | 2 + versiune_db.txt | 1 + 158 files changed, 80639 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 CLAUDE.md create mode 100644 Clase/Outlook2003BarArrow.png create mode 100644 Clase/Outlook2003BarSplitter.png create mode 100644 Clase/ferestre_contracte.vc2 create mode 100644 Clase/oOptiuni.vc2 create mode 100644 Clase/ofundal.vc2 create mode 100644 Clase/ofundal_roaclienti.vc2 create mode 100644 Clase/onom_clienti.vc2 create mode 100644 Clase/outlook2003bar.vc2 create mode 100644 Clase/registry.h create mode 100644 Clase/registry.vct create mode 100644 Clase/registry.vcx create mode 100644 Clase/roaclienti.vc2 create mode 100644 Clase/solution.vc2 create mode 100644 Clase/utility.vc2 create mode 100644 Ferestre/ATENTIE1.sc2 create mode 100644 Ferestre/frm_dg_date_generale.sc2 create mode 100644 Ferestre/frm_dg_fact.sc2 create mode 100644 Ferestre/frm_dg_link.sc2 create mode 100644 Ferestre/frm_dg_obiectul.sc2 create mode 100644 Ferestre/frm_dg_observatii.sc2 create mode 100644 Ferestre/frm_dg_tf.sc2 create mode 100644 Ferestre/frm_dg_tl.sc2 create mode 100644 Ferestre/fundal.sc2 create mode 100644 Ferestre/startfirma.sc2 create mode 100644 Grafice/C.ico create mode 100644 Grafice/CHECKMRK.ICO create mode 100644 Grafice/Calendar Multiweek 16.png create mode 100644 Grafice/Calendar Multiweek 24.png create mode 100644 Grafice/Cont12.ico create mode 100644 Grafice/Contacts 16.png create mode 100644 Grafice/Contacts 24.png create mode 100644 Grafice/EXCLAM1.ICO create mode 100644 Grafice/EXCLAM2.ICO create mode 100644 Grafice/EXCLEM.ICO create mode 100644 Grafice/EYE.ICO create mode 100644 Grafice/Email Envelope 16.png create mode 100644 Grafice/Email Envelope 24.png create mode 100644 Grafice/FIND.BMP create mode 100644 Grafice/Favourites 16.png create mode 100644 Grafice/Favourites 24.png create mode 100644 Grafice/Games 16.png create mode 100644 Grafice/Games 24.png create mode 100644 Grafice/HLP.BMP create mode 100644 Grafice/H_POINT.CUR create mode 100644 Grafice/Help 2 16.png create mode 100644 Grafice/Help 2 24.png create mode 100644 Grafice/INFO_c.ICO create mode 100644 Grafice/Intreb.ico create mode 100644 Grafice/Music Player 1 16.png create mode 100644 Grafice/Music Player 1 24.png create mode 100644 Grafice/Pics 1 16.png create mode 100644 Grafice/Pics 1 24.png create mode 100644 Grafice/Security 1 16.png create mode 100644 Grafice/Security 1 24.png create mode 100644 Grafice/Tech Support 16.png create mode 100644 Grafice/Tech Support 24.png create mode 100644 Grafice/WZDELETE.BMP create mode 100644 Grafice/WZEDIT.BMP create mode 100644 Grafice/WZSETUP.INI create mode 100644 Grafice/attach.bmp create mode 100644 Grafice/clienti_jos.bmp create mode 100644 Grafice/clienti_sus.bmp create mode 100644 Grafice/cont11.ICO create mode 100644 Grafice/ctr_jos.bmp create mode 100644 Grafice/ctr_sus.bmp create mode 100644 Grafice/cump.bmp create mode 100644 Grafice/curs_jos.bmp create mode 100644 Grafice/curs_sus.bmp create mode 100644 Grafice/dkcontrl.db2 create mode 100644 Grafice/downArrow.bmp create mode 100644 Grafice/entitati1.bmp create mode 100644 Grafice/entitati2.bmp create mode 100644 Grafice/f1.jpg create mode 100644 Grafice/f2.jpg create mode 100644 Grafice/f3.jpg create mode 100644 Grafice/fact_jos.bmp create mode 100644 Grafice/fact_sus.bmp create mode 100644 Grafice/facturi_jos.bmp create mode 100644 Grafice/facturi_sus.bmp create mode 100644 Grafice/info_jos.bmp create mode 100644 Grafice/info_sus.bmp create mode 100644 Grafice/lock.bmp create mode 100644 Grafice/open.bmp create mode 100644 Grafice/outlook2003bar_1.bmp create mode 100644 Grafice/outlook2003bar_2.bmp create mode 100644 Grafice/outlook2003bar_3.bmp create mode 100644 Grafice/outlook2003bar_4.bmp create mode 100644 Grafice/outlook2003bar_5.bmp create mode 100644 Grafice/outlook2003bar_6.bmp create mode 100644 Grafice/plcont1.bmp create mode 100644 Grafice/plcont2.bmp create mode 100644 Grafice/roaclienti.bmp create mode 100644 Grafice/roafurnizori.bmp create mode 100644 Grafice/unlock.bmp create mode 100644 Grafice/upArrow.bmp create mode 100644 Grafice/upArrow.png create mode 100644 Meniuri/rapIncasari.mn2 create mode 100644 Meniuri/roacontracte.mn2 create mode 100644 Programe/1proverb.prg create mode 100644 Programe/Log_mesaje.prg create mode 100644 Programe/actualizari.prg create mode 100644 Programe/genhtml.db2 create mode 100644 Programe/mesaje.prg create mode 100644 Programe/onom_clienti.prg create mode 100644 Programe/oparteneri.prg create mode 100644 Programe/oparteneri_contracte.prg create mode 100644 Programe/oproceduri_preluari.prg create mode 100644 Programe/oproceduri_registretva.prg create mode 100644 Programe/oproceduri_roaclienti.prg create mode 100644 Programe/oproceduri_roacontracte.prg create mode 100644 Programe/ovariabile_globale.prg create mode 100644 Programe/pmenu.prg create mode 100644 Programe/proceduri.prg create mode 100644 Programe/quitapp.prg create mode 100644 Programe/rapbal97.prg create mode 100644 Programe/refverif.prg create mode 100644 Programe/roacontracte.prg create mode 100644 Programe/shutdown.prg create mode 100644 Programe/update_nomenclator.prg create mode 100644 Programe/update_roadef_sal.prg create mode 100644 Programe/verifica.prg create mode 100644 ROACONTRACTE.ARM create mode 100644 Rapoarte/Arhiva/rFactInc.fr2 create mode 100644 Rapoarte/Arhiva/rFacturi.fr2 create mode 100644 Rapoarte/fisa_contractului.fr2 create mode 100644 Rapoarte/ireg_parteneri_rpt5.fr2 create mode 100644 Rapoarte/rRate.fr2 create mode 100644 Rapoarte/rRate_facturi_extins.fr2 create mode 100644 Rapoarte/ralerte.fr2 create mode 100644 Rapoarte/rap_facturat_incasat.fr2 create mode 100644 Rapoarte/ratedefacturat.fr2 create mode 100644 Rapoarte/rcontracte.fr2 create mode 100644 Rapoarte/rcontracte_centralizator.fr2 create mode 100644 Rapoarte/rctrrestdefact.fr2 create mode 100644 Rapoarte/rincasari.fr2 create mode 100644 Rapoarte/rrate_facturi.fr2 create mode 100644 Teste/fundal.sc2 create mode 100644 Teste/ofundal_roaclienti.vc2 create mode 100644 Teste/oproceduri_roacontracte.prg create mode 100644 Teste/outlook2003bar.vc2 create mode 100644 Teste/readme.txt.txt create mode 100644 Teste/roacontracte.prg create mode 100644 changelog_roacontracte.txt create mode 100644 config.fpw create mode 100644 datemenu/Vechi/menu1.db2 create mode 100644 datemenu/Vechi/nom_meniu.db2 create mode 100644 datemenu/Vechi/query.QPX create mode 100644 datemenu/Vechi/refaceri.db2 create mode 100644 datemenu/Vechi/tabela_fisa_cont.db2 create mode 100644 datemenu/infisiere.db2 create mode 100644 datemenu/yact.db2 create mode 100644 docs/README.md create mode 100644 roaContracte.pj2 create mode 100644 roa_sync.bat create mode 100644 versiune_db.txt diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..bbf8fed --- /dev/null +++ b/.gitattributes @@ -0,0 +1,4 @@ +# SVN ramane autoritatea pentru line endings (rulaj paralel svn+git). +# Dezactiveaza orice normalizare CRLF/LF facuta de git, ca sa nu mai apara +# "modificari" fantoma dupa fiecare svn update/checkout care doar atinge mtime-ul. +* -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..47c6c0c --- /dev/null +++ b/.gitignore @@ -0,0 +1,112 @@ +# ============================================================================= +# Flux text FoxBin2Prg: git urmareste DOAR versiunile text .??2 (in arbore), +# nu binarele VFP. Binarele convertibile si indecsii regenerabili se ignora. +# SVN ramane sursa de adevar pentru binare (via global-ignores pe .??2). +# ============================================================================= + +# --- Binare VFP convertibile in text .??2 (ambele forme de caz) --- +*.vcx +*.VCX +*.vct +*.VCT +*.scx +*.SCX +*.sct +*.SCT +*.frx +*.FRX +*.frt +*.FRT +*.mnx +*.MNX +*.mnt +*.MNT +*.lbx +*.LBX +*.lbt +*.LBT +*.pjx +*.PJX +*.pjt +*.PJT +*.dbc +*.DBC +*.dct +*.DCT + +# --- Exceptie: memo corupt (Error 41), FoxBin2Prg nu-l poate converti; ramane binar --- +!Clase/registry.vcx +!Clase/registry.vct + +# --- Indecsi regenerabili (nu se transporta in .db2/.dc2) --- +*.cdx +*.CDX +*.dcx +*.DCX + +# --- Tabele .dbf convertite in .db2 (lista explicita; restul .dbf raman binare) --- +datemenu/infisiere.dbf +datemenu/yact.dbf +datemenu/Vechi/menu1.dbf +datemenu/Vechi/menu1.FPT +datemenu/Vechi/nom_meniu.dbf +datemenu/Vechi/refaceri.dbf +datemenu/Vechi/tabela_fisa_cont.dbf +datemenu/Vechi/tabela_fisa_cont.FPT +Grafice/DKCONTRL.DBF +Programe/genhtml.dbf +Programe/genhtml.fpt + +# --- Fisiere generate/compilate Visual FoxPro --- +*.fxp +*.FXP +*.mpr +*.MPR +*.mpx +*.MPX +*.vcr +*.VCR +*.src + +# --- Backup-uri si fisiere temporare create de editorul VFP --- +*.bak +*.BAK +*.TBK +*.tmp +*.TMP +*.err +*.ERR +*.Stats +*.stackdump + +# --- Executabile compilate --- +*.exe +*.EXE + +# --- Stare locala / specifica masinii, nu proiectului --- +FOXUSER.DBF +FOXUSER.FPT +roacontracte_ref.CDX +roacontracte_ref.DBF +roacontracte_ref.FPT +log.txt +LOG.txt +*.lnk +Thumbs.db +Desktop.ini +bash.exe.stackdump + +# --- Setari locale Claude Code (specifice masinii, nu proiectului) --- +.claude/ + +# --- Notite locale neversionate / patch-uri de review --- +docs/local/ +docs/progres.md +docs/diff_*.patch +.gstack/ + +# --- Subversion (working copy paralela) --- +.svn/ + +# --- COMUN este gestionat separat, prin propriul sau git (romfast/comun.git) --- +COMUN/ diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..fbd2cc2 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,144 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## What this is + +ROACONTRACTE is a Visual FoxPro 9 desktop application (Romanian-language) for **contracte** — +client/supplier contracts with rate (scadentar), facturare din contract, incasari, garantii si +alerte. Thick client: VFP source (`.prg`, `.scx`, `.vcx`, `.mnx`, `.frx`) compiled to +`roacontracte.exe`, on an Oracle backend reached through the shared `goExecutor`/`goConn` +pass-through objects (`gcS` = schema, primita in parametrul de lansare). + +It is one product in the ROA suite built by ROA Romfast SRL; this directory +(`D:\ROA\ROACONTRACTE`) is one working copy inside the `D:\ROA` tree that holds the siblings +(ROACONT, ROAGEST, ROAIMOB, ROAFACTURARE, ...) plus the suite-wide shared library +`D:\ROA\COMUNROA`. + +Cod, comentarii, meniuri si changelog sunt in romana — pastreaza limba la editari. + +## Version control + +Primarily an **SVN** working copy (`^/ROACONTRACTE/Trunk`, repository root +`http://svnroa:3001/svn/ROA`) — `svn status`, `svn diff`, `svn commit` raman fluxul legacy. +`COMUN\` e external SVN (`^/COMUN/Trunk`). A **git** mirror runs in parallel +(`gitea.romfast.ro:romfast/roacontracte.git`), synced from SVN; SVN stays the source of truth. + +Git tracks the **FoxBin2Prg text versions** of the VFP binaries (`.vc2/.sc2/.fr2/.mn2/.pj2/.db2`), +generated in-tree next to each binary — not the binaries themselves. Refresh them with +`git_sync.ps1` at the start of every session and before any `git commit`: + +``` +powershell -ExecutionPolicy Bypass -File D:\ROA\UTIL\foxbin2prg\git_sync.ps1 -ProjectRoot D:\ROA\ROACONTRACTE +``` + +Sau, mai simplu, `roa_sync.bat` din radacina proiectului: face svn update -> git_sync -> commit +`sync SVN rN` pe `main` (proiect + COMUN) -> push. + +Then search the `.??2` files in-tree with Grep, citing `file:line`. Write-back text->binary via +`txt2vcx.ps1` is supported **only for `.vc2`/`.sc2`**; `.frx/.mnx/.pjx/.dbf` are editable only in +the VFP IDE. See `D:\ROA\UTIL\foxbin2prg\CLAUDE.md` and `COMUN\docs\flux-editare-vfp-text.md`. + +`COMUN/` is excluded from this repo's git — shared by every ROA product and versioned by its +**own git repo**, `gitea.romfast.ro:romfast/comun.git`. Run git commands for `COMUN/` from inside +that directory, and treat any change there as cross-project (fara `push --force`). + +## Building / running + +No CLI build. Compiled from the VFP 9 IDE: open `roaContracte.pjx`, then Project > Build. +Entry point is `Programe/roacontracte.prg` (`PARAMETERS tparam` — sir cu `;` trimis de launcher-ul +ROA Start: host, user, parola, idutil, idprogram, ..., an, luna, schema, idfirma; altfel intra pe +valorile de dezvoltare din cod). + +`roacontracte.exe` refuza sa porneasca daca numele fisierului nu incepe cu `ROACONTRACTE`. +Startup-ul e procedural (nu `RoaApp`): `SET PATH` peste folderele proprii + `COMUN\*` + `..\COMUNROA\`, +zeci de `SET CLASSLIB/PROCEDURE ... ADDITIVE` (ordinea conteaza — inregistrarile ulterioare umbresc), +apoi `goApp = CREATEOBJECT("wzApplication")` (AppWizard, `COMUN\clase\appwiz.vcx`) cu +`goApp.cStartupMenu = meniuri\roacontracte.mpr` si `goApp.cStartupForm = COMUN\ferestre\frm_login.scx`. +Fisiere `.prg`/`.vcx` noi comune trebuie inregistrate acolo ca sa fie vizibile in aplicatie. +`config.fpw` da mediul de rulare; `versiune_db.txt` (`YYYY_MM_DD_NN`) e marcajul ultimei migrari DB. +Editeaza intotdeauna sursa, nu compilatul (`.FXP`/`.SCT`/`.VCT`/`.MPR`). + +## Directory layout + +`Programe/` logica de business proprie (`oproceduri_roacontracte.prg`, `oproceduri_roaclienti.prg`, +`oparteneri_contracte.prg`, `oproceduri_registretva.prg`, `oproceduri_preluari.prg`, `pmenu.prg`, +`refverif.prg`, `verifica.prg`) · `Clase/` `.vcx` proprii (`ferestre_contracte.vcx`, +`onom_clienti.vcx`, `roaclienti.vcx`, `ofundal*.vcx`, `outlook2003bar.vcx`) · `Ferestre/` formulare +(`frm_dg_*.scx` = paginile din datele generale ale contractului, `fundal.scx`, `startfirma.scx`) · +`Meniuri/` (`roacontracte.mnx` = meniul de start, `rapIncasari.mnx`) · `Rapoarte/` `.frx` +(`rcontracte`, `rcontracte_centralizator`, `rRate`, `rrate_facturi`, `rRate_facturi_extins`, +`rincasari`, `rap_facturat_incasat`, `rctrrestdefact`, `ratedefacturat`, `ralerte`, +`fisa_contractului`) · `Grafice/`, `datemenu/`, `Locale/`, `Teste/` · `COMUN/` biblioteca partajata. + +Ca la ROAGEST, o buna parte din logica efectiva vine din `COMUN\programe\` si `COMUN\clase\` +rezolvate prin `SET PATH` (login, nomenclatoare, parteneri, eFactura ANAF, listari, oracle). + +## Domain quick reference + +Obiecte Oracle uzuale (vezi `Programe/oproceduri_roacontracte.prg`): `vcontracte`, +`vcontracte_toate`, `vtipuri_contracte`, `vctr_scadentar` (ratele contractului), +`vctr_rate_facturi` (legatura rata-factura), `vctr_articole`, `vctr_selectii`, +`ctr_facturi_garantii`, `vireg_parteneri`/`ireg_parteneri`, `vnom_valute`, `vnom_sectii`, +`vatas_referinte` (atasamente), `vcrm_politici_preturi`, `vcrm_note_vanzari`. + +TVA e sensibil la perioada documentului (19/9/5% inainte de 01.08.2025, 21/11% dupa) — foloseste +cota din perioada documentului, nu "cota curenta". + +## Changelog convention + +`changelog_roacontracte.txt`, blocuri de comentariu HTML, cea mai noua intrare **prima**: + +``` + +``` + +Tag-uri: `:nou:`, `:modificare:`, `:eroare:`, `:adaugare:`. Se bumpeaza `MAJOR.MINOR.PATCH` +(seria curenta `2.3.x`). Intrarile sunt scurte, orientate spre utilizator: o singura intrare +consolidata per livrare, fara pasi intermediari sau detalii interne. + +## Reguli de lucru si testare + +**Inainte de orice modificare de cod sau testare, citeste `COMUN\docs\reguli_lucru.md`.** +Nu e optional si nu e doar context: contine regulile de livrare (diff ca fisier + aprobare +inainte de write-back), comentariile (max o linie), modificarile minime, harnessul de testare +headless si — la punctul 7 — lista de conventii obligatorii per zona atinsa (encoding cp1252 la +editarea `.vc2`/`.sc2`, UX formulare/griduri, `GO` pe `Recno()`, `goExecutor` + `ALTER TABLE`, +testare UI, export Oracle). Fisierul e index: urmeaza linkurile relevante pentru sarcina curenta. +Depanare detaliata: `COMUN\docs\depanare_testare_vfp.md`. + +Foloseste **PowerShell**, nu Bash (bash.exe crapa pe aceste masini si lasa stackdump-uri). + +## Mod de lucru: delegare catre subagenti + review inainte de commit + +- **Orchestrare pe misiuni lungi**: niciodata un singur subagent care acumuleaza context pe multe + sarcini inlantuite — sesiunea principala orchestreaza subagenti proaspeti per sarcina (max + ~200-250k tokens per subagent, apoi handoff + agent nou), cu handoff compact pe disc: + `COMUN\docs\orchestrare-subagenti.md`. +- **Delegare**: modificarile de volum/rutina (aplicarea unei propuneri aprobate din `docs/`, + editari pe versiunile text `.??2` + write-back, actualizari de documentatie, rulari de teste) se + delega catre **subagenti Sonnet care lucreaza in background** (Agent tool cu `model: sonnet`), + iar sesiunea principala doar orchestreaza si verifica rezultatele. +- **Fara commit fara review**: nu da commit (git sau svn) din proprie initiativa pe modificari de + cod — diff-ul se livreaza intai ca fisier in `docs/`, iar commit-ul vine dupa aprobare. +- **Curatenie inainte de commit**: `powershell -File COMUN\utile\curatenie.ps1` (`-DryRun` doar + listeaza) sterge patch-urile de review, handoff-urile, backup-urile `*.pre_runda*.bak` si + artefactele de test. + +## Stil de raspuns + +Raspunsuri scurte si concrete: stare (facut / de decis / urmeaza), cu fisier si linie. Fara +naratiune de proces, fara reluari. Detaliile lungi (dovezi, iesiri de test) se scriu in fisier si +se trimite link-ul. + +## Project insights (docs/) + +`docs/` tine notite scurte si concrete descoperite in timpul lucrului (fluxuri ascunse, capcane, +proceduri/tabele cheie) — vezi `docs/README.md`. Ofera-te proactiv sa actualizezi `docs/` cand +descoperi ceva neevident, ca sesiunile viitoare sa nu reinvestigheze. diff --git a/Clase/Outlook2003BarArrow.png b/Clase/Outlook2003BarArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..4975444b5692798fdf3ce35a43538a1df7a5d3ac GIT binary patch literal 360 zcmV-u0hj)XP)=e(rPWFGN331R=li* zbM@c5n_v!He$M>&ocV`2JFr@!jrJq{w`Me$SYAa#r1MV}3=m?Zpbt8Y1GMKeJ!7^=&!$8>WUInXKa0000FSM^7H)We^ZKa6#zw zj+qA&(h7`qJY!Yde(c>l<<_pPrJ*5bP0l+XkKLn (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +*< LIBCOMMENT: Application Wizard framework class library. /> +* +DEFINE CLASS ct_contracte AS _ctfrmbase OF "..\comun\clase\_ct_base.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cNume.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cNume.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cDurata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cDurata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cNume_val.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cNume_val.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cNr_ctr.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cNr_ctr.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cData_ctr.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cData_ctr.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cValvaluta.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cValvaluta.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cTipc.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cTipc.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cValctva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cValctva.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cSemnat.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cSemnat.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cIncetat.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cIncetat.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cInactiv.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cInactiv.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column12.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column12.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column13.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column13.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column14.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column14.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column15.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column15.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column16.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column16.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column17.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column17.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column18.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column18.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column20.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column20.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cAre_link.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cAre_link.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cAre_link.Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cAre_link.Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cSucursala.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.cSucursala.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column22.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column22.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column23.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column23.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column24.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column24.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_contracte.Column24.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_lbbase1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou_gri1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="BUT_MODIFICA1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="but_factura" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_excel1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_start_criterii1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_reset_criterii1" UniqueID="" Timestamp="" /> + + * + *m: arata_linkuri + *m: dblclick_bind + *m: do_adauga_act_aditional + *p: cfiltru + *p: nireg + * + + * + BackColor = 255,255,255 + cfiltru = + cgridsortlist = grid_contracte + Height = 362 + Name = "ct_contracte" + nireg = 0 + Width = 800 + Gridsort1.Left = 180 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 7 + _ct_controller_keypress1.Name = "_ct_controller_keypress1" + * + + ADD OBJECT '_lbbase1' AS _lbbase WITH ; + BackColor = 255,255,255, ; + Caption = "Lista contractelor", ; + ForeColor = 255,255,255, ; + Left = 8, ; + Name = "_lbbase1", ; + TabIndex = 21, ; + Top = 5 + *< END OBJECT: ClassLib="..\comun\clase\_lb_base.vcx" BaseClass="label" /> + + ADD OBJECT '_shape1' AS _shape WITH ; + Anchor = 11, ; + BackColor = 0,64,128, ; + BorderColor = 0,64,128, ; + Height = 24, ; + Left = 0, ; + Name = "_shape1", ; + Top = 0, ; + Width = 804, ; + ZOrderSet = 0 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="shape" /> + + ADD OBJECT 'But_excel1' AS but_excel WITH ; + Anchor = 9, ; + Left = 711, ; + Name = "But_excel1", ; + TabIndex = 18, ; + ToolTipText = "Fisier Excel", ; + Top = -2, ; + Visible = .T., ; + ZOrderSet = 13 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'but_factura' AS commandbutton WITH ; + Anchor = 9, ; + BackColor = 255,255,255, ; + Caption = "", ; + Height = 27, ; + Left = 770, ; + Name = "but_factura", ; + Picture = ..\comun\grafice\factura.bmp, ; + SpecialEffect = 1, ; + ToolTipText = "Factura", ; + Top = -2, ; + Width = 29 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 683, ; + Name = "But_listare1", ; + TabIndex = 17, ; + ToolTipText = "Listare", ; + Top = -2, ; + Visible = .T., ; + ZOrderSet = 12 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'BUT_MODIFICA1' AS but_modifica WITH ; + Anchor = 9, ; + Height = 27, ; + Left = 626, ; + Name = "BUT_MODIFICA1", ; + Picture = ..\comun\grafice\modific_sus.bmp, ; + TabIndex = 15, ; + ToolTipText = "Modificare", ; + Top = -2, ; + Visible = .T., ; + Width = 34 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 9, ; + Left = 596, ; + Name = "But_nou1", ; + Picture = ..\comun\grafice\nou_sus.bmp, ; + TabIndex = 14, ; + ToolTipText = "Adaugare contract", ; + Top = -2, ; + ZOrderSet = 8 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou_gri1' AS but_nou_gri WITH ; + Anchor = 9, ; + caction = do_adauga_act_aditional, ; + Left = 740, ; + Name = "But_nou_gri1", ; + Picture = ..\comun\grafice\nou_sus_dis.bmp, ; + TabIndex = 19, ; + ToolTipText = "Adaugare act aditional", ; + Top = -2 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_reset_criterii1' AS but_reset_criterii WITH ; + Anchor = 9, ; + Left = 534, ; + Name = "But_reset_criterii1", ; + Top = -2 + *< END OBJECT: ClassLib="..\comun\clase\ocriterii.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_start_criterii1' AS but_start_criterii WITH ; + Anchor = 9, ; + Comment = "*:OnResize=RT", ; + Left = 565, ; + Name = "But_start_criterii1", ; + Top = -2 + *< END OBJECT: ClassLib="..\comun\clase\ocriterii.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + Left = 655, ; + Name = "But_sterge1", ; + TabIndex = 16, ; + ToolTipText = "Stergere", ; + Top = -2, ; + Visible = .T., ; + ZOrderSet = 9 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Anchor = 12, ; + Height = 27, ; + Left = 632, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 23, ; + Top = 331, ; + Width = 153, ; + ZOrderSet = 10, ; + Text_simplu1.ControlSource = "this.parent.parent.nIreg", ; + Text_simplu1.Height = 21, ; + Text_simplu1.Left = 76, ; + Text_simplu1.Name = "Text_simplu1", ; + Text_simplu1.ReadOnly = .T., ; + Text_simplu1.Top = 3, ; + Text_simplu1.Width = 72, ; + LB_SIMPLU1.Caption = "Înregistrãri", ; + LB_SIMPLU1.Name = "LB_SIMPLU1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'grid_contracte' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 24, ; + DeleteMark = .F., ; + FontSize = 10, ; + GridLineColor = 192,192,192, ; + HeaderHeight = 34, ; + Height = 304, ; + HighlightStyle = 2, ; + Left = 8, ; + Name = "grid_contracte", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordMark = .T., ; + RecordSource = "cContracte", ; + RowHeight = 19, ; + TabIndex = 20, ; + Top = 24, ; + Width = 784, ; + ZOrderSet = 3, ; + Column1.ColumnOrder = 3, ; + Column1.ControlSource = "denumire", ; + Column1.FontName = "Arial", ; + Column1.FontSize = 10, ; + Column1.Name = "cNume", ; + Column1.ReadOnly = .T., ; + Column1.Width = 193, ; + Column2.ColumnOrder = 14, ; + Column2.ControlSource = "durata", ; + Column2.FontName = "Arial", ; + Column2.FontSize = 10, ; + Column2.Name = "cDurata", ; + Column2.ReadOnly = .T., ; + Column2.Width = 57, ; + Column3.ColumnOrder = 11, ; + Column3.ControlSource = "nume_val", ; + Column3.FontName = "Arial", ; + Column3.FontSize = 10, ; + Column3.Name = "cNume_val", ; + Column3.ReadOnly = .T., ; + Column3.Width = 63, ; + Column4.ColumnOrder = 2, ; + Column4.ControlSource = "iif(tip_istoric='A',numar_aa,numar)", ; + Column4.FontName = "Arial", ; + Column4.FontSize = 10, ; + Column4.Name = "cNr_ctr", ; + Column4.ReadOnly = .T., ; + Column4.Width = 98, ; + Column5.ColumnOrder = 4, ; + Column5.ControlSource = "data", ; + Column5.FontName = "Arial", ; + Column5.FontSize = 10, ; + Column5.Format = "d", ; + Column5.Name = "cData_ctr", ; + Column5.ReadOnly = .T., ; + Column5.Width = 89, ; + Column6.ColumnOrder = 9, ; + Column6.ControlSource = "valftva", ; + Column6.FontName = "Arial", ; + Column6.FontSize = 10, ; + Column6.Format = "rk", ; + Column6.InputMask = (get_mask(14,MAX(gnPc,gnPVal))), ; + Column6.Name = "cValvaluta", ; + Column6.ReadOnly = .T., ; + Column6.Width = 107, ; + Column7.ColumnOrder = 15, ; + Column7.ControlSource = "denumire_tip", ; + Column7.FontName = "Arial", ; + Column7.FontSize = 10, ; + Column7.Name = "cTipc", ; + Column7.ReadOnly = .T., ; + Column7.Width = 170, ; + Column8.ColumnOrder = 10, ; + Column8.ControlSource = "valctva", ; + Column8.FontName = "Arial", ; + Column8.FontSize = 10, ; + Column8.Format = "rk", ; + Column8.InputMask = (get_mask(14,MAX(gnPc,gnPVal))), ; + Column8.Name = "cValctva", ; + Column8.ReadOnly = .T., ; + Column8.Width = 95, ; + Column9.Alignment = 2, ; + Column9.ColumnOrder = 17, ; + Column9.ControlSource = "semnat", ; + Column9.FontName = "Arial", ; + Column9.FontSize = 10, ; + Column9.Name = "cSemnat", ; + Column9.ReadOnly = .T., ; + Column9.Sparse = .F., ; + Column9.Width = 64, ; + Column10.Alignment = 2, ; + Column10.ColumnOrder = 18, ; + Column10.ControlSource = "abs(incetat-1)", ; + Column10.FontName = "Arial", ; + Column10.FontSize = 10, ; + Column10.Name = "cIncetat", ; + Column10.ReadOnly = .T., ; + Column10.Sparse = .F., ; + Column10.Width = 72, ; + Column11.Alignment = 2, ; + Column11.ColumnOrder = 20, ; + Column11.ControlSource = "abs(inactiv-1)", ; + Column11.FontName = "Arial", ; + Column11.FontSize = 10, ; + Column11.Name = "cInactiv", ; + Column11.ReadOnly = .T., ; + Column11.Sparse = .F., ; + Column11.Width = 45, ; + Column12.ColumnOrder = 8, ; + Column12.ControlSource = "descriere", ; + Column12.FontName = "Arial", ; + Column12.FontSize = 10, ; + Column12.Name = "Column12", ; + Column12.ReadOnly = .T., ; + Column13.ColumnOrder = 16, ; + Column13.ControlSource = "selectie", ; + Column13.FontName = "Arial", ; + Column13.FontSize = 10, ; + Column13.Name = "Column13", ; + Column13.ReadOnly = .T., ; + Column14.ColumnOrder = 6, ; + Column14.ControlSource = "numar_intern", ; + Column14.FontName = "Arial", ; + Column14.FontSize = 10, ; + Column14.Name = "Column14", ; + Column14.ReadOnly = .T., ; + Column14.Width = 86, ; + Column15.ColumnOrder = 7, ; + Column15.ControlSource = "data_intern", ; + Column15.FontName = "Arial", ; + Column15.FontSize = 10, ; + Column15.Name = "Column15", ; + Column15.ReadOnly = .T., ; + Column15.Width = 96, ; + Column16.ColumnOrder = 12, ; + Column16.ControlSource = "data_inceput", ; + Column16.FontName = "Arial", ; + Column16.FontSize = 10, ; + Column16.Name = "Column16", ; + Column16.ReadOnly = .T., ; + Column16.Width = 70, ; + Column17.ColumnOrder = 13, ; + Column17.ControlSource = "data_sfarsit", ; + Column17.FontName = "Arial", ; + Column17.FontSize = 10, ; + Column17.Name = "Column17", ; + Column17.ReadOnly = .T., ; + Column17.Width = 69, ; + Column18.ColumnOrder = 19, ; + Column18.ControlSource = "data_incetat", ; + Column18.FontName = "Arial", ; + Column18.FontSize = 10, ; + Column18.Name = "Column18", ; + Column18.ReadOnly = .T., ; + Column18.Width = 79, ; + Column19.ColumnOrder = 5, ; + Column19.ControlSource = "numar_ult_aa", ; + Column19.FontName = "Arial", ; + Column19.FontSize = 10, ; + Column19.Name = "Column20", ; + Column19.ReadOnly = .T., ; + Column19.Width = 69, ; + Column20.ColumnOrder = 1, ; + Column20.Comment = "are_link", ; + Column20.CurrentControl = "Command1", ; + Column20.DynamicCurrentControl = "iif(are_link=1,'command1','command2')", ; + Column20.FontName = "Arial", ; + Column20.FontSize = 10, ; + Column20.Name = "cAre_link", ; + Column20.ReadOnly = .T., ; + Column20.Sparse = .F., ; + Column20.Width = 51, ; + Column21.ColumnOrder = 22, ; + Column21.ControlSource = "sucursala", ; + Column21.FontName = "Arial", ; + Column21.FontSize = 10, ; + Column21.Name = "cSucursala", ; + Column21.ReadOnly = .T., ; + Column21.Width = 141, ; + Column22.ColumnOrder = 23, ; + Column22.ControlSource = "responsabil", ; + Column22.FontName = "Arial", ; + Column22.FontSize = 10, ; + Column22.Name = "Column22", ; + Column22.ReadOnly = .T., ; + Column22.Width = 112, ; + Column23.ColumnOrder = 24, ; + Column23.ControlSource = "sectie", ; + Column23.FontName = "Arial", ; + Column23.FontSize = 10, ; + Column23.Name = "Column23", ; + Column23.ReadOnly = .T., ; + Column23.Width = 83, ; + Column24.ColumnOrder = 21, ; + Column24.ControlSource = "suspendat", ; + Column24.CurrentControl = "Check1", ; + Column24.FontName = "Arial", ; + Column24.FontSize = 10, ; + Column24.Name = "Column24", ; + Column24.ReadOnly = .T., ; + Column24.Sparse = .F. + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_contracte.cAre_link.Command1' AS commandbutton WITH ; + Caption = "", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 27, ; + Left = 18, ; + Name = "Command1", ; + Picture = ..\comun\grafice\attach_mic.bmp, ; + SpecialEffect = 1, ; + Top = 72, ; + Width = 84 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'grid_contracte.cAre_link.Command2' AS commandbutton WITH ; + Caption = "", ; + Height = 27, ; + Left = 30, ; + Name = "Command2", ; + SpecialEffect = 1, ; + Top = 60, ; + Width = 84 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'grid_contracte.cAre_link.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Atasa- mente", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + Picture = ..\comun\grafice\attach_mic.bmp, ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cAre_link.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cData_ctr.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data contract", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cData_ctr.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cDurata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Durata (Luni)", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cDurata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cInactiv.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 17, ; + Left = 33, ; + Name = "Check1", ; + Top = 60, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_contracte.cInactiv.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Activ", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cIncetat.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 17, ; + Left = 37, ; + Name = "Check1", ; + Top = 24, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_contracte.cIncetat.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "In desfasurare", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cNr_ctr.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. contract", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cNr_ctr.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cNume.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Partener", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cNume.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cNume_val.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cNume_val.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column12.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Descriere", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column12.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column13.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Mod selectie", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column13.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column14.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. inregistrare", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column14.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column15.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data inregistrare", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column15.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column16.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data inceput", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column16.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column17.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data sfarsit", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column17.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column18.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data incetare", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column18.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column20.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Ultimul act ad.", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column20.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column22.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Responsabil", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column22.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column23.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Sectie", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column23.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.Column24.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + ControlSource = "suspendat", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 10, ; + Left = 10, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 47, ; + Width = 10 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_contracte.Column24.Header1' AS header WITH ; + Caption = "Suspendat", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.Column24.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cSemnat.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 17, ; + Left = 46, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 24, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_contracte.cSemnat.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Semnat", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cSucursala.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Sucursala", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cSucursala.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cTipc.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Tip contract", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cTipc.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cValctva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare contract (cu TVA)", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cValctva.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_contracte.cValvaluta.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare contract (fara TVA)", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_contracte.cValvaluta.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + Lparameters pcFiltru + Local lcFiltru + lcFiltru = pcFiltru + If Empty(lcFiltru) + lcFiltru = [1=2] + Endif + save_grid_tag(This.grid_contracte) + poCtr.ca_baza1.cfiltru = lcFiltru + poCtr.ca_baza1.afisare() + + Select cContracte + If Reccount()>0 + This.nireg = Reccount() + Else + This.nireg = 0 + Endif + + restore_grid_tag(This.grid_contracte) + If Reccount('cContracte')>0 + Select cContracte + Locate For id_ctr = goContract.id_ctr + If !Found() + Go Top + Endif + + This.grid_contracte.SetFocus() + Endif + + + + ENDPROC + + PROCEDURE arata_linkuri + DO arata_linkuri IN oproceduri_atasamente.prg + this.grid_contracte.Refresh + + ENDPROC + + PROCEDURE dblclick_bind + loGrid = this.grid_contracte + + For j = 1 To loGrid.ColumnCount + *loHeader = loGrid.Columns(j).Header1 + *Bindevent(loHeader, "DblClick", This, "grid_sort") + + IF TYPE('THIS.grid_contracte.COLUMNS[J].Text1')<>'U' + BINDEVENT(THIS.grid_contracte.COLUMNS[J].Text1,"DblClick",THIS,"inainte_de_do_modifica") + ENDIF + + Endfor + + ENDPROC + + PROCEDURE do_adauga + Local lcAlias, lnId_ctr, lcNumar, llNou + lcAlias = This.grid_contracte.RecordSource + Store '' To lcNumar + Store 0 To lnId_ctr + llNou = .T. + + Release poGeneratorNumere + Do declarare_generator_numere In oproceduri_roacontracte.prg + poGeneratorNumere.creeaza_cursor_serii(13) + pnGNnumar = poGeneratorNumere.aloca_numar(13) + lcNumar = Alltrim(Str(pnGNnumar)) + lnId_ctr = adauga_contract(lcAlias, lcNumar) + pnGNnumar=0 + + Select (lcAlias) + Scatter Name goContract Memo Blank + *SCATTER MEMO BLANK TO aContract + goContract.id_ctr = lnId_ctr + goContract.id_tip_ctr = Iif(gnParametru_prog=1,-1,-2) + goContract.denumire_tip = Iif(gnParametru_prog=1,'CLIENT','FURNIZOR') + goContract.numar = lcNumar + goContract.data = TTOD(Get_Ora()) + ***------------ + Do make_cursoare_ctr In oproceduri_roacontracte.prg && imi creeaza cursoarele + DO make_crsNote In oproceduri_roacontracte.prg + DO make_crsValute In oproceduri_roacontracte.prg + DO make_crsSectii In oproceduri_roacontracte.prg + DO make_crsTip_ctr In oproceduri_roacontracte.prg + DO make_crsSelectii In oproceduri_roacontracte.prg + **-- + + Select cCtrScadentar + Select crsAtasamente + Select cCtrArt + + lcCtrN = Createobject('frm_contracte_nou',llNou) + lcCtrN.lb_titlu_alb_b121.Caption = "Contract nou" + lcCtrN.Show(1) + + If buton = 1 + Select (lcAlias) + APPEND BLANK + GATHER NAME goContract MEMO + ENDIF + + Do inchide_cursoare_ctr In oproceduri_roacontracte.prg && imi creeaza cursoarele + DO inchide_crsNote In oproceduri_roacontracte.prg + DO inchide_crsValute In oproceduri_roacontracte.prg + DO inchide_crsSectii In oproceduri_roacontracte.prg + DO inchide_crsTip_ctr In oproceduri_roacontracte.prg + DO inchide_crsSelectii In oproceduri_roacontracte.prg + + This.grid_contracte.Refresh() + This.grid_contracte.SetFocus() + + + ENDPROC + + PROCEDURE do_adauga_act_aditional + Local lcAlias + lcAlias = This.grid_contracte.RecordSource + + Select cContracte + Scatter Name loRec Blank + + Do Adauga_Modifica_Inregistrare With 'actaditional',loRec,,"INSERT" In oproceduri_ams.prg + + this.do_cauta() + + + ENDPROC + + PROCEDURE do_cauta + Parameters tlReset + + Local lcFiltru + Store '' To lcFiltru + *!* If This.ck_nume.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_nume.filtru + *!* Endif + + *!* If This.ck_nr_ctr.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_nr_ctr.filtru + *!* Endif + + *!* If This.ck_data_ctr.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_data_ctr.filtru + *!* Endif + + *!* If This.ck_nume_val.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_nume_val.filtru + *!* Endif + + *!* If This.ck_denumire_tip.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_denumire_tip.filtru + *!* Endif + + *!* If This.ck_tipc.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_tipc.filtru + *!* ENDIF + + *!* If This.ck_responsabil.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_responsabil.filtru + *!* ENDIF + + *!* If This.ck_sectie .Value = 1 + *!* lcFiltru = lcFiltru + This.ck_sectie .filtru + *!* Endif + + *!* Do Case + *!* Case This.optIncetat.Value = 1 + *!* lcFiltru = lcFiltru + [ and c.incetat = 0] + *!* Case This.optIncetat.Value = 2 + *!* lcFiltru = lcFiltru + [ and c.incetat = 1] + *!* Case This.optIncetat.Value = 3 + *!* lcFiltru = lcFiltru + [ and (c.incetat = 0 or c.incetat = 1)] + *!* Endcase + + *!* Do Case + *!* Case This.optInactiv.Value = 1 && active + *!* lcFiltru = lcFiltru + [ and c.inactiv = 0] + *!* Case This.optInactiv.Value = 2 && inactive + *!* lcFiltru = lcFiltru + [ and c.inactiv = 1] + *!* Case This.optInactiv.Value = 3 && toate + *!* lcFiltru = lcFiltru + [ and (c.inactiv = 0 or c.inactiv = 1)] + *!* Endcase + + *!* If This.ck_istoric.Value = 1 AND This.ck_aa.Value = 0 + *!* lcFiltru = lcFiltru + [ and (c.tip_istoric = 'C' or c.tip_istoric = 'I')] + *!* Endif + + *!* If This.ck_aa.Value = 1 AND This.ck_istoric.Value = 0 + *!* lcFiltru = lcFiltru + [ and (c.tip_istoric = 'C' or c.tip_istoric = 'A')] + *!* ENDIF + + *!* IF This.ck_istoric.Value = 0 AND This.ck_aa.Value = 0 + *!* lcFiltru = lcFiltru + [ and c.tip_istoric = 'C'] + *!* ENDIF + + *!* IF This.ck_istoric.Value = 1 AND This.ck_aa.Value = 1 + *!* lcFiltru = lcFiltru + [ and (c.tip_istoric = 'C' or c.tip_istoric = 'A' or c.tip_istoric = 'I')] + *!* ENDIF + + If !'ACT ADITIONAL'$Upper(Alltrim(Thisform.pagefr1.page2.ct_contracte1.filtru_pretty_ro)) + lcFiltru = [ AND c.tip_istoric <> 'A' ] + lcFiltru + Endif + + If !'ISTORIC'$Upper(Alltrim(Thisform.pagefr1.page2.ct_contracte1.filtru_pretty_ro)) + lcFiltru = [ AND c.tip_istoric <> 'I' ] + lcFiltru + Endif + + + lcCondSucursala = Iif(!Isnull(gnIdSucursala), ' AND c.id_sucursala = '+Alltrim(Str(gnIdSucursala)), '') + + If Len(Thisform.pagefr1.page2.ct_contracte1.filtru_pretty)>0 + lcFiltru = lcFiltru+" and (" + Alltrim(Thisform.pagefr1.page2.ct_contracte1.filtru_pretty) + ")" + Endif + If !Empty(lcFiltru) + lcFiltru = lcFiltru + lcCondSucursala + Endif + If !Empty(lcFiltru) + lcFiltru = Substr(lcFiltru,6) + Else + lcFiltru = [] + Endif + + This.cFiltru = lcFiltru + *!* MESSAGEBOX(lcFiltru) + *!* _cliptext=lcFiltru + This.actualizeaza_grid1(lcFiltru) + If Reccount('cContracte')=0 + If !tlReset + aMessagebox("Cautarea nu a intors rezultate!",0+48,"Info cautare") + Endif + Select cContracte + Scatter Name goContract Memo Blank + Endif + + Select cContracte + This.grid_contracte.SetFocus() + ENDPROC + + PROCEDURE inainte_de_do_excel + DO export_excel_grid WITH this.grid_contracte + + + ENDPROC + + PROCEDURE inainte_de_do_listare + *Thisform.AlwaysOnTop = .F. + Private plToate, pcDataOra && toate contractele + Store .F. To plToate + pcDataOra = get_ora(2) + lcmenu="\ 0 ] + Endif + + lcSel = [{call pack_crm.restdefacturat(?pcFiltru, ?pnGroupResponsabil)}] + + lcCursor = 'crsRestDeFacturat' + if goExecutor.oExecuta(lcSel, lcCursor) + goExport.export2frx(lcCursor,[rctrrestdefact]) + Use In (lcCursor) + endif + Case lnx = 8 + Select cContracte + If Reccount('cContracte')=0 + Return + Endif + Private pcFiltru,pcTitlu,pcGrup,pnGrupResponsabil,pnFacturatIncasat + Store 0 To pnGrupResponsabil, pnFacturatIncasat + pcGrup = '1=1' + pcFiltru = This.cfiltru + lorfm = Createobject('frm_facturat_incasat') + lorfm.Show(1) + If buton = 2 + Return + Endif + If pnGrupResponsabil = 1 + pcGrup = 'cFacturi.id_responsabil' + Else + pcGrup = '1=1' + Endif + lcSelect = [select c.id_ctr, p.denumire,i.id_part,c.contract,c.numar,c.data,]+; + IIF(pnGrupResponsabil = 1,[i.id_responsabil,],[]) +; + Iif(pnGrupResponsabil = 1,[r.denumire],[''])+[ as nresp,v.nume_val,v.moneda_nationala,c.valftva, ] +; + [ SUM(] + Iif(gnParametru_prog = 1,[i.debit],[i.credit]) + [) as tot_fact, ] +; + [ SUM(] + Iif(gnParametru_prog = 1,[i.credit],[i.debit]) + [) as tot_achit, ] +; + [ cast(0 as number(20,4)) as sold_contract, cast(0 as number(20,4)) as sold_part ] +; + [ from ireg_parteneri i join vcontracte_toate c on i.id_ctr=c.id_ctr ] +; + [ LEFT JOIN NOM_PARTENERI P ON I.ID_PART = P.ID_PART ] +; + IIF(pnGrupResponsabil = 1,[ LEFT JOIN NOM_PARTENERI R ON I.ID_RESPONSABIL = R.ID_PART ],[]) +; + [ LEFT JOIN VNOM_VALUTE V ON I.ID_VALUTA = V.ID_VALUTA ] +; + [ LEFT JOIN VNOM_VENCHEL VC ON I.ID_VENCHELT = VC.ID_VENCHELT ] +; + [ where ] + pcFiltru +; + [ group by c.id_ctr, p.denumire,i.id_part,c.contract,c.numar,c.data,] +; + IIF(pnGrupResponsabil = 1,[i.id_responsabil,],[]) +; + Iif(pnGrupResponsabil = 1,[r.denumire,],[]) +; + [ v.nume_val,v.moneda_nationala,c.valftva ] +; + [ order by v.nume_val, c.data, c.numar] + lcCursor = [cFacturi] + if goExecutor.oExecuta(lcSelect,lcCursor) + pcTitlu = [Situaþie facturat-încasat] + If pnFacturatIncasat = 1 + Select (lcCursor) + Set Filter To tot_fact - tot_achit <> 0 + Else + Select (lcCursor) + Endif + goExport.export2frx(lcCursor,[rap_facturat_incasat]) + Use In (lcCursor) + endif + Endcase + *Thisform.AlwaysOnTop = .T. + + + ENDPROC + + PROCEDURE inainte_de_do_modifica + Do make_cursoare_ctr In oproceduri_roacontracte.prg && creeaza cursoarele + DO make_crsNote In oproceduri_roacontracte.prg + DO make_crsValute In oproceduri_roacontracte.prg + DO make_crsSectii In oproceduri_roacontracte.prg + DO make_crsTip_ctr In oproceduri_roacontracte.prg + DO make_crsSelectii In oproceduri_roacontracte.prg + **-- + + Select cCtrScadentar + Select crsAtasamente + Select cCtrArt + + loctrn = Createobject('frm_contracte_nou') + loctrn.Show(1) + + Do inchide_cursoare_ctr In oproceduri_roacontracte.prg && imi creeaza cursoarele + DO inchide_crsNote In oproceduri_roacontracte.prg + DO inchide_crsValute In oproceduri_roacontracte.prg + DO inchide_crsSectii In oproceduri_roacontracte.prg + DO inchide_crsTip_ctr In oproceduri_roacontracte.prg + DO inchide_crsSelectii In oproceduri_roacontracte.prg + + ENDPROC + + PROCEDURE inainte_de_do_sterge + PRIVATE pnId_ctr, pnTip + + LOCAL lnRaspuns, lcSql, lnSucces, lcId, lcId_util + STORE 0 TO lnRaspuns, lnSucces + STORE '' TO lcSql + + IF !EMPTY(goContract.id_ctr) + lnRaspuns = amessage('Doriti sa stergeti contractul?',4+32,_SCREEN.CAPTION) + IF lnRaspuns = 7 && 7 = No ; 6 = Yes + RETURN + ENDIF + + lcId = ALLTRIM(STR(goContract.id_ctr)) + lcId_util = ALLTRIM(STR(gnIdUtil)) + + lcSql = [begin pack_def.sterge_contract(]+lcId+[,]+lcId_util+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + + IF lnSucces < 0 + AMESSAGEBOX(goExecutor.oprelucrareEroare(),0+16,"Eroare") + RETURN + ENDIF + + THIS.actualizeaza_grid1() + ENDIF + + ENDPROC + + PROCEDURE Init + DoDefault() + This.dblclick_bind() + + Select cContracte + If Reccount()>0 + This.nireg = Reccount() + Else + This.nireg = 0 + Endif + + This.clb_tx_simplu1.text_simplu1.Refresh + + If gnParametru_prog=2 + This.but_factura.Visible = .F. + Endif + + + ENDPROC + + PROCEDURE but_factura.Click + lnOptiune = xmenu('Factura lei;Invoice;Factura fiscala in valuta') + DO CASE + CASE m.lnOptiune = 1 + DO facturare_contracte WITH 'FACTURA LEI' IN oproceduri_facturare.prg + CASE m.lnOptiune = 2 + DO facturare_contracte WITH 'INVOICE' IN oproceduri_facturare.prg + CASE m.lnOptiune = 3 + DO facturare_contracte WITH 'FACTURA VALUTA' IN oproceduri_facturare.prg + ENDCASE + + ENDPROC + + PROCEDURE But_reset_criterii1.Click + Local llcautare + + Thisform.pagefr1.page2.ct_contracte1.filtru_pretty = "" + Thisform.pagefr1.page2.ct_contracte1.filtru_pretty_ro = "" + Thisform.pagefr1.page2.ct_contracte1.filtru_pretty_ro_full = "" + If Type ("thisform.pagefr1.page2.ct_contracte1.but_start_criterii1") = 'O' + Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.ToolTipText=Thisform.pagefr1.page2.ct_contracte1.filtru_pretty + Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.SetFocus + Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.pornit = "nu" + Endif + + DODEFAULT() + lcfiltru = [Stare;nofiled;1;] + *!* llcautare = This.Parent.but_start_criterii1.lcautare + *!* This.Parent.but_start_criterii1.lcautare = .F. + Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.loadfiltru(lcfiltru) + *!* This.Parent.but_start_criterii1.lcautare = llcautare + + *Thisform.pagefr1.page2.ct_contracte1.do_cauta(.T.) + Thisform.pagefr1.page2.ct_contracte1.Refresh + + ENDPROC + + PROCEDURE But_start_criterii1.loadcriterii + Parameters tacriterii + External Array tacriterii + #Define crlf Chr(13)+Chr(10) + SELECT cContracte + + lcStringCriterii = "Data ctr.\data\D\none\" + crlf + ; + "Nr.ctr.\c.numar_aa\T\none\" + crlf + ; + "Responsabil\c.responsabil\T\c.ID_RESPONSABIL\nom_parteneri" + crlf + ; + "Partener\c.denumire\T\c.ID_PART\nom_parteneri" + crlf + ; + "Valoarea contractului\c.valftva\N\none" + crlf + ; + "Tip contract\c.denumire_tip\T\c.ID_TIP_CTR\tipuri_contracte" + crlf + ; + "Articole\|E|" + ; + "instr(',' || c.ids_articol || ',', ','||<>||',') > 0"+; + "\I\none\nom_articol" + crlf + ; + "Valuta\c.nume_val\T\c.ID_VALUTA\nom_valuta" + crlf + ; + "Stare\nofiled\A\In desfasurare si active,Incetate,Active,Inactive,Suspendate,Nesuspendate,Toate#c.incetat=0 and c.inactiv=0,c.incetat=1,c.inactiv=0,c.inactiv=1,c.suspendat=1,c.suspendat=0,1=1\" + crlf + ; + "Istoric\nofiled\E\1=1" + crlf + ; + "Act aditional\nofiled\E\1=1" + crlf + ; + "Sectie\c.sectie\T\c.ID_SECTIE\nom_sectie" + DoDefault() + *!* "Grupe gestiuni\|E|" + ; + *!* [a.id_gestiune in ( ] + ; + *!* [ select ID_GESTIUNE ] + ; + *!* [ from vgest_coresp_grupe_gestiuni c ] + ; + *!* [ join (select id_grupe ] + ; + *!* [ from gest_nom_grupe ] + ; + *!* [ where sters = 0 ] + ; + *!* [ start with id_grupe = <> ] + ; + *!* [ connect by prior id_grupe = parent_id) g on c.id_grupe = g.id_grupe )\I\none\nom_grupa_gestiune] + crlf + ; + ENDPROC + + *!* "In desfasurare\nofiled\A\Contracte in desfasurare,Contracte incetate,Toate#c.incetat = 0,c.incetat=1,1=1\" + crlf + ; + *!* "Active\nofiled\A\Contracte active,Contracte inactive,Toate#c.inactiv = 0,c.inactiv = 1,1=1\" + crlf + ; + *!* "Suspendate\nofiled\A\Contracte suspendate,Contracte nesuspendate,Toate#c.suspendat = 1,c.suspendat = 0,1=1\" + crlf + ENDPROC + + PROCEDURE grid_contracte.AfterRowColChange + LPARAMETERS nColIndex + + LOCAL lcTabel + lcTabel = this.RecordSource + + SELECT (lcTabel) + SCATTER NAME goContract MEMO + ENDPROC + + PROCEDURE grid_contracte.cAre_link.Command1.Click + this.Parent.Parent.Parent.arata_linkuri() + + ENDPROC + + PROCEDURE grid_contracte.cAre_link.Command2.Click + this.Parent.Parent.Parent.arata_linkuri() + + ENDPROC + + PROCEDURE grid_contracte.cNume.Text1.RightClick + Private plToate, pcDataOra + Store .F. To plToate + pcDataOra = get_ora(2) + + lcmenu = "Fisa contractului;Lista facturilor pentru contractul selectat" + lnx = xmenu(lcmenu) + + Do Case + Case lnx=1 + + save_grid(This.Parent.Parent.Parent.grid_contracte) + + Do make_cursoare_ctr In oproceduri_roacontracte.prg && imi creeaza cursoarele + Do make_cCtrActeAditionale In oproceduri_roacontracte.prg + + Select cContracte + Set Filter To id_ctr = goContract.id_ctr + + Select cCtrArt + Index On id_ctr To Addbs(gcTempPath)+'cCtrArt.idx' + + Select cCtrScadentar + Index On id_ctr To Addbs(gcTempPath)+'cCtrScadentar.idx' + + Select cCtrFactGarant + Index On id_ctr To Addbs(gcTempPath)+'cCtrFactGarant.idx' + + Select cCtrActeAditionale + Index On id_tata To Addbs(gcTempPath)+'cCtrActeAditionale.idx' + + Select cCtrFacturatIncasat + Index On id_ctr To Addbs(gcTempPath) + 'cCtrFacturatIncasat.idx' + + Select cContracte + Set Relation To + + Select cContracte + Set Relation To id_ctr Into cCtrArt Additive + + Select cContracte + Set Relation To id_ctr Into cCtrFactGarant Additive + + Select cContracte + Set Relation To id_ctr Into cCtrScadentar Additive + + Select cContracte + Set Relation To id_ctr Into cCtrActeAditionale Additive + + Select cContracte + Set Relation To id_ctr Into cCtrFacturatIncasat Additive + + Set Skip To cCtrArt, cCtrFactGarant, cCtrScadentar, cCtrActeAditionale, cCtrFacturatIncasat + + lcSetData = Set('date') + Set Date German + + Select cContracte + Report Form fisa_contractului.frx To Printer Prompt Preview + + Set Date To &lcSetData + + + Select cContracte + Set Filter To + + Set Relation Off Into 'cCtrArt' + Set Relation Off Into 'cCtrFactGarant' + Set Relation Off Into 'cCtrScadentar' + Set Relation Off Into 'cCtrActeAditionale' + Set Relation Off Into 'cCtrFacturatIncasat' + + If Used('cCtrScadentar') + Use In cCtrScadentar + Endif + If Used('cCtrFactGarant') + Use In cCtrFactGarant + Endif + If Used('cCtrArt') + Use In cCtrArt + Endif + If Used('cCtrLink') + Use In cCtrLink + Endif + If Used('cCtrActeAditionale') + Use In cCtrActeAditionale + Endif + If Used('cCtrFacturatIncasat') + Use In cCtrFacturatIncasat + Endif + restore_grid(This.Parent.Parent.Parent.grid_contracte) + + Case lnx = 2 + llContract = .T. + Do Case + Case gnParametru_prog = 1 + Do lans_ireg_parteneri With .F., gcCont411, .T.,,,,,llContract + Case gnParametru_prog = 2 + Do lans_ireg_parteneri With .F.,'401', .F.,,,,,llContract + Endcase + Endcase + + ENDPROC + + PROCEDURE grid_contracte.Init + this.SetAll("DynamicBackColor","iif(inactiv=1,RGB(200,200,200),RGB(255,255,255))","Column") + this.SetAll("DynamicForeColor","iif(tip_istoric='I',RGB(0,128,0),IIF(tip_istoric='A',RGB(0,0,128),RGB(0,0,0)))","Column") + + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_date_generale AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="outlook2003bar1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="outlook2003bar1.Panes.Pane1.Olecontrol1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="outlook2003bar1.Panes.Pane1.Olecontrol2" UniqueID="" Timestamp="" /> + + * + BackColor = 255,255,255 + Height = 401 + Name = "ct_date_generale" + Width = 800 + * + + ADD OBJECT 'outlook2003bar1' AS outlook2003bar WITH ; + Anchor = 7, ; + Left = 5, ; + Name = "outlook2003bar1", ; + Top = 1, ; + Panes.ErasePage = .T., ; + Panes.Height = 328, ; + Panes.Name = "Panes", ; + Panes.PageCount = 7, ; + Panes.Pane1.Caption = "Date generale", ; + Panes.Pane1.Name = "Pane1", ; + Panes.Pane1.picture16 = Email Envelope 16.png, ; + Panes.Pane1.picture24 = Email Envelope 24.png, ; + Panes.Pane2.Caption = "Obiectul si valoarea contractului", ; + Panes.Pane2.Name = "Pane2", ; + Panes.Pane2.picture16 = Contacts 16.png, ; + Panes.Pane2.picture24 = Contacts 24.png, ; + Panes.Pane3.Caption = "Termene de facturare si achitare", ; + Panes.Pane3.Name = "Pane3", ; + Panes.Pane3.picture16 = Favourites 16.png, ; + Panes.Pane3.picture24 = Favourites 24.png, ; + Panes.Pane4.Caption = "Termene de livrare/receptie si garantii", ; + Panes.Pane4.Enabled = .F., ; + Panes.Pane4.Name = "Pane4", ; + Panes.Pane4.picture16 = Calendar Multiweek 16.png, ; + Panes.Pane4.picture24 = Calendar Multiweek 24.png, ; + Panes.Pane5.Caption = "Facturare", ; + Panes.Pane5.Name = "Pane5", ; + Panes.Pane5.picture16 = Games 16.png, ; + Panes.Pane5.picture24 = Games 24.png, ; + Panes.Pane6.Caption = "Clauze speciale si observatii", ; + Panes.Pane6.Name = "Pane6", ; + Panes.Pane6.picture16 = Help 2 16.png, ; + Panes.Pane6.picture24 = Help 2 24.png, ; + Panes.Pane7.Caption = "Documente atasate", ; + Panes.Pane7.Name = "Pane7", ; + Panes.Pane7.picture16 = Music Player 1 16.png, ; + Panes.Pane7.picture24 = Music Player 1 24.png, ; + Panes.Top = 33, ; + overflowpanel.MenuButton.imgPicture.Height = 16, ; + overflowpanel.MenuButton.imgPicture.Name = "imgPicture", ; + overflowpanel.MenuButton.imgPicture.Width = 16, ; + overflowpanel.MenuButton.Name = "MenuButton", ; + overflowpanel.Name = "overflowpanel", ; + SplitBar.imgSplitter.Height = 3, ; + SplitBar.imgSplitter.Name = "imgSplitter", ; + SplitBar.imgSplitter.Width = 35, ; + SplitBar.Name = "SplitBar", ; + Panel.Name = "Panel", ; + Splitter.Name = "Splitter", ; + Title.lblCaption.Name = "lblCaption", ; + Title.linBorder.Name = "linBorder", ; + Title.Name = "Title" + *< END OBJECT: ClassLib="outlook2003bar.vcx" BaseClass="container" /> + + ADD OBJECT 'outlook2003bar1.Panes.Pane1.Olecontrol1' AS olecontrol WITH ; + Anchor = 15, ; + Height = 328, ; + Left = 0, ; + Name = "Olecontrol1", ; + Top = 0, ; + Width = 198 + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\system32\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECFvJ3sxccBAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAigAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAA8BAAAAAAAABwAAAAIAAAD+////BAAAAAUAAAAGAAAACQAAAAgAAAD+/////v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAAB3FAAA5iEAALE8wWoBAAYAIgAAAD0AMgCNAQAACAAAAHFIHwAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaNYaADwAAAABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAuQAoAAABMYWJlbEVkaXQACQAAAEkKAAAAAQAAAAoAAABMaW5lU3R5bGUACQAAAEkKAAAAAQAAAA0AAABNb3VzZVBvaW50ZXIACQAAAEkKAAAAAAAAAA4AAABQYXRoU2VwYXJhdG9yAAoAAABIAAAAAAEAAABcDAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAAwAAABCb3JkZXJTdHlsAAAFAEBKHwAGAAAAAAAAAAUAAIBs5xIAAQAAAFwAH97svQEABQCx5xIAA1LjC5GPzhGd4wCqAEu4UQEAAACQAURCAQAFQXJpYWxCAV0gWwB4AxUASMIaADUAbAB7AD0AYwBkAFIAJgBhAEYAIQBaAFoAdQBbAEwAfQAtADkAKwBlAAkAAABJCgAAAAAAAAAAJQB5AEkAeAA5AGoAXQB5AFUANgBgAHsAPQB0ADYAQQBzADIAWgB4AEoAMwBFAFUAKgA0AEMAXQB9AFcAdgBQAHQALABeAD8AVQBbACgAQwAoAHMAcABaAHUAYgBtAC4ANAAlAGIALgBDAHoAMgA9AHgAQwBYAFEAQABBACUAagBQAFAARQBlAC0AKwBtACgAXgBdAE8APQBxAEEAawBBAHMAYQB7AHEALgAhAE8ARABzAEMATgBYAFEAXgB9AEAAMgBbADQAPQBhAEUAMQBTAHYAawBCACgAVAAsAHMAaABtAFgAQwA/ACgAMwBYAFEAYABZAHcAQAA2AF8AQwB0AGUAJQBrAHoAWABeAG4AOABAAGoALQB6AGEAWABdAEgAdwBOAFMAVABxAE0AeABFAD0AQABZAD0AKQApAFcAJQBvACYAcwBpADIAZQA0AHsAJABhAD0ASQBNACUANgA/AGUAdgBhAGwANgB4AHUAcgB3AGMAQgBiAHUAdwAuACUAcgBwAFYAOQArAFQAbgBTAC0AbgAsAGUATABDAFYARgBvAGwAJgAhAGwAMABWAD8A" /> + + ADD OBJECT 'outlook2003bar1.Panes.Pane1.Olecontrol2' AS olecontrol WITH ; + Height = 150, ; + Name = "Olecontrol2", ; + Visible = .F., ; + Width = 200 + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\system32\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7////+////BQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAABYAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAEAAAAFwAAABgAAAD+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECFvJ3sxccBAwAAAAABAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADikAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAFcAAAAAAAAAAQAAAP7///8DAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9cAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAJAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADkzNjgyNjVFLTg1RkUtMTFkMS04QkUzLTAwMDBGODc1NERBMSQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RQEAAIAMAAAASW1hZ2VIZWlnaHQACQAAAEkKAAAAEAAAAAsAAABJbWFnZVdpZHRoAAkAAABJCgAAABAAAAANAAAAVXNlTWFza0NvbG9yAAUAAABMAQAAAABJCgAAABgAAAALAAAASW1hZ2V3aWR0aAAJAAAASQoAAAAYAAAADQAAI38kLJGF0RGxagDA8Cg2KCFDNBIIAAAA7QMAAO0DAACAfuHmAAAGAAgAAAAQABAAwMDAAP//AAAB782rAAAFAOBLHwAGAAAA/////wUAAIAAAAAADAAAAAETAAAARABhAHQAZQBsAGUAIABjAG8AbgB0AHIAYQBjAHQAdQBsAHUAaQABEAAAAEMAYQBpAHgAYQAgAGQAZQAgAGUAbgB0AHIAYQBkAGEAAQ4AAABDAGEAaQB4AGEAIABkAGUAIABzAGEA7QBkAGEAAQ4AAABJAHQAZQBuAHMAIABlAG4AdgBpAGEAZABvAHMAAQ8AAABJAHQAZQBuAHMAIABlAHgAY///5I50/+3h/+bU/tjE/cy2/sSr67+yT6rnA7P/D5H+XpTShn98qKio4ODg+/v7////55N4/MWq+7ma+8au/+LR/+jW8trTMdL1AMf/B7P+H474PHmsg4ODtra25eXl+/v79+Tf/fDj+97P8KOH85Ry/MCl/cCniMbMBNz+AMH/DK79I4/5SXighoaGubm56enp/////O3d//bs++nh8aB+/9/G/9vC+c65bNjkAtv/AL//JanwXozCcXN5jIyMxsbG/////////OjX/u/i+7uY/9S0/97D/+XL793ORt3xJdTzi6DITl7aID3ZX2B/qamp//////////38+eXa97OT/93G/+XK/+HE/+DB2eDYfrPMe4fvRGv/EUT/Hj3UtLS0/////////////v797rKg4o555peC8bik+9vI/9vGt3N2gJTwVXr/OGD+Xnbe3Nzc/////////////////////v39+enl7Lqs5J6K435e2aqhubvfg5btoazr3d/p+Pj4BwAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA/////////////////f398/Pz6Ojo5+fn6+vr8fHx+Pj4/f39/////////////////////////v7+/Pz89PT01tbWsrKyqKiosrKyvb29y8vL2tra5eXl7+/v+fn5/v7+////////9/f34uLi2Lmt4LGhx56QsYBxn3ZqkHt1i4aFlZWVpaWlvr6+4ODg+fn5/////f39zdnhmqu2k46R/9/O//fs/u/i+9/O88Sx3aOQv4FvpnFjkoaCwsLC8fHx////9PT0VazcDrz+U6HC+tfH//Dl/dfI/tW9/9zA/+XL//Df+93Mp3tvuLi47u7u/v7+stHlFbLzHcv/dcTS/+bX//Pr/eTc/dG9/s+0/+LJ//jt/eTTr4R4u7u78PDw+/v7b7viEcT+Mcj2tc7I//Pp/uba/dC9/c22/cy1/cmy/smq/drFpH1wubm57+/v5+7zNrnrGMv/S8To693N//38/eDV/dfH/c+7/c+5/Myz/9a689HAf3yCsLCw6+vrvtrrL8n6INH/e8LV//Lm//z7/+ff/+jh/ePa/dfG/ciu/9zF39DCVpe1qqqq6Ojols3oO9j/Ndb+p8PF+e3p9erm89jO+NbK/drO/dnM/dfG/+PSzdvNZKrCqqqq5+fngcfoTeT/Rt3+qry75byo17OmyZyQxLa0/f///////////OznwdrOba7Gra2t6Ojods3tZvP/U9/7l+P2+f32//Hh9MKvzquh////////////8eHbuNfWdq3FsbGx6urqgs3ubOr8aer8atz3huX6z+7x+trJ2L60////////////9ePax9rae6rEwsLC8PDw9fr90Of2sNvwktLscsnrZdLypNfhybes8ufc8+PW4drS3MjA3uDdkrvV4uLi+Pj4/////////////////v7++Pz+4fD5gsTlhPT1gvT2cebxaafIq8bY1uTt+vr6/v7+////////////////////////////1en2h9Dud9jxcs3sz93m9fX1/v7+////////CAAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA////////////////////////////////+vr67u7u6Ojo8fHx/Pz8/////////////////////v7++fn59/f3+vr6/v7+////7e3twsLCrKyswcHB4uLi8vLy+Pj4/f39////////9vb23d3dy8vL1dXV5+fn8vLy3J2K3KSIm3Bjh4eHqampwsLC2NjY8/Pz/////v7+y9rkfqnBg4ySk5OTrKyswL296IRj//jR+d+5qXFekW1jmXtzr6+v5+fn////9/f3Wa7dGr74JrHmQZC4YoCRjXl1+Jhw/ujB//DI/ezF/O3G2a+Qo6Oj5OTk////y97pFrX1KcX5Mdj/Kdn/SbHSw4p7/8Sb/du0/d63/uS9//PMyZp/p6en5ubm/v7+gcDjEsL9NMj3Ref/dcHM7LCL/7+W/Mqk/Mym/dGr/dav/+W+uoZwo6Oj5eXl+Pn5TrvpHMr/Pcz3Wuv6gM3S5sWj/8We/LuV+76Y+8Se/Mmj/9avx410o6Oj5OTk3OnxNcT1KNL/SdH2s8zBn8O8hL6+srSh+saf/LKM+7eS/riQ/bqU15J1ra2t6enpttfrPtX8NdX/VtX04+bU/8ur9cSns6yd1sCi/7aO/6B43KOGqsi9mYB6t7e37u7un9TrT+D+Rdv+cNr04tC89cq4/9bB08i6s7+z/6yB1YVuitDemPf3f5uovLy87+/vjs/tafL/Wub+ft35ydvT7NvQ//Ho3NjPmtTgn6uzjsjch9v0o9/tfaS1xMTE8vLyodXwadr0Z+b6Zdv2ct/6h+P2neLztubvvvb+vfn/vvX/seHwv+TsiKe61dXV+Pj4/f7+8Pj8zub1rNvwk9XubsjsYNHxXNj2bNz3f973lOH4td3uw+DusMfW7u7u/f39////////////////////////9fv9i9HuePj/dfr/XuL5iLDJvNLh8PP1/f39////////////////////////////////4fD5n9jwhdLtjMrn7e3t+vr6////////////CQAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////v7+/Pz89/f37e3t5ubm5eXl5eXl6+vr9fX1+/v7/v7+////////////////////+Pj44+PjzMzMtbW1pqampKSkpaWlsLCwyMjI39/f9fX1////////////////////5N3ss6XFlnHApWvojmLBoGjgkWPHfW+Ni4CXsrKy6Ojo/////v7+9fX16Ojo6Ojot4Txs3H/tXb9vIP/vIH/vIL/t3r+s3H/mmLcmpqa4ODg////9/f31tbWr6+vqampqnXowIr/v4j/v4n/wIr/wIn/v4f/v4n/pW3nmpqa4ODg////ytznPq3gQKLLWYOcmmrYxZT/xJP/xpT/xpX/xZT/xJH/xJD/p3Dmmpqa4ODg/Pz8crvhGr74LtP/Ls/9i3rwzKD/y5//zaL/0qX/zqL/ypz/zZ7/rHjmmpqa4ODg6+/zLrXsHsD4Rt3+RuH/k4r40ar/0an/zqj6tpXexJ7w0ab/t5LkmmzOmpqa4ODguNboIcf8J8f7YtrwX+HympD51rP/2LL/oI63LC4tbGN3wKTgUVJSUTlto6Oj5OTkfMTmM9j/MdD+r9XQ0ryjq4jh3Lz/2rv+sqfBrrGtop2puaPSub20oYPDvb297+/vacXqROL/QNH6wOLd/8qt353A0an/6NL/49L0xbXXybHn2rn+xabqqYjP4eHh+/v7YdTzWu7/V9j7ydnS/9nI/+DNrYri1rP/7+D/79z/4sb/0ar/roHh4eDj+fn5////cczuZ+H3Z+H5iuXzoNvoueTwuebsqL/4s6P5uJn3oYblqI/F4N/h/Pz8////////+fz+4O/4tt3xlNXuasvuWtLzY9z4f9/3k9/2wuPxqMjb39/f9/f3/////////////////////////////f7+4/H6btjyev3/Wtr1l7bJytrl+vr6/v7+////////////////////////////////////wuP1kNXvmM3o8fHx+/v7////////////////////CgAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA////////////////////+vr67Ozs4uLi6enp+Pj4/////////v7+/v7+/////////////////f39+vr6+/v76+vrv7+/oKCgs7Oz4ODg+Pj48vLy4uLi4ODg8PDw/Pz8/////v7+8fHx2tra1dXVfHR1STs/QUBCgYGBwsLC6urqzMzMn5+foKCgyMjI8fHx////+fn5tcnXkKOtkpKSp3Bz2IyRbkxRVlZXs7Ozvbu8W0lNPzY5WltcoaGh4+Pj////2uXrLKzmHrnyN5TAdX+V9KSmrGZqUlFToKCgrJWX2I6Vr3N5QTk7m5ub3d3d/f39hcHgFrj2LdD+LNb/Ksr5U63JY3aHXG6Ce31+kJGUxIiE5JaaYUVKr6+v4uLi8vT2PLbqGMD7QtX7R+D/RuD/Pun/TLDJYpOpQrjfUnuPaHR/iXuAeWJktra25eXlyd7sIsL5IMb7Udr6V+v/W+7/XfP/YbTDbJ+rVvb/Xff/VOD0VoihcGJop6en4+PjlMvnLNH/J87/cdHlqca6gMzPbOXsd8TOq4GJjJiheKiybsLGU6rAZ1lelpaW3d3ddMPnPNz/NNH9jNzm/9q8+cCh2r6mjp+cz3eB0G92ql5khFNYWENIOzM2nJyc4ODgZsjsTub/QtT8od7j8c67/865/82ysMG6nauzo4+XkG15f1ZgY0JGNy4xvLy87+/vY9b0Y/L/V9f4quvy4cu4/ujd/+rgvdfVhOX7gNnvhtXsgrzRgqKuc3Fz2dnZ+/v7ac7wbev7ZuT5c973h+T4nOHyvuTpwOvxv/T9v/X9p+T4suLwotbnsbKy5+fn////7/f7yuP0qtrwjc/sbcvtXdDyWdT1a9v4ft33leH3ruX34fL1nsjg19na9PT0/////////////////////f7+8fj8yOP0Zdv1d/z/bfT+WsLlmrjNwdfm+Pj4/f39////////////////////////////////rtzyhtPud9fvos3k8PDw+/v7////////////CwAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////v7+9vb26+vr6Ojo6+vr8vLy+/v7////////////////////////////////////+vr639/fuLi4qqqqsLCwwcHB3d3d9PT0/v7+////////////////+/v77+/v6Ojo5dfS4rqpw5mIwJmHpIN2hIKBoqKiysrK5+fn9/f3/f39/////v7+7Ozsw8PDrKysuaii//To/+bU/+zd/uXS0Z+Jh3Vujo6OsLCw1tbW9fX1////+vr6iLzbPKraTYuqhZyn0+S4993J+eLS//Pj/+/c67idrXtolH11tbW16+vr////3ufuKLDsJtL/KND/jtDLgNZ258m344Fd7bmX/+vW/+zY/+TGzZJ6t7e37u7u/v7+mMfhFb/7OM/7Str8rta6v+ojfyQskYXREbFqAMDwKDYoIUM0EggAAADtAwAA7QMAAIB+4eYAAAYAugEAABAAEADAwMAA//8AAAHvzasAAAUA4EsfAAYAAAD/////BQAAgAAAAAAMAAAAARMAAABEAGEAdABlAGwAZQAgAGMAbwBuAHQAcgBhAGMAdAB1AGwAdQBpAAEQAAAAQwBhAGkAeABhACAAZABlACAAZQBuAHQAcgBhAGQAYQABDgAAAEMAYQBpAHgAYQAgAGQAZQAgAHMAYQDtAGQAYQABDgAAAEkAdABlAG4AcwAgAGUAbgB2AGkAYQBkAG8AcwABDwAAAEkAdABlAG4AcwAgAGUAeABjAGwAdQDtAGQAbwBzAAEJAAAAUgBhAHMAYwB1AG4AaABvAHMAASEAAABPAGIAaQBlAGMAdAB1AGwAIABzAGkAIAB2AGEAbABvAGEAcgBlAGEAIABjAG8AbgB0AHIAYQBjAHQAdQBsAHUAaQABIAAAAFQAZQByAG0AZQBuAGUAIABkAGUAIABmAGEAYwB0AHUAcgBhAHIAZQAgAHMAaQAgAGEAYwBoAGkAdABhAHIAZQABBQAAAEoAbwBnAG8AcwABBwAAAE0A+gBzAGkAYwBhAHMAAQUAAABGAG8AdABvAHMAAQYAAABWAO0AZABlAG8AcwAMAAAAAQAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA////////+/v77u7u5ubm7Ozs9/f3/f39////////////////////////////////////////7e3twsLCp6ensrKyzMzM4+Pj8vLy+/v7////////////////////////////+/v715iH13NVrGtYi3JrjIyMpqamwMDA2NjY6+vr9/f3/f39////////////////8Ojm1WNE7ohj8Y9r4XpZuWhQlGldh399mJiYsrKyzMzM4+Pj8vLy+/v7/v7+////4bOo3GNA6YRf9aJ+9Jx385dy74pm0nJVpmVTi3JrjIyMpaWlw8PD4uLi+fn5/f392Ypz4G9L6IZi96+K9KaB9KJ99KB79J158pVw4X9dumlRlm1ij4aEu7u77e3t9e/t3XlZ5HxY6Ytm+LWN+rGI/LGJ+K2H9KeC9KWA9KN99J5575FssG5apqam5ubm683F5oJf6Ydh6ZFtsbmzqKmf0aiO66yI97WO9bGL9a2I9KmE9qyHx39kp6en5ubm5bSn7JRv7I9p6pdyr93egub5e8ncia6236+P+8Ka97yW9reS97aRxIxzq6ur6Ojo4aKP8aR+7pZw66WBt+Dfi9v0ddL1hd/1xKqU9q2F8rKM9bqU88CcwpR9ra2t6Ojo45yE9bKM8qB69biQjdbfjtHqs+f7oODzyLKc9raN8LON7qeC6bOQwZmDsLCw6enp6Z2B/MWe97SO9LKK3tG0xdjR3OfixeHk5dKy98ig8LWQ8bWP5rSRw52Hs7Oz6enp7bWl66WH7qWD75969qqC9a2E8bOM7cOg9s+o+dy1/Oa/+Nex59WzyqiSw8PD7u7u/////fn49d3X8dHH6bOh55+H6p1+7Jhz8aiD8KmD8K2I7bSO5NCx17Og4+Pj9/f3/////////////////////////fj27Lao+b+Y/caf+r+Z14Rnyayk6NTO+vr6/v7+/////////////////////////////PXz66mT66aI76aD37Gl7+/v/Pz8////////AgAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////////////////v7++Pj46+vr5ubm7+/v+/v7/////////////////f399fX18vLy+Pj4/v7+/v7+8vLy1tbWs7OzpqamwMDA6enp/f39////////////8fHx0dHRwcHBz8/P4+Pj5eXltsC2WKZmVMx1T4ZXjY2NxcXF8fHx/v7+////+/v72rWrvH9ujn15jo6OpKSkjqKPN6pKR+lxVPSDUed+WnZdm5ub1tbW+Pj4////8Ovq1WZJ7odj5X1bwWZRaGxLEJcnMtdTO9xfRONsVPOCRr5jdn52uLi47u7u/v7+4LOn3GM/7Itn9p9795h1kIdEIooXDaggL9JOO9teReRtU/OCTZRZs7Oz7Ozs+/v72YVt4XFN6o1o+K+I9aaB/6GEqZZWB6gXIsk+MNNQO9xfQeFoQKBWxMTE9PT08+nm33lX5HxY6ZNu6bOS9a2F/7KOuKloELckGcEwJcpBK9pTW6ZGhYF3yMjI9vb26Ma96Ilk6YZh5Jl4kcTNmbi5wKmen6ZuI8g+DbgiFr0rGc4+cKtSoHlyxcXF9PT05K6e75x27ZNs6aaFrOnxeNz7dNPza7GiPshTLNJQJdVNFM09c65aqYF3xcXF8vLy46KN9KyF8p946LaVetHpldXwmuT9pMjMza+Bsbt8is1+jbNr0LKPr4t/ysrK9PT06J+G+8Kc9KuE9cCZttbMyeDgyuz0vNHP9sOd/bmW8qiF66eF4b6hrYl+0tLS9/f37bSj7KSE76WB76B796Z+77GM7LuZ8sij+tu0+du1+dmy6cyp3sOlvKGZ4eHh+/v7/////fr5+u3o78q/7b2t56GJ6JZ38aB78aeB8KmD8LGL37eY4bKW4NPQ9PT0/v7+/////////////////////////vv66qeP/MSe/MSe6pRxzLWv6NnV+vr6/v7+////////////////////////////////+Ofj8MOz7LWg5bir8/Pz/Pz8////////////AwAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA/////////////////f398fHx2dnZycnJy8vLyMjItra2t7e32NjY9fX1/v7+////////////+fn57Ozs4ODgtL60bY5tb4Jveoh8RYlLQpBNeYF6pKSk2NjY+Pj4/////////Pz85eXlu7u7gpmMGJkaKchEMcBMKqtALLhGVO2CR65gc3pzqqqq39/f+vr6////8fLyZbDXPaLYL4ViGsQqKM1EMtZTPN9iQuBoS+l3WvmLPo1KgICAsLCw4uLi/v7+rc/jFbn2JcD/IJ+RMNNJIcY7Isc9Lc9LNthZP95lSul0Ue19Q4NLh4eHv7+/+vr6W7jkFML8NcH8KKWTT+5zH8Q3E7onIcU6Ks5HM9VUPNxhSOhyTux6S4hSvr6+4OrwJr3zGcL7P8f8K6SqSdttOttVGsMsFr4rHcI1KMtDMdRQONtYOs1QUZhW2dnZr9ToJcv9IsX7WNj4S7DUJ5uiLLKaIrJcE7AmE70nF8AqHsAyNMVmR5GMqKio5ubmhMXlM9f/J8r9e9vo17qhuLawgam8S5i/JqtjLdFEIrBEUM+lffT1X6DDo6Oj4+PjaMHoROL/NM/9gdrn+d3G/8mr/8ilvJaLPKeYY9qzh+71lP//mfv7cbnNnqCg4ODgVc/zU+j/RNf+nNjf8r2j98++/97L1burftDtgN/+iOT5heL2ouzwh8zcoqWm4+PjXdn2aPT/Wtr5oez64NO/+dvN/+jd4sKyjdPkjN/1j9/0itjxsubshb3Sq62t6OjocdPxaeb5aOf7ceP6ddj1m9fku+Lnwd/mzvz+xvj+s+v4ruT0xeXsfarDv7+/7u7u7PT7yeX0tOHxhM3rcNXwYtT0XNb2beP8eNz3it32sOv6x+v24vT6jrnT39/f9/f3////////////////////8vj8z+b1c9Duefz/cfX/Zen8aazQscna1OHq+Pj4/v7+////////////////////////////xuP1e8/uct7zcdXuxNbi9PT0/f39////////BAAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA+/v77Ozs2dnZy8vLyMjIwsLCsLCwsrKy19fX9vb2/v7+////////////////////6enps7u0dY12aIFoan9rOn89K5U1d313o6Oj1tbW9fX1/v7+////////////////gbKGRctmPtViNM1SKL5BHbk0G8UyJI0uc3lzoKCgy8vL4+Pj7+/v+Pj4/f39////S89uW/yOTvF9PedqLtVOIsg8GL4tDrggHIUgenhyjIyMo6Ojubm5zc3N4ODg8fHxZuiNdveiYNd6a9F2QtBiLdFMFcAsF8k4HL88u7aI0J6Mq4x+koN9i4uLpaWl0dHRmO+2HaItcpZC/62Xl6lqHMdFQNJhZMFopcKN/+vb/+7c/+bT+dK73aGHrYt/v7+/gdmYPrpQpbN4/+zl06yDlK5u3MCX/tbE//fz//ry//Lo/uDP/tfA+syxu5OEyMjI0OTSbMR9y8ej//r1/+ze/+HUyLm/lqrB+O7m9OHZ/NbE/+HP/+zc8ci0r5+Y19fX////6e7n5trI//jx2tDPd6fJQKXgP6fiZqHJWZrGqbK9//bm//fs2rCdsaWg4+Pj/////OHZ8dnSlLjOXLfjVsX4Xsf4XMX2UsD3Tb/4Uarc1c3N///4y6GRurOx7e3t/////fbzhavFT7nnZcnxZMXtZcfwZMfxYcXxYcXyWsn5d7bY+OTbwqedzs7O9vb2////////6/L2abTYb8vre9r2c9Lxb83vbMzvasrvZ8jvV8Dtl6q70buz6+vr/f39////////////6fL3crfYedPtiOX4huP4hOL5geD4cM3sVabOpLjH7+/v/Pz8////////////////////6/P4drvZg9vtk+35i+X1b8Tib6HA1dvf+Pj4/v7+////////////////////////////6vL3erzYgNXna7PRnrjJ7Ozs/Pz8////////////////////////////////////////0ePujbnVxNfj9fX1/f39////////////////////BQAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA////+fn54+PjxcXFr6+vpKSkpaWlsrKyv7+/u7u7qqqqoaGho6OjtLS02NjY9vb2/Pz84+PjwZiNv4VwyYVrx4xyso98knJpl29lu11ExmhNxnNZuGtWhnh1qamp4ODg9PLx14t19KB7+riS+8Ga/+O7+ty15H9b3Fg16HhU+6WA/aR+/Jp2wWtShYSEwsLC6MO57YFd8KJ9+ryW8qaA/dCq8beR4mtH6nVR+a6I8JFt4WdE9I5q+ZVxlmtfrKys57Gf6YBb65Zx97aQ7ZZx+8qj7a2H5GlG9JFs/cag6Yhj6HFO631a+p14vG5Yo6Oj5a6c53tW6o5q9a+J54Ne+MCZ6qJ9739b+6mE/NKs/ceh9aB764Rg8o5qx3ZcpaWl5Kua5XVQ6Ilk9KuF4GxJ87SO6Zt37o5p/cWe/d+4/dCq+LiS86yG7pdzxXBWsbGx5KiX5nZS43lV8Z143WM/6JJs5Y5q5oRf/uG6/uvE/d62/dCq8amE76WAuntmyMjI4aKR53ZS53dT75Zy9rqV9s6o77mU6Jdy/vHJ//3V/u/I/d63+MOd9KuGvJ2U5ubm4aOS8IVh/bGM+rWQ+biS+8ag/+C5+sym9LmT/daw//nR//rT/dy21ZmF4+Pj+vr65JmC+K6J5oBc425J6G5M8YFd9Ypm8Ypm9pp2z3JVxYh03aaR6MK08fHx+/v7////6KqP5X9b1kon31876HBP8YVh9Ytn5WpH7HxXsW1asLCw6+vr////////////////6qaM+JZy4GE+3l065GdF7XlV8IJe6n1Z+Z14vXVgwsLC8vLy////////////////7LWh/a6J+ZVx8Y1p741o8Zp1+LOM/baR+6WAw5KE4+Pj+/v7////////////////+/Px7LGY+aeD+qB7/76Y/9Ks/smi+K6K2ZaD5ePj+fn5////////////////////////////9NbL8ce07K6U5qSM5rel6c/H9vb2/f39////////////////////////BgAAAGx0AAA2AwAAQk02AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA/////f395ubmuLi4nZ2do6OjtbW1yMjI2dnZ5eXl8PDw+Pj4/f39////////////////9PT04LSe7bSUzKCHspB9koV9jImGlZWVp6enu7u7zc3N3d3d6+vr+Pj4/v7+/v7+59HI9cKq/////vj1/ObZ+tbA5byiyJyCpoR1kIJ8jIqJmpqaubm54+Pj+/v7+vr6462Y/fPu//Pv/uff/////////u/q+7ed+q+S96eH3pl9wpF6oJuZ19fX+vr68enm7LGb//////fy/NLC/Mq4/NDB+7ih+7GX+7ii+7ig+7mj+8Cev7Sr5eXl/f395r+x9tDC//n1/dvN/vDq//r2//Dq/7ie/KaH+qWH+7qj+9XFyquX0dDP+Pj4////4qWR+uHX//rz/t7Q/M28/Mu59sOw3p6H+7ad/8Om/+jf676ks6yo5+fn/v7+////4JeA/vHo/uHR/dfG/ure//nx0b+2Qk5hdqbYgLnt8OHbyJd8u7u77+/v/////7X1y7rgkGvuiGTBn2Hf8MP/5866hXLNzc34+Pj3+PhSt+Ubyf9E0vlo5Pfl3cXz6NLUu6tOlc6EdXFVklOI04jlv66ZjovX19f8/PzR4+4wxvcnz/9X1vTCzr386d391cOqj4YngsIlSmEkZ6LUw7ShsLWPkpTU1NT6+vqo0eg61v401P9n2vLw2b/67eTvuaPym3rTmIGjcl16amz0zLePy9KAk57S0tL5+fmFyehQ5P9J3P6H4vLw07v/8+r449f70r3/yaz/xqr/vaDk08GP1eGDlqLU1NT6+vp4zO1n8v9c4fyi8fza3c763cv/6Nnl0L2+zsywwcfD09O519ma1uSJm6Xa2tr8/PyBz+907/tp6vxy3veB4Pig5vTK7e3D6+6y9f+19P+o6vyx4e6h0uOqs7jm5ub+/v7v9/vZ7PfH5vOt2vCg2u+Azexiye9w3fmD6/uI5vqQ4Pe+3e2bxd7c3t/19fX////////////////////////////1+v140O98//9z+v9X1PObs8PM2+X6+vr+/v7////////////////////////////////K5/aI1O902fGNx+Tt7e36+vr///////////8MAAAAbHQAADYDAABCTTYDAAAAAAAANgAAACgAAAAQAAAAEAAAAAEAGAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAD////////////////////////////////8/Pzy8vLn5+fm5ubx8fH8/Pz////////////////+/v77+/v6+vr9/f3////+/v7s7OzGxsapqamnp6fCwsLn5+f7+/v////////////29vbg4ODT09Pd3d3t7e3x8fGVlJVaUFNjTVFfW1yKioq4uLjj4+P6+vr////9/f3R2uCPqLeNkJKbm5u2trapp6cuKC2VgHLLspx5UFdbVFeIiIi+vr7v7+/////v8fNHruAawfsuqdpOi6hxgIlYZ3FfQzn/zKT/7sTYwqmWZmlyYWS7u7vu7u7///+01OcTuPcsy/wv1/8w0/410PUtbYpFKyTKkHT/2K7CrJR1UFNwX2HZ2dn4+Pj9/f1nvOUUxf8/zfhL4v9J4P9M7v80gpNFLCdHNzSAZlhMODpTUVadnZ3d3d38/Pzu8/U1vO8cyf5G0Pdd6PpZ7P9i/f87g5OcZFDfl3ZXOTMyRkxMnbyIjI7Nzc339/fE3OwvzPslzf9X0fG9uqeVvrl93dtHfoiicV//w5bFeFxOeHt19f5xjp/IyMj19fWa0eo/2f401P9p1vD/17v/xqj2yKuHcWl7XVbwt5Kxc1lWjpOR8vJ0kaLJycn19fWDyOdR5f9I3v+H3O3vv6fxy7r/2MCfgXtsS01tUE1KMy9ZhYyl7O10kaLKysr19fV0zu5q9v9Y4v2L3vXewKr21cXh1c+NaGvswKHgq4xNNTNcg5Kq5Ox2k6TMzMz39/eJ0e9u5fhr6/xt3vh+4feQoqepaWvZqpr/8cbksZNlSEicw83B6O+GorTa2tr6+vr5/P7e8Pi02/Ch3/J2zexTmbRzip2MhIqXfXhubHF2orfY8fe+3u2/zNXu7u7+/v7////////////////////3/P7k8/pmxOZ26u118/ln6f+Irsa30OHz9PX8/Pz////////////////////////////////M5/eV2/J41/CN0Ons7Oz6+vr///////////8=" /> + + PROCEDURE outlook2003bar1.Panes.Pane1.Olecontrol1.Init + With This + .Imagelist = .Parent.oleControl2 + With .Nodes + Local laNos[12,3] + Store Null To laNos + laNos[1,1] = "Datele contractului" + laNos[2,1] = "Caixa de entrada" + laNos[3,1] = "Caixa de saída" + laNos[4,1] = "Itens enviados" + laNos[5,1] = "Itens excluídos" + laNos[6,1] = "Rascunhos" + laNos[7,1] = "Obiectul si valoarea contractului" + laNos[8,1] = "Termene de facturare si achitare" + laNos[9,1] = "Jogos" + laNos[10,1] = "Músicas" + laNos[11,1] = "Fotos" + laNos[12,1] = "Vídeos" + *!* Store laNos[1,1] To laNos[2,2], laNos[3,2], laNos[4,2], laNos[5,2], laNos[6,2] + *!* Store 4 To laNos[2,3], laNos[3,3], laNos[4,3], laNos[5,3], laNos[6,3] + *!* Local lnNo + *!* For lnNo=1 To Alen(laNos,1) + *!* .Add(laNos[lnNo,2],laNos[lnNo,3],laNos[lnNo,1],laNos[lnNo,1],laNos[lnNo,1]) + *!* Endfor + ENDWITH + + *!* Local loNo + *!* loNo = .Nodes(0) + *!* loNo.Expanded = .T. + *!* .SelectedItem = loNo + *!* loNo = Null + Endwith + ENDPROC + + PROCEDURE outlook2003bar1.Panes.Pane1.Olecontrol1.NodeClick + *** ActiveX Control Event *** + LPARAMETERS node + LOCAL TX + TX = THIS.SelectedItem.TEXT + MESSAGEBOX(tx) + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Height = 356 + Name = "ct_dg" + Width = 698 + * + +ENDDEFINE + +DEFINE CLASS ct_dg_cu_banda AS ct_dg OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_shape3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_label1" UniqueID="" Timestamp="" /> + + * + Name = "ct_dg_cu_banda" + * + + ADD OBJECT '_label1' AS _label WITH ; + BackStyle = 0, ; + Left = 6, ; + Name = "_label1", ; + Top = 7 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="label" /> + + ADD OBJECT '_shape3' AS _shape WITH ; + Anchor = 11, ; + BorderStyle = 0, ; + Height = 24, ; + Left = 1, ; + Name = "_shape3", ; + Top = 1, ; + Width = 804, ; + ZOrderSet = 0 + *< END OBJECT: ClassLib="..\..\roaregistratura\comun\clase\_baza.vcx" BaseClass="shape" /> + +ENDDEFINE + +DEFINE CLASS ct_dg_date_generale AS ct_dg OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtDescriere" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtMotiv_incetat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData_intern" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_incetat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtDurata" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label17" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData_incetat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtNumar_intern" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label21" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_inactiv" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_semnat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cbo_valute" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData_inceput" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData_sfarsit" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cbo_sectii" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdResponsabil" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label14" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtResponsabil" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label20" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cbo_tip_ctr" UniqueID="" Timestamp="" /> + + * + *p: newdata_sfarsit + *p: nid_valuta_new + *p: nid_valuta_old + *p: olddata_sfarsit + *p: _memberdata && XML Metadata for customizable properties + * + + * + Height = 221 + Name = "ct_dg_date_generale" + newdata_sfarsit = {} + nid_valuta_new = 0 + nid_valuta_old = 0 + olddata_sfarsit = {} + Width = 429 + _memberdata = + + + + * + + ADD OBJECT 'cbo_sectii' AS _combobox WITH ; + ControlSource = "goContract.sectie", ; + FontSize = 10, ; + Height = 21, ; + Left = 307, ; + Name = "cbo_sectii", ; + RowSource = "crsSectii.sectie,id_sectie", ; + RowSourceType = 2, ; + TabIndex = 12, ; + Top = 153, ; + Width = 113, ; + ZOrderSet = 26 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="combobox" /> + + ADD OBJECT 'cbo_tip_ctr' AS _combobox WITH ; + ControlSource = "goContract.denumire_tip", ; + FontSize = 10, ; + Height = 21, ; + Left = 88, ; + Name = "cbo_tip_ctr", ; + RowSource = "crsTip_ctr.denumire_tip,id_tip_ctr", ; + RowSourceType = 2, ; + TabIndex = 4, ; + Top = 53, ; + Width = 113, ; + ZOrderSet = 31 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="combobox" /> + + ADD OBJECT 'cbo_valute' AS _combobox WITH ; + ControlSource = "goContract.nume_val", ; + FontSize = 10, ; + Height = 21, ; + Left = 89, ; + Name = "cbo_valute", ; + RowSource = "crsValute.nume_val,id_valuta", ; + RowSourceType = 2, ; + TabIndex = 11, ; + Top = 153, ; + Width = 113, ; + ZOrderSet = 22 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="combobox" /> + + ADD OBJECT 'ck_inactiv' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Inactiv", ; + ControlSource = "goContract.inactiv", ; + FontSize = 10, ; + Height = 18, ; + Left = 97, ; + Name = "ck_inactiv", ; + TabIndex = 15, ; + Top = 201, ; + Width = 55, ; + ZOrderSet = 19 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'ck_incetat' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Încetat", ; + ControlSource = "goContract.incetat", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 8, ; + Name = "ck_incetat", ; + TabIndex = 9, ; + Top = 127, ; + Width = 58, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'ck_semnat' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Semnat", ; + ControlSource = "goContract.semnat", ; + FontSize = 10, ; + Height = 18, ; + Left = 8, ; + Name = "ck_semnat", ; + TabIndex = 14, ; + Top = 201, ; + Width = 64, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'cmdResponsabil' AS commandbutton WITH ; + Caption = "", ; + FontName = "Arial Narrow", ; + Height = 21, ; + Left = 204, ; + Name = "cmdResponsabil", ; + Picture = ..\grafice\find.bmp, ; + TabIndex = 16, ; + Top = 175, ; + Width = 28, ; + ZOrderSet = 27 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data început", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 8, ; + Name = "Label1", ; + TabIndex = 28, ; + Top = 82, ; + Width = 75, ; + ZOrderSet = 21 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label10' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Durata (luni)", ; + FontSize = 10, ; + Height = 18, ; + Left = 8, ; + Name = "Label10", ; + TabIndex = 21, ; + Top = 104, ; + Width = 72, ; + ZOrderSet = 9 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label12' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Tip contract", ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label12", ; + TabIndex = 25, ; + Top = 55, ; + Width = 70, ; + ZOrderSet = 17 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label14' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Responsabil", ; + FontSize = 10, ; + Height = 18, ; + Left = 8, ; + Name = "Label14", ; + TabIndex = 24, ; + Top = 176, ; + Width = 73, ; + ZOrderSet = 28 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label17' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valuta", ; + FontSize = 10, ; + Height = 18, ; + Left = 8, ; + Name = "Label17", ; + TabIndex = 22, ; + Top = 154, ; + Width = 39, ; + ZOrderSet = 12 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data încetãrii", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 221, ; + Name = "Label2", ; + TabIndex = 26, ; + Top = 104, ; + Width = 78, ; + ZOrderSet = 13 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label20' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Secþie", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 221, ; + Name = "Label20", ; + TabIndex = 23, ; + Top = 154, ; + Width = 39, ; + ZOrderSet = 32 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label21' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Motiv încetare", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 221, ; + Name = "Label21", ; + TabIndex = 19, ; + Top = 127, ; + Width = 82, ; + ZOrderSet = 18 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Descriere", ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label4", ; + TabIndex = 20, ; + Top = 33, ; + Width = 57, ; + ZOrderSet = 11 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data sfârºit", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 221, ; + Name = "Label5", ; + TabIndex = 27, ; + Top = 82, ; + Width = 68, ; + ZOrderSet = 24 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nr./data înreg.", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label6", ; + TabIndex = 17, ; + Top = 10, ; + Width = 84, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "/", ; + FontSize = 10, ; + Height = 18, ; + Left = 208, ; + Name = "Label9", ; + TabIndex = 18, ; + Top = 10, ; + Width = 6, ; + ZOrderSet = 30 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape1' AS shape WITH ; + BackStyle = 0, ; + Height = 221, ; + Left = 0, ; + Name = "Shape1", ; + SpecialEffect = 0, ; + Top = 0, ; + Width = 429, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Shape3' AS shape WITH ; + BackStyle = 0, ; + Height = 0, ; + Left = 5, ; + Name = "Shape3", ; + SpecialEffect = 0, ; + Top = 150, ; + Width = 418, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Shape5' AS shape WITH ; + BackStyle = 0, ; + Height = 0, ; + Left = 5, ; + Name = "Shape5", ; + SpecialEffect = 0, ; + Top = 200, ; + Width = 418, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Shape7' AS shape WITH ; + BackStyle = 0, ; + Height = 0, ; + Left = 5, ; + Name = "Shape7", ; + SpecialEffect = 0, ; + Top = 77, ; + Width = 418, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'txtData_inceput' AS textbox WITH ; + ControlSource = "goContract.data_inceput", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 89, ; + Name = "txtData_inceput", ; + TabIndex = 5, ; + Top = 80, ; + Width = 113, ; + ZOrderSet = 23 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData_incetat' AS textbox WITH ; + ControlSource = "goContract.data_incetat", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 307, ; + Name = "txtData_incetat", ; + TabIndex = 8, ; + Top = 102, ; + Width = 113, ; + ZOrderSet = 14 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData_intern' AS textbox WITH ; + ControlSource = "goContract.data_intern", ; + FontSize = 10, ; + Height = 21, ; + Left = 217, ; + Name = "txtData_intern", ; + TabIndex = 2, ; + Top = 8, ; + Width = 113, ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData_sfarsit' AS textbox WITH ; + ControlSource = "goContract.data_sfarsit", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 307, ; + Name = "txtData_sfarsit", ; + TabIndex = 7, ; + Top = 80, ; + Width = 113, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtDescriere' AS textbox WITH ; + ControlSource = "goContract.descriere", ; + FontSize = 10, ; + Format = "!k", ; + Height = 21, ; + Left = 88, ; + Name = "txtDescriere", ; + TabIndex = 3, ; + Top = 31, ; + Width = 331, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtDurata' AS textbox WITH ; + ControlSource = "goContract.durata", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 89, ; + Name = "txtDurata", ; + TabIndex = 6, ; + Top = 102, ; + Width = 113, ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtMotiv_incetat' AS textbox WITH ; + ControlSource = "goContract.motiv_incetat", ; + FontSize = 10, ; + Format = "!k", ; + Height = 21, ; + Left = 307, ; + Name = "txtMotiv_incetat", ; + TabIndex = 10, ; + Top = 125, ; + Width = 113, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtNumar_intern' AS textbox WITH ; + ControlSource = "goContract.numar_intern", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 88, ; + Name = "txtNumar_intern", ; + TabIndex = 1, ; + Top = 8, ; + Width = 113, ; + ZOrderSet = 16 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtResponsabil' AS textbox WITH ; + ControlSource = "goContract.responsabil", ; + DisabledBackColor = 255,255,255, ; + FontSize = 10, ; + Format = "!k", ; + Height = 21, ; + Left = 89, ; + Name = "txtResponsabil", ; + ReadOnly = .T., ; + TabIndex = 13, ; + Top = 175, ; + Width = 113, ; + ZOrderSet = 29 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Init + this.nId_valuta_old = goContract.id_valuta + ENDPROC + + PROCEDURE cbo_sectii.Valid + goContract.id_sectie = crsSectii.id_sectie + goContract.sectie = crsSectii.sectie + ENDPROC + + PROCEDURE cbo_tip_ctr.Valid + goContract.id_tip_ctr = crsTip_ctr.id_tip_ctr + goContract.denumire_tip = crsTip_ctr.denumire_tip + ENDPROC + + PROCEDURE cbo_valute.Valid + goContract.id_valuta = crsValute.id_valuta + goContract.nume_val = crsValute.nume_val + goContract.moneda_nationala = crsValute.moneda_nationala && modificare v 2.0.46 + This.Parent.nId_valuta_new = goContract.id_valuta + + If Nvl(This.Parent.nId_valuta_old,0) <> Nvl(This.Parent.nId_valuta_new,0) + If Reccount('cCtrArt')>0 + AMESSAGEBOX('Modificati valuta si in obiectul contractului!',0+48,'Atentie') + Endif + This.Parent.nId_valuta_old = goContract.id_valuta + Endif + + + ENDPROC + + PROCEDURE cmdResponsabil.Click + locauta = caut_responsabil() + + IF buton=2 + RETURN + ENDIF + + goContract.id_responsabil = locauta.id_responsabil + goContract.responsabil = locauta.nume + + this.Parent.txtResponsabil.Refresh + + + ENDPROC + + PROCEDURE txtData_incetat.Valid + IF !EMPTY(goContract.data_inceput) AND goContract.data_incetat <= goContract.data_inceput + aMESSAGEBOX('Introduceti data incetarii mai mare decat data de inceput a contractului !',0+48,"Atentie") + *goContract.data_incetat = goContract.data_inceput + 1 + ENDIF + + this.Parent.txtData_inceput.Refresh + ENDPROC + + PROCEDURE txtData_sfarsit.Valid + If !Empty(goContract.data_inceput) And goContract.data_sfarsit <= goContract.data_inceput + aMESSAGEBOX('Introduceti data de sfarsit mai mare decat data de inceput a contractului !',0+48,"Atentie") + * goContract.data_sfarsit = goContract.data_inceput + 1 + Endif + + If !Empty(Nvl(goContract.data_inceput,{})) And !Empty(Nvl(goContract.data_sfarsit,{})) + goContract.durata = Int((Year(goContract.data_sfarsit)*12 + Month(goContract.data_sfarsit)) - (Year(goContract.data_inceput)*12 + Month(goContract.data_inceput))) + ELSE + goContract.durata = 0 + ENDIF + + This.Parent.txtDurata.Refresh + + ENDPROC + + PROCEDURE txtDurata.Valid + goContract.data_sfarsit = GOMONTH(goContract.data_inceput, goContract.durata) + this.Parent.txtData_sfarsit.Refresh + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg_date_generale_frz AS ct_dg OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtOfertanti" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cbo_selectii" UniqueID="" Timestamp="" /> + + * + Height = 53 + Name = "ct_dg_date_generale_frz" + Width = 364 + * + + ADD OBJECT 'cbo_selectii' AS _combobox WITH ; + ControlSource = "goContract.selectie", ; + FontSize = 10, ; + Height = 21, ; + Left = 109, ; + Name = "cbo_selectii", ; + RowSource = "crsSelectii.selectie,id_selectie", ; + RowSourceType = 2, ; + TabIndex = 2, ; + Top = 28, ; + Width = 113, ; + ZOrderSet = 26 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="combobox" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Modul de selecþie", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label3", ; + TabIndex = 4, ; + Top = 30, ; + Width = 104, ; + ZOrderSet = 37 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label7' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Ofertanþi", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label7", ; + TabIndex = 3, ; + Top = 7, ; + Width = 51, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape1' AS shape WITH ; + BackStyle = 0, ; + Height = 54, ; + Left = 0, ; + Name = "Shape1", ; + SpecialEffect = 0, ; + Top = 0, ; + Width = 364, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'txtOfertanti' AS textbox WITH ; + ControlSource = "goContract.ofertanti", ; + FontSize = 10, ; + Height = 21, ; + Left = 109, ; + Name = "txtOfertanti", ; + TabIndex = 1, ; + Top = 5, ; + Width = 245, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE cbo_selectii.Valid + goContract.id_selectie = crsSelectii.id_selectie + goContract.selectie = crsSelectii.selectie + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg_fact AS ct_dg OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_text_standard" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cboNote" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lbNota" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cbo_opt_facturare" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + + * + Height = 96 + Name = "ct_dg_fact" + Width = 364 + * + + ADD OBJECT '_shape1' AS _shape WITH ; + BackStyle = 0, ; + Height = 96, ; + Left = 0, ; + Name = "_shape1", ; + SpecialEffect = 0, ; + Top = 0, ; + Width = 364, ; + ZOrderSet = 0 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="shape" /> + + ADD OBJECT 'cbo_opt_facturare' AS _combobox WITH ; + ControlSource = "gocontract.opt_facturare", ; + FontSize = 10, ; + Height = 24, ; + Left = 106, ; + Name = "cbo_opt_facturare", ; + RowSource = "Denumirea ratei + valoarea ratei urmatoare,Primul art.din lista de art. (obiectul ctr.) + valoarea ratei urm.,Articole la alegere din lista de art. cu preturile din lista de art.", ; + RowSourceType = 1, ; + TabIndex = 1, ; + Top = 26, ; + Width = 250, ; + ZOrderSet = 4 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="combobox" /> + + ADD OBJECT 'cboNote' AS combobox WITH ; + BoundColumn = 2, ; + BoundTo = .T., ; + ColumnCount = 3, ; + ColumnLines = .F., ; + ColumnWidths = "300,20", ; + ControlSource = "gocontract.id_nota", ; + FontSize = 10, ; + Height = 24, ; + Left = 106, ; + Name = "cboNote", ; + RowSource = "crsNote.denumire,id_nota", ; + RowSourceType = 2, ; + Style = 2, ; + TabIndex = 2, ; + Top = 52, ; + Width = 250, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="combobox" /> + + ADD OBJECT 'ck_text_standard' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = 'Text suplimentar standard: "Cf. contract nr ... / data..."', ; + ControlSource = "gocontract.text_standard", ; + FontSize = 10, ; + Height = 17, ; + Left = 7, ; + Name = "ck_text_standard", ; + TabIndex = 3, ; + Top = 77, ; + Width = 357, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Ce se factureazã", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label1", ; + TabIndex = 5, ; + Top = 30, ; + Width = 100, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Facturare", ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label2", ; + TabIndex = 6, ; + Top = 4, ; + Width = 57, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lbNota' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nota contabilã", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "lbNota", ; + TabIndex = 4, ; + Top = 56, ; + Width = 85, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="label" /> + + PROCEDURE cboNote.InteractiveChange + gocontract.id_nota = crsNote.id_nota + ENDPROC + + PROCEDURE cboNote.Valid + gocontract.id_nota = crsNote.id_nota + ENDPROC + + PROCEDURE cbo_opt_facturare.Init + this.Value = gocontract.opt_facturare + + IF this.Value = 1 OR this.Value = 2 + this.Parent.lbNota.Visible = .T. + this.Parent.cboNote.Visible = .T. + ELSE + this.Parent.lbNota.Visible = .F. + this.Parent.cboNote.Visible = .F. + ENDIF + ENDPROC + + PROCEDURE cbo_opt_facturare.Valid + Local lnInreg + Store 0 To lnInreg + + If This.Value = 1 Or This.Value = 2 + This.Parent.lbNota.Visible = .T. + This.Parent.cboNote.Visible = .T. + Else + This.Parent.lbNota.Visible = .F. + This.Parent.cboNote.Visible = .F. + Endif + + Do Case + Case This.Value = 1 + Select cCtrScadentar + Calculate Cnt() For !Deleted() To lnInreg + If lnInreg = 0 + aMessagebox('Adaugati rate!',0+48,'Atentie') + Endif + Case This.Value = 2 + Select cCtrArt + Calculate Cnt() For !Deleted() To lnInreg + If lnInreg = 0 + aMessagebox('Adaugati obiectul contractului!',0+48,'Atentie') + Endif + Select cCtrScadentar + Calculate Cnt() For !Deleted() To lnInreg + If lnInreg = 0 + aMessagebox('Adaugati rate!',0+48,'Atentie') + Endif + Endcase + + + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg_obiectul AS ct_dg_cu_banda OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cNume_art.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cNume_art.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cUm.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cUm.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cCant.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cCant.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cPret_unitar.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cPret_unitar.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cValoare.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cValoare.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cCoef_discount.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cCoef_discount.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cVal_discount.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cVal_discount.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.Column9.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.Column9.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cValcDiscount.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cValcDiscount.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cNume_val.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cNume_val.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cPret_cu_tva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_articole.cPret_cu_tva.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdfooter1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtDiscount" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValcdiscount" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValDiscount" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValctva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label15" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtProc_tva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label16" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtCoef_discount" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValftva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValDiscountTotal" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_pret_cu_tva" UniqueID="" Timestamp="" /> + + * + *m: actualizeaza_zecimale + *p: ncoef_discount + *p: ndiscountmediu + *p: noldproctva + *p: nsumaarticole + *p: nvalcdiscount + *p: nvaldiscount + *p: nzecimalepret + *p: nzecimalesuma + *p: _memberdata && XML Metadata for customizable properties + * + + * + Height = 208 + Name = "ct_dg_obiectul" + ncoef_discount = 0 + ndiscountmediu = 0 + noldproctva = 0 + nsumaarticole = 0 + nvalcdiscount = 0 + nvaldiscount = 0 + nzecimalepret = gnPPretV + nzecimalesuma = gnPc + Width = 795 + _memberdata = + + + _shape3.Height = 24 + _shape3.Left = 1 + _shape3.Name = "_shape3" + _shape3.Top = 1 + _shape3.Width = 812 + _shape3.ZOrderSet = 0 + _label1.Caption = "Obiectul ºi valoarea contractului" + _label1.FontSize = 10 + _label1.Left = 7 + _label1.Name = "_label1" + _label1.ZOrderSet = 7 + * + + ADD OBJECT '_grdfooter1' AS _grdfooter WITH ; + Anchor = 15, ; + ccolwithlabel = column1, ; + csourcegrid = grid_articole, ; + csumcolumns = cvaloare,cValcDiscount, ; + ctotallabelexpression = 'TOTAL', ; + FontSize = 10, ; + Height = 22, ; + Left = 0, ; + Name = "_grdfooter1", ; + RowHeight = 19, ; + Top = 120, ; + Visible = .T., ; + Width = 794, ; + ZOrderSet = 3 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 9, ; + caction = do_adauga_obiectul, ; + Left = 734, ; + Name = "But_nou1", ; + TabIndex = 6, ; + Top = 1, ; + ZOrderSet = 12 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + caction = inainte_de_do_sterge_obiectul, ; + Left = 764, ; + Name = "But_sterge1", ; + TabIndex = 5, ; + Top = 1, ; + Visible = .T., ; + ZOrderSet = 13 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'ck_pret_cu_tva' AS checkbox WITH ; + Alignment = 0, ; + Anchor = 8, ; + AutoSize = .T., ; + Caption = "Preþuri cu TVA", ; + FontBold = .T., ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 605, ; + Name = "ck_pret_cu_tva", ; + Top = 9, ; + Width = 111 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_articole' AS _grid WITH ; + Anchor = 15, ; + ColumnCount = 12, ; + DeleteMark = .F., ; + FontSize = 10, ; + GridLineColor = 192,192,192, ; + HeaderHeight = 36, ; + Height = 113, ; + HighlightStyle = 2, ; + Left = 0, ; + Name = "grid_articole", ; + Panel = 1, ; + RecordMark = .F., ; + RecordSource = "cCtrArt", ; + RowHeight = 19, ; + Top = 30, ; + Width = 794, ; + ZOrderSet = 2, ; + Column1.ControlSource = "recno()", ; + Column1.FontName = "Arial", ; + Column1.FontSize = 10, ; + Column1.Name = "Column1", ; + Column1.ReadOnly = .T., ; + Column1.Width = 35, ; + Column2.ColumnOrder = 2, ; + Column2.ControlSource = "nume_articol", ; + Column2.FontName = "Arial", ; + Column2.FontSize = 10, ; + Column2.Name = "cNume_art", ; + Column2.ReadOnly = .T., ; + Column2.Width = 287, ; + Column3.ColumnOrder = 3, ; + Column3.ControlSource = "um", ; + Column3.FontName = "Arial", ; + Column3.FontSize = 10, ; + Column3.Name = "cUm", ; + Column3.ReadOnly = .T., ; + Column3.Width = 41, ; + Column4.ControlSource = "cant", ; + Column4.FontName = "Arial", ; + Column4.FontSize = 10, ; + Column4.Format = "rk", ; + Column4.InputMask = (get_mask(10,gnPCant)), ; + Column4.Name = "cCant", ; + Column4.Width = 49, ; + Column5.ColumnOrder = 6, ; + Column5.ControlSource = "pret_unitar", ; + Column5.FontName = "Arial", ; + Column5.FontSize = 10, ; + Column5.Format = "rk", ; + Column5.InputMask = (get_mask(14,This.nZecimalePret)), ; + Column5.Name = "cPret_unitar", ; + Column5.Width = 60, ; + Column6.ColumnOrder = 7, ; + Column6.ControlSource = "valoare", ; + Column6.FontName = "Arial", ; + Column6.FontSize = 10, ; + Column6.Format = "rk", ; + Column6.InputMask = (get_mask(14,This.nZecimaleSuma)), ; + Column6.Name = "cValoare", ; + Column6.ReadOnly = .T., ; + Column6.Width = 50, ; + Column7.ColumnOrder = 8, ; + Column7.ControlSource = "coef_discount", ; + Column7.FontName = "Arial", ; + Column7.FontSize = 10, ; + Column7.Format = "rk", ; + Column7.InputMask = (get_mask(10,2)), ; + Column7.Name = "cCoef_discount", ; + Column7.Width = 49, ; + Column8.ColumnOrder = 9, ; + Column8.ControlSource = "val_discount", ; + Column8.FontName = "Arial", ; + Column8.FontSize = 10, ; + Column8.Format = "rk", ; + Column8.InputMask = (get_mask(10,This.nZecimalePret)), ; + Column8.Name = "cVal_discount", ; + Column8.Width = 53, ; + Column9.ColumnOrder = 10, ; + Column9.ControlSource = "pret_unitar-(coef_discount*pret_unitar)/100", ; + Column9.FontName = "Arial", ; + Column9.FontSize = 10, ; + Column9.Format = "rk", ; + Column9.InputMask = (get_mask(10,This.nZecimalePret)), ; + Column9.Name = "Column9", ; + Column9.ReadOnly = .T., ; + Column9.Width = 71, ; + Column10.ColumnOrder = 11, ; + Column10.ControlSource = "cant *(pret_unitar-(coef_discount*pret_unitar)/100)", ; + Column10.FontName = "Arial", ; + Column10.FontSize = 10, ; + Column10.Format = "rk", ; + Column10.InputMask = (get_mask(20,This.nZecimaleSuma)), ; + Column10.Name = "cValcDiscount", ; + Column10.ReadOnly = .T., ; + Column10.Width = 62, ; + Column11.ColumnOrder = 12, ; + Column11.ControlSource = "nume_val", ; + Column11.FontName = "Arial", ; + Column11.FontSize = 10, ; + Column11.Name = "cNume_val", ; + Column11.Width = 44, ; + Column12.ColumnOrder = 5, ; + Column12.ControlSource = "pret_cu_tva", ; + Column12.FontName = "Arial", ; + Column12.FontSize = 10, ; + Column12.Name = "cPret_cu_tva", ; + Column12.ReadOnly = .T., ; + Column12.Sparse = .F., ; + Column12.Width = 37 + *< END OBJECT: ClassLib="c:\program files (x86)\microsoft visual foxpro 9\ffc\_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_articole.cCant.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cantitate", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cCant.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cCoef_discount.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Discount (%)", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cCoef_discount.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cNume_art.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Articol", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cNume_art.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cNume_val.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cNume_val.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. crt.", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.Column9.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Pret unitar diminuat", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.Column9.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cPret_cu_tva.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 17, ; + Left = 34, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 53, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_articole.cPret_cu_tva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Pret cu TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cPret_unitar.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Pret unitar", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cPret_unitar.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cUm.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Um", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cUm.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cVal_discount.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Discount", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cVal_discount.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cValcDiscount.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare - Discount", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cValcDiscount.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_articole.cValoare.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_articole.cValoare.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Procent mediu discount articole", ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label1", ; + TabIndex = 14, ; + Top = 157, ; + Width = 185, ; + WordWrap = .F., ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label10' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + FontSize = 10, ; + Height = 18, ; + Left = 479, ; + Name = "Label10", ; + TabIndex = 22, ; + Top = 157, ; + Width = 14, ; + ZOrderSet = 11 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label15' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "TVA", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 745, ; + Name = "Label15", ; + TabIndex = 23, ; + Top = 157, ; + Width = 28, ; + ZOrderSet = 16 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label16' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 777, ; + Name = "Label16", ; + TabIndex = 22, ; + Top = 178, ; + Width = 12, ; + ZOrderSet = 18 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total valoare articole cu discount", ; + FontSize = 8, ; + Height = 16, ; + Left = 7, ; + Name = "Label3", ; + TabIndex = 21, ; + Top = 212, ; + Visible = .F., ; + Width = 161, ; + ZOrderSet = 14 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Procent discount general", ; + FontSize = 10, ; + Height = 18, ; + Left = 273, ; + Name = "Label4", ; + TabIndex = 16, ; + Top = 157, ; + Width = 146, ; + ZOrderSet = 19 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total valoare discount articole", ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label5", ; + TabIndex = 18, ; + Top = 178, ; + Width = 173, ; + WordWrap = .F., ; + ZOrderSet = 15 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare discount general", ; + FontSize = 10, ; + Height = 18, ; + Left = 273, ; + Name = "Label6", ; + TabIndex = 20, ; + Top = 178, ; + Width = 145, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label7' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total general - fãrã TVA", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 500, ; + Name = "Label7", ; + TabIndex = 17, ; + Top = 157, ; + Width = 138, ; + ZOrderSet = 21 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label8' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total general - cu TVA", ; + FontSize = 10, ; + Height = 18, ; + Left = 500, ; + Name = "Label8", ; + TabIndex = 15, ; + Top = 178, ; + Width = 131, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + FontSize = 10, ; + Height = 18, ; + Left = 244, ; + Name = "Label9", ; + TabIndex = 22, ; + Top = 157, ; + Width = 14, ; + ZOrderSet = 9 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape5' AS shape WITH ; + Anchor = 15, ; + BackStyle = 0, ; + Height = 208, ; + Left = 0, ; + Name = "Shape5", ; + SpecialEffect = 0, ; + Top = -1, ; + Width = 796, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'txtCoef_discount' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "thisform.nCoef_discount", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(4,2)), ; + Left = 419, ; + Name = "txtCoef_discount", ; + TabIndex = 2, ; + Top = 155, ; + Width = 58, ; + ZOrderSet = 22 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtDiscount' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "thisform.nDiscountMediu", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(4,2)), ; + Left = 191, ; + Name = "txtDiscount", ; + ReadOnly = .T., ; + TabIndex = 8, ; + Top = 155, ; + Width = 51, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtProc_tva' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "goContract.proc_tva", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = "99", ; + Left = 738, ; + Name = "txtProc_tva", ; + TabIndex = 4, ; + Top = 176, ; + Width = 38, ; + ZOrderSet = 17 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValcdiscount' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "thisform.nValcdiscount", ; + FontSize = 8, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(8,gnPA)), ; + Left = 172, ; + Name = "txtValcdiscount", ; + ReadOnly = .T., ; + TabIndex = 10, ; + Top = 210, ; + Visible = .F., ; + Width = 86, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValctva' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "goContract.valctva", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(8,This.nZecimaleSuma)), ; + Left = 636, ; + Name = "txtValctva", ; + ReadOnly = .T., ; + TabIndex = 12, ; + Top = 176, ; + Width = 86, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValDiscount' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "thisform.nValDiscount", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(8,This.nZecimaleSuma)), ; + Left = 191, ; + Name = "txtValDiscount", ; + ReadOnly = .T., ; + TabIndex = 9, ; + Top = 177, ; + Width = 78, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValDiscountTotal' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "goContract.val_discount", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(8,This.nZecimaleSuma)), ; + Left = 419, ; + Name = "txtValDiscountTotal", ; + TabIndex = 3, ; + Top = 176, ; + Width = 66, ; + ZOrderSet = 24 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValftva' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "goContract.valftva", ; + FontSize = 10, ; + Format = "rk", ; + Height = 20, ; + InputMask = (get_mask(8,This.nZecimaleSuma)), ; + Left = 636, ; + Name = "txtValftva", ; + ReadOnly = .T., ; + TabIndex = 11, ; + Top = 155, ; + Width = 86, ; + ZOrderSet = 23 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_zecimale + Lparameters tnZecimalePret, tnZecimaleSuma + This.nzecimalepret = tnZecimalePret + This.nzecimalesuma = tnZecimaleSuma + With This.grid_articole + .cpret_unitar.InputMask = get_mask(14,This.nzecimalepret) + .cValoare.InputMask = get_mask(14,This.nzecimaleSuma) + .cVal_discount.InputMask = get_mask(10,This.nzecimaleSuma) + .Column9.InputMask = get_mask(10,This.nzecimalepret) + .cValcDiscount.InputMask = get_mask(20,This.nzecimalesuma) + Endwith + This.txtvalcdiscount.InputMask = get_mask(8,This.nzecimalesuma) + This.txtValDiscount.InputMask = get_mask(8,This.nzecimalesuma) + This.txtvalftva.InputMask = get_mask(8,This.nzecimalesuma) + This.txtValctva.InputMask = get_mask(8,This.nzecimalesuma) + ENDPROC + + PROCEDURE ck_pret_cu_tva.Valid + SELECT cCtrArt + REPLACE ALL pret_cu_tva WITH this.Value + Thisform.afisactual_obiectul + ENDPROC + + PROCEDURE grid_articole.cCant.Text1.LostFocus + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + Replace valoare With round(cant * pret_unitar,This.Parent.Parent.Parent.nzecimalesuma) && , valcdiscount WITH (cant*pret_unitar)*(100-discount)/100 + Thisform.afisactual_obiectul + This.Parent.Parent.Parent._grdfooter1.calctotal + + + ENDPROC + + PROCEDURE grid_articole.cCoef_discount.Text1.LostFocus + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + Replace val_discount With round(pret_unitar * cant * coef_discount / 100,This.Parent.Parent.Parent.nzecimalesuma) + Replace valoare With round(cant * pret_unitar,This.Parent.Parent.Parent.nzecimalesuma) && , valcdiscount WITH (cant*pret_unitar)*(100-discount)/100 + Thisform.afisactual_obiectul + This.Parent.Parent.Parent._grdfooter1.calcTotal + + ENDPROC + + PROCEDURE grid_articole.cNume_val.Text1.DblClick + If gnParametru_prog =2 + Local locauta + locauta = caut_valuta() + If buton = 2 + Return + Endif + + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + Replace id_valuta With locauta.id_valuta, nume_val With locauta.nume_val + + *IF THISFORM.cOldValue <> THISFORM.cNewValue + Thisform.do_modifica_ctr_art() + *ENDIF + + This.Parent.Parent.Refresh + Endif + + ENDPROC + + PROCEDURE grid_articole.cPret_unitar.Text1.LostFocus + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + Replace valoare With round(cant * pret_unitar,This.Parent.Parent.Parent.nzecimalesuma) && , valcdiscount WITH (cant*pret_unitar)*(100-discount)/100 + Thisform.afisactual_obiectul + This.Parent.Parent.Parent._grdfooter1.calctotal + + ENDPROC + + PROCEDURE grid_articole.cVal_discount.Text1.LostFocus + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + If pret_unitar * cant <> 0 + Replace coef_discount With round(val_discount / (pret_unitar * cant) * 100,2) + Endif + + Replace valoare With round(cant * pret_unitar,This.Parent.Parent.Parent.nzecimalesuma) && , valcdiscount WITH (cant*pret_unitar)*(100-discount)/100 + Thisform.afisactual_obiectul + This.Parent.Parent.Parent._grdfooter1.calctotal + + ENDPROC + + PROCEDURE txtCoef_discount.Valid + * IF EMPTY(goContract.val_discount) + *goContract.val_discount = ROUND(THISFORM.nValcdiscount * THISFORM.nCoef_discount / 100,gnPC) + goContract.val_discount = ROUND(THISFORM.nSumaArticole * THISFORM.nCoef_discount / 100,This.Parent.nzecimalesuma) + *goContract.valftva = THISFORM.nValcdiscount - goContract.val_discount + goContract.valftva = THISFORM.nSumaArticole - goContract.val_discount + goContract.valctva = round(goContract.valftva * (1+goContract.proc_tva/100),This.Parent.nzecimalesuma) + + thisform._pageframe1.page1.ct_dg_obiectul1.txtValDiscountTotal.REFRESH + thisform._pageframe1.page1.ct_dg_obiectul1.txtValftva.REFRESH + thisform._pageframe1.page1.ct_dg_obiectul1.txtValctva.REFRESH + * ENDIF + + + + ENDPROC + + PROCEDURE txtProc_tva.Valid + goContract.valctva = round(goContract.valftva * (1+goContract.proc_tva/100),This.Parent.nzecimalesuma) + thisform._pageframe1.page1.ct_dg_obiectul1.txtValctva.REFRESH + ENDPROC + + PROCEDURE txtProc_tva.When + This.Parent.nOldProcTVA = goContract.proc_tva + ENDPROC + + PROCEDURE txtValDiscountTotal.Valid + *thisform.nCoef_discount = ROUND(goContract.val_discount / thisform.nValcdiscount * 100, gnPC) + Thisform.nCoef_discount = Round(goContract.val_discount / Thisform.nSumaArticole * 100, 2) + *goContract.valftva = thisform.nValcdiscount - goContract.val_discount + goContract.valftva = Thisform.nSumaArticole - goContract.val_discount + goContract.valctva = Round(goContract.valftva * (1+goContract.proc_tva/100),This.Parent.nzecimalesuma) + + Thisform._pageframe1.page1.ct_dg_obiectul1.txtCoef_discount.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValftva.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValctva.Refresh + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg_tf AS ct_dg_cu_banda OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNr_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNr_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cDen_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cDen_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cProcent.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cProcent.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNume_val.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNume_val.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_scadenta.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_scadenta.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValvaluta.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValvaluta.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cPret_cu_tva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cPret_cu_tva.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cProc_tva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cProc_tva.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrataftva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrataftva.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValratactva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValratactva.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cRest.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cRest.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtScadenta_incasare" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label13" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtCoef_penalitati" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdMultiplicaRate" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdAplicaScadenta" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdfooter1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_pret_cu_tva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_afisare_scadenta" UniqueID="" Timestamp="" /> + + * + *m: actualizeaza_zecimale + *p: nzecimalepret + *p: nzecimalesuma + * + + * + Height = 479 + Name = "ct_dg_tf" + nzecimalepret = gnPPretV + nzecimalesuma = gnPc + Width = 795 + _SHAPE3.BackStyle = 0 + _SHAPE3.Name = "_SHAPE3" + _SHAPE3.ZOrderSet = 1 + _label1.Caption = "Termene de facturare ºi achitare" + _label1.FontSize = 10 + _label1.Left = 7 + _label1.Name = "_label1" + _label1.TabIndex = 1 + _label1.Top = 8 + _label1.ZOrderSet = 2 + * + + ADD OBJECT '_grdfooter1' AS _grdfooter WITH ; + ccolwithlabel = cDen_rata, ; + csourcegrid = grid_scadentar, ; + csumcolumns = cprocent,cvalrataftva,cvalratactva,cvalvaluta,crest, ; + FontSize = 10, ; + Left = 0, ; + Name = "_grdfooter1", ; + RowHeight = 19, ; + TabIndex = 13, ; + Top = 408, ; + Width = 794, ; + ZOrderSet = 13 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT '_shape1' AS _shape WITH ; + Height = 479, ; + Left = 0, ; + Name = "_shape1", ; + SpecialEffect = 0, ; + Top = 0, ; + Width = 795, ; + ZOrderSet = 0 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="shape" /> + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + caction = inainte_de_do_listare_rate, ; + Left = 762, ; + Name = "But_listare1", ; + TabIndex = 14, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 9, ; + caction = do_adauga_rate, ; + Left = 701, ; + Name = "But_nou1", ; + TabIndex = 3, ; + Top = 1, ; + ZOrderSet = 4 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + caction = inainte_de_do_sterge_rate, ; + Left = 731, ; + Name = "But_sterge1", ; + TabIndex = 4, ; + Top = 1, ; + Visible = .T., ; + ZOrderSet = 5 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'ck_afisare_scadenta' AS checkbox WITH ; + Alignment = 0, ; + Anchor = 6, ; + AutoSize = .T., ; + Caption = "Se afiºeazã data scadenþei pe facturã", ; + ControlSource = "goContract.afisare_scadenta", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 282, ; + Name = "ck_afisare_scadenta", ; + TabIndex = 11, ; + Top = 453, ; + Width = 237 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'ck_pret_cu_tva' AS checkbox WITH ; + Alignment = 0, ; + Anchor = 8, ; + AutoSize = .T., ; + Caption = "Preþuri cu TVA", ; + FontBold = .T., ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 581, ; + Name = "ck_pret_cu_tva", ; + TabIndex = 15, ; + Top = 7, ; + Width = 111 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'cmdAplicaScadenta' AS commandbutton WITH ; + Anchor = 6, ; + Caption = "Aplicã", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 22, ; + Left = 211, ; + Name = "cmdAplicaScadenta", ; + TabIndex = 6, ; + ToolTipText = "Inlocuieste data scadenta cu data facturarii + perioada scadenta", ; + Top = 450, ; + Width = 60, ; + ZOrderSet = 11 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'cmdMultiplicaRate' AS commandbutton WITH ; + Anchor = 6, ; + Caption = "Instrument de multiplicare rate", ; + FontSize = 10, ; + Height = 27, ; + Left = 522, ; + Name = "cmdMultiplicaRate", ; + TabIndex = 5, ; + Top = 448, ; + Visible = .F., ; + Width = 96, ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'grid_scadentar' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 13, ; + DeleteMark = .F., ; + FontSize = 10, ; + GridLineColor = 192,192,192, ; + HeaderHeight = 19, ; + Height = 400, ; + HighlightStyle = 2, ; + Left = 0, ; + Name = "grid_scadentar", ; + Panel = 1, ; + Partition = 0, ; + ReadOnly = .F., ; + RecordMark = .F., ; + RecordSource = "cCtrScadentar", ; + RowHeight = 19, ; + TabIndex = 2, ; + Top = 30, ; + Width = 794, ; + ZOrderSet = 3, ; + Column1.ColumnOrder = 1, ; + Column1.ControlSource = "nr_rata", ; + Column1.FontName = "Arial", ; + Column1.FontSize = 10, ; + Column1.Name = "cNr_rata", ; + Column1.ReadOnly = .F., ; + Column1.Width = 26, ; + Column2.ColumnOrder = 3, ; + Column2.ControlSource = "data_rata", ; + Column2.FontName = "Arial", ; + Column2.FontSize = 10, ; + Column2.Name = "cData_rata", ; + Column2.ReadOnly = .F., ; + Column2.Width = 72, ; + Column3.ColumnOrder = 7, ; + Column3.ControlSource = "valrata", ; + Column3.FontName = "Arial", ; + Column3.FontSize = 10, ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(20,This.nZecimalePret)), ; + Column3.Name = "cValrata", ; + Column3.ReadOnly = .F., ; + Column3.Width = 74, ; + Column4.ColumnOrder = 2, ; + Column4.ControlSource = "den_rata", ; + Column4.FontName = "Arial", ; + Column4.FontSize = 10, ; + Column4.Name = "cDen_rata", ; + Column4.ReadOnly = .F., ; + Column4.Width = 135, ; + Column5.ColumnOrder = 5, ; + Column5.ControlSource = "procent", ; + Column5.FontName = "Arial", ; + Column5.FontSize = 10, ; + Column5.Format = "rk", ; + Column5.InputMask = (get_mask(20,2)), ; + Column5.Name = "cProcent", ; + Column5.ReadOnly = .F., ; + Column5.Width = 39, ; + Column6.BackColor = 225,223,217, ; + Column6.ColumnOrder = 12, ; + Column6.ControlSource = "nume_val", ; + Column6.FontName = "Arial", ; + Column6.FontSize = 10, ; + Column6.Name = "cNume_val", ; + Column6.ReadOnly = .T., ; + Column6.Width = 39, ; + Column7.ColumnOrder = 4, ; + Column7.ControlSource = "data_scadenta", ; + Column7.FontName = "Arial", ; + Column7.FontSize = 10, ; + Column7.Name = "cData_scadenta", ; + Column7.ReadOnly = .F., ; + Column7.Width = 70, ; + Column8.BackColor = 225,223,217, ; + Column8.ColumnOrder = 10, ; + Column8.ControlSource = "valvaluta", ; + Column8.FontName = "Arial", ; + Column8.FontSize = 10, ; + Column8.Format = "rk", ; + Column8.InputMask = (get_mask(20,This.nZecimaleSuma)), ; + Column8.Name = "cValvaluta", ; + Column8.ReadOnly = .T., ; + Column8.Width = 92, ; + Column9.Alignment = 2, ; + Column9.ColumnOrder = 6, ; + Column9.ControlSource = "pret_cu_tva", ; + Column9.FontName = "Arial", ; + Column9.FontSize = 10, ; + Column9.Name = "cPret_cu_tva", ; + Column9.ReadOnly = .T., ; + Column9.Sparse = .F., ; + Column9.Width = 79, ; + Column10.BackColor = 225,223,217, ; + Column10.ColumnOrder = 13, ; + Column10.ControlSource = "proc_tva", ; + Column10.FontName = "Arial", ; + Column10.FontSize = 10, ; + Column10.Format = "rk", ; + Column10.InputMask = "99", ; + Column10.Name = "cProc_tva", ; + Column10.ReadOnly = .T., ; + Column10.Width = 36, ; + Column11.BackColor = 225,223,217, ; + Column11.ColumnOrder = 8, ; + Column11.ControlSource = "valrataftva", ; + Column11.FontName = "Arial", ; + Column11.FontSize = 10, ; + Column11.Format = "rk", ; + Column11.InputMask = (get_mask(20,This.nZecimalePret)), ; + Column11.Name = "cValrataftva", ; + Column11.ReadOnly = .T., ; + Column11.Width = 73, ; + Column12.BackColor = 225,223,217, ; + Column12.ColumnOrder = 9, ; + Column12.ControlSource = "valratactva", ; + Column12.DynamicBackColor = "", ; + Column12.FontName = "Arial", ; + Column12.FontSize = 10, ; + Column12.Format = "rk", ; + Column12.InputMask = (get_mask(20,This.nZecimalePret)), ; + Column12.Name = "cValratactva", ; + Column12.ReadOnly = .T., ; + Column12.Width = 75, ; + Column13.BackColor = 225,223,217, ; + Column13.ColumnOrder = 11, ; + Column13.ControlSource = "valrataftva - valvaluta", ; + Column13.FontName = "Arial", ; + Column13.FontSize = 10, ; + Column13.InputMask = (get_mask(20,This.nZecimaleSuma)), ; + Column13.Name = "cRest", ; + Column13.ReadOnly = .F., ; + Column13.Width = 95 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_scadentar.cData_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data facturarii", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cData_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cData_scadenta.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data scadentei", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cData_scadenta.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cDen_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Denumire rata", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cDen_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + Enabled = .T., ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cNr_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. rata", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cNr_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + Enabled = .T., ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cNume_val.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cNume_val.Text1' AS textbox WITH ; + BackColor = 225,223,217, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cPret_cu_tva.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 17, ; + Left = 29, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 29, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_scadentar.cPret_cu_tva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Pret cu TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cProc_tva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Proc TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cProc_tva.Text1' AS textbox WITH ; + BackColor = 225,223,217, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cProcent.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Procent (%)", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cProcent.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cRest.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Rest de facturat fara TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cRest.Text1' AS textbox WITH ; + BackColor = 225,223,217, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cValrata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare rata", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cValrata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cValratactva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare rata cu TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cValratactva.Text1' AS textbox WITH ; + BackColor = 225,223,217, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cValrataftva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare rata fara TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cValrataftva.Text1' AS textbox WITH ; + BackColor = 225,223,217, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cValvaluta.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare facturata fara TVA", ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cValvaluta.Text1' AS textbox WITH ; + BackColor = 225,223,217, ; + BorderStyle = 0, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label13' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Coef.penalitãþi", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 625, ; + Name = "Label13", ; + TabIndex = 12, ; + Top = 453, ; + Visible = .F., ; + Width = 84, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "zile", ; + FontSize = 10, ; + Height = 18, ; + Left = 179, ; + Name = "Label4", ; + TabIndex = 10, ; + Top = 453, ; + Width = 22, ; + ZOrderSet = 12 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Scadenþã încasare", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 18, ; + Left = 7, ; + Name = "Label6", ; + TabIndex = 9, ; + Top = 453, ; + Width = 110, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'txtCoef_penalitati' AS textbox WITH ; + Anchor = 12, ; + ControlSource = "goContract.coef_penalitati", ; + FontSize = 10, ; + Height = 23, ; + Left = 714, ; + Name = "txtCoef_penalitati", ; + TabIndex = 8, ; + Top = 450, ; + Visible = .F., ; + Width = 57, ; + ZOrderSet = 9 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtScadenta_incasare' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "goContract.scadenta_incasare", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = "999", ; + Left = 117, ; + Name = "txtScadenta_incasare", ; + TabIndex = 7, ; + Top = 450, ; + Width = 58, ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_zecimale + Lparameters tnZecimalePret, tnZecimaleSuma + This.nzecimalepret = tnZecimalePret + This.nzecimalesuma = tnZecimaleSuma + With This.grid_scadentar + .cValrata.InputMask = get_mask(20,This.nzecimaleSuma) + .cValrataftva.InputMask = get_mask(20,This.nzecimaleSuma) + .cValratactva.InputMask = get_mask(20,This.nzecimaleSuma) + .cValvaluta.InputMask = get_mask(20,This.nzecimaleSuma) + .cRest.InputMask = get_mask(20,This.nZecimalesuma) + Endwith + ENDPROC + + PROCEDURE Init + this.grid_scadentar.HeaderHeight = 38 + + ENDPROC + + PROCEDURE cmdAplicaScadenta.Click + LOCAL lnZileScadenta, lcTabelRate + + lnZileScadenta = this.Parent.txtscadenta_incasare.Value + lcTabelRate = this.Parent.grid_scadentar.RecordSource + SELECT (lcTabelRate) + REPLACE ALL data_scadenta WITH data_rata + lnZileScadenta + this.Parent.grid_scadentar.Refresh + ENDPROC + + PROCEDURE cmdMultiplicaRate.Click + Private pnNrRate, pdDataI, pnValRata, pnId_valuta, pnFrecventa, pcDen_rata, pnPtLuna + Store 1 To pnNrRate, pnFrecventa, pnPtLuna + + Select cCtrScadentar + pdDataI = data_rata + pnId_valuta = id_valuta + pcNume_val = Alltrim(nume_val) + + pnValRata = goContract.valftva + + lomr = Createobject("frm_multiplica_rate") + lomr.Show(1) + + If buton = 2 + Return + Endif + + pcId_ctr = Alltrim(Str(goContract.id_ctr)) + + pcDataI = Alltrim(Dtos(pdDataI)) + + *!* modificare v 2.0.6 + *!* lcSql = [begin pack_crm.multiplica_rate(] + pcId_ctr + [,] + ALLTRIM(STR(pnNrRate)) + [, TO_DATE('] + IIF(!EMPTY(pcDataI) and !ISNULL(pcDataI),pcDataI,[NULL]) + [','YYYYMMDD'), ] + ; + *!* ALLTRIM(STR(pnValRata,20,gnPC)) + [,'] + SUBSTR(ALLTRIM(pcDen_rata),1,30) + [',] + NVL(ALLTRIM(STR(pnId_valuta)),[NULL]) + [,] ; + *!* + ALLTRIM(STR(pnFrecventa)) + [,] + ALLTRIM(STR(pnPtLuna)) + [); end;] + lcSql = [begin pack_crm.multiplica_rate(] + pcId_ctr + [,] + Alltrim(Str(pnNrRate)) + [,] + ; + [TO_DATE('] + Iif(!Empty(pcDataI) And !Isnull(pcDataI),pcDataI,[NULL]) + [','YYYYMMDD'), ] + ; + ALLTRIM(Str(pnValRata,20,This.Parent.nzecimalepret)) + [,'] + Substr(Alltrim(pcDen_rata),1,80) + [',] + ; + NVL(Alltrim(Str(pnId_valuta)),[NULL]) + [,] + Alltrim(Str(pnFrecventa)) + [,] + ; + ALLTRIM(Str(pnPtLuna)) + [); end;] + *!* modificare v 2.0.6 ^ + if goExecutor.oExecuta(lcSql) + Thisform.actualizeaza_grid1() + Endif + + ENDPROC + + PROCEDURE grid_scadentar.cData_rata.Text1.LostFocus + LOCAL lcTabel + lcTabel = this.Parent.Parent.RecordSource + SELECT (lcTabel) + REPLACE data_scadenta WITH data_rata + NVL(goContract.scadenta_incasare,0) + + this.Parent.Parent.Refresh + ENDPROC + + PROCEDURE grid_scadentar.cProcent.Text1.LostFocus + LOCAL lnProc + lnProc = this.Value + IF lnProc*0 = 0 AND goContract.valftva*0 = 0&& <> ************* + REPLACE valrata WITH round(NVL(goContract.valftva,0) * lnProc/100,This.Parent.Parent.Parent.nzecimalepret) + ELSE + REPLACE valrata WITH 0 + ENDIF + + this.Parent.Parent.Parent._grdfooter1.calctotal + + + ENDPROC + + PROCEDURE grid_scadentar.cValrata.Text1.LostFocus + If goContract.valftva <> 0 And goContract.valftva*0 = 0 && <> ************* + Replace procent With valrata/goContract.valftva * 100 + Else + Replace procent With 0 + Endif + + If pret_cu_tva = 1 + Replace valrataftva With round(valrata / (1+proc_tva/100),This.Parent.Parent.Parent.nzecimalepret), valratactva With valrata + Else + Replace valrataftva With valrata, valratactva With round(valrata * (1+proc_tva/100),This.Parent.Parent.Parent.nzecimalepret) + Endif + + This.Parent.Parent.Parent._grdfooter1.calctotal + + + + + ENDPROC + + PROCEDURE grid_scadentar.Init + * NU STERGE + + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg_tf_2 AS ct_dg_cu_banda OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_fact_atas" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column6.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column6.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column7.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column7.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column8.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column8.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column9.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column9.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column10.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column10.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNr_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNr_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cDen_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cDen_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNume_val.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNume_val.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtSumaRate" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtSumaFacturi" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="optFactAtas" UniqueID="" Timestamp="" /> + + * + Height = 428 + Name = "ct_dg_tf_2" + Width = 809 + _shape3.Name = "_shape3" + _label1.Caption = "Facturi asociate la scadenþar" + _label1.Name = "_label1" + * + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 725, ; + Name = "But_listare1", ; + Top = 33, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + Left = 755, ; + Name = "But_sterge1", ; + Top = 33, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Anchor = 3, ; + AutoSize = .F., ; + Caption = "Ataºare facturi", ; + FontCharSet = 238, ; + FontSize = 10, ; + Height = 29, ; + Left = 240, ; + Name = "Command1", ; + Top = 36, ; + Width = 120, ; + WordWrap = .T. + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'grid_fact_atas' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 10, ; + DeleteMark = .F., ; + GridLineColor = 192,192,192, ; + HeaderHeight = 38, ; + Height = 323, ; + Left = 372, ; + Name = "grid_fact_atas", ; + Panel = 1, ; + RecordSource = "cFactAtas", ; + Top = 69, ; + Width = 423, ; + Column1.ColumnOrder = 1, ; + Column1.ControlSource = "id_fact", ; + Column1.Name = "Column1", ; + Column1.Width = 50, ; + Column2.ColumnOrder = 2, ; + Column2.ControlSource = "valvaluta", ; + Column2.Format = "rk", ; + Column2.InputMask = (get_mask(14,max(gnPc,gnPVal))), ; + Column2.Name = "Column2", ; + Column2.Width = 81, ; + Column3.ColumnOrder = 5, ; + Column3.ControlSource = "curs", ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(10,gnPCurs)), ; + Column3.Name = "Column3", ; + Column3.Width = 48, ; + Column4.ColumnOrder = 6, ; + Column4.ControlSource = "nume_val", ; + Column4.Name = "Column4", ; + Column4.Width = 55, ; + Column5.ColumnOrder = 8, ; + Column5.ControlSource = "nract", ; + Column5.Name = "Column5", ; + Column5.Width = 56, ; + Column6.ColumnOrder = 9, ; + Column6.ControlSource = "ttod(dataact)", ; + Column6.Name = "Column6", ; + Column6.Width = 41, ; + Column7.ColumnOrder = 7, ; + Column7.ControlSource = "fdoc", ; + Column7.Name = "Column7", ; + Column7.Width = 53, ; + Column8.ColumnOrder = 10, ; + Column8.ControlSource = "explicatia", ; + Column8.Name = "Column8", ; + Column8.Width = 111, ; + Column9.ColumnOrder = 3, ; + Column9.ControlSource = "valvalutactva", ; + Column9.InputMask = (get_mask(14,max(gnPc,gnPVal))), ; + Column9.Name = "Column9", ; + Column9.Width = 84, ; + Column10.ColumnOrder = 4, ; + Column10.ControlSource = "proctva", ; + Column10.Name = "Column10", ; + Column10.Width = 47 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_fact_atas.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "ID fact.", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column10.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Proc TVA (%)", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column10.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta (fara TVA)", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Curs", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr fact", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column6.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data fact", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column6.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column7.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Fel doc", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column7.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column8.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatia", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column8.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column9.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta (cu TVA)", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column9.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar' AS _grdrow WITH ; + Anchor = 7, ; + ColumnCount = 5, ; + DeleteMark = .F., ; + GridLineColor = 192,192,192, ; + HeaderHeight = 38, ; + Height = 323, ; + HighlightStyle = 2, ; + Left = 12, ; + Name = "grid_scadentar", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordMark = .F., ; + RecordSource = "cCtrScadentar", ; + RowHeight = 18, ; + TabIndex = 1, ; + Top = 69, ; + Width = 351, ; + Column1.ColumnOrder = 1, ; + Column1.ControlSource = "nr_rata", ; + Column1.FontName = "Arial", ; + Column1.Name = "cNr_rata", ; + Column1.ReadOnly = .T., ; + Column1.Width = 29, ; + Column2.ColumnOrder = 3, ; + Column2.ControlSource = "data_rata", ; + Column2.FontName = "Arial", ; + Column2.Name = "cData_rata", ; + Column2.ReadOnly = .T., ; + Column2.Width = 55, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "valrata", ; + Column3.FontName = "Arial", ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(20,max(gnPc,gnPVal))), ; + Column3.Name = "cValrata", ; + Column3.ReadOnly = .T., ; + Column3.Width = 97, ; + Column4.ColumnOrder = 2, ; + Column4.ControlSource = "den_rata", ; + Column4.FontName = "Arial", ; + Column4.Name = "cDen_rata", ; + Column4.ReadOnly = .T., ; + Column4.Width = 99, ; + Column5.ColumnOrder = 5, ; + Column5.ControlSource = "nume_val", ; + Column5.FontName = "Arial", ; + Column5.Name = "cNume_val", ; + Column5.ReadOnly = .T., ; + Column5.Width = 45 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_scadentar.cData_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data facturarii", ; + FontName = "Arial", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cData_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cDen_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Denumire rata", ; + FontName = "Arial", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cDen_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cNr_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. rata", ; + FontName = "Arial", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cNr_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cNume_val.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + FontName = "Arial", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cNume_val.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cValrata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare rata valuta (fara TVA)", ; + FontName = "Arial", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cValrata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total valoare rate", ; + FontSize = 10, ; + Height = 18, ; + Left = 105, ; + Name = "Label1", ; + Top = 400, ; + Width = 100 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total valori facturi", ; + FontSize = 10, ; + Height = 18, ; + Left = 536, ; + Name = "Label2", ; + Top = 400, ; + Width = 102 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'optFactAtas' AS optiongroup WITH ; + AutoSize = .F., ; + BackStyle = 0, ; + ButtonCount = 2, ; + Height = 37, ; + Left = 374, ; + Name = "optFactAtas", ; + Top = 30, ; + Value = 1, ; + Width = 243, ; + Option1.AutoSize = .T., ; + Option1.BackStyle = 0, ; + Option1.Caption = "Facturile ataºate la ratã", ; + Option1.FontCharSet = 238, ; + Option1.FontSize = 10, ; + Option1.Height = 18, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 2, ; + Option1.Value = 1, ; + Option1.Width = 156, ; + Option2.AutoSize = .T., ; + Option2.BackStyle = 0, ; + Option2.Caption = "Toate facturile ataºate la contract", ; + Option2.FontCharSet = 238, ; + Option2.FontSize = 10, ; + Option2.Height = 18, ; + Option2.Left = 5, ; + Option2.Name = "Option2", ; + Option2.Top = 16, ; + Option2.Width = 212 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'txtSumaFacturi' AS textbox WITH ; + Anchor = 12, ; + ControlSource = "thisform.nSumaFact", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPA)), ; + Left = 642, ; + Name = "txtSumaFacturi", ; + Top = 397, ; + Width = 153 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtSumaRate' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "thisform.nSumaRate", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPA)), ; + Left = 210, ; + Name = "txtSumaRate", ; + Top = 397, ; + Width = 153 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Command1.Click + Local lcSel, lcCursor, lnSucces, lcScadentar, lnId_fact, lnId_rata, lcSql, lnSucces + + *!* lcSel = [{call pack_crm.facturi_neatasate(] + ALLTRIM(STR(gnParametru_prog))+ [,] + ALLTRIM(STR(goContract.id_part)) + [,]+ALLTRIM(STR(goContract.id_ctr))+ [)}] + *!* lcCursor = 'cFact_neatas' + *!* lnSucces = goExecutor.oExecute(lcSel, lcCursor) + *!* IF lnSucces < 0 + *!* amessage(goExecutor.cEroare,0+16,"Eroare") + *!* RETURN + *!* ENDIF + + Private poFactGaran + Store '' To poFactGaran + + Local lcSchema, lcSelect, lcOrder, lcFiltru, lcFiltruOriginal, llAfiseaza, llModParam, lcgroup, lcFiltruOriginal + lcOrder = [dataact desc] + lcgroup = [] + lcFiltru = [ 1=1 ] + + Do Case + Case gnParametru_prog=1 + lcSchema = [] + lcSelect = [select distinct id_ctr, contract, fdoc, nract, dataact, dataireg, debit as suma, id_fact, cod, explicatia, ]+; + [(case when id_fact in (select id_fact from vctr_rate_facturi) then 1 else 0 end) as atasata ]+; + [ from vireg_emise_in_perioada ] + lcFiltruOriginal = [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + Case gnParametru_prog=2 + lcSchema = [] + lcSelect = [select distinct id_ctr, contract, fdoc, nract, dataact, dataireg, credit as suma, id_fact, cod, explicatia, ]+; + [(case when id_fact in (select id_fact from vctr_rate_facturi) then 1 else 0 end) as atasata ]+; + [ from vireg_emise_in_perioada ] + lcFiltruOriginal = [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + + Otherwise + lcFiltruOriginal = [] + Endcase + + llAfiseaza = .F. + llModParam = .T. + + gencursor('poFactGaran','cFact_neatas', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poFactGaran.ca_baza1.afisare() + + ***---------------------------- + + lcScadentar = Thisform.grid_scadentar.RecordSource + + Select cFact_neatas + loip = Createobject('frm_atas_fact_iregpart') + loip.lb_titlu_alb_b121.Caption = 'Facturi fara contract sau corespunzatoare contractului '+Alltrim(goContract.numar) + ' / ' + Dtoc(goContract.Data) + loip.Show(1) + + If buton = 2 + Return + Endif + + Private pnFA_valvaluta, pnFA_valvalutacTVA, pnFA_procTVA, pnFA_valctva, pnFA_curs, pnFA_id_valuta, pcFA_nume_val, pnValRata + Store 0 To pnFA_valvaluta, pnFA_valvalutacTVA, pnFA_procTVA, pnFA_curs, pnFA_id_valuta, pnValRata + Store '' To pcFA_nume_val + + pnFA_valctva = cFact_neatas.suma + + + Select (lcScadentar) + lnId_rata = id_rata + pnFA_id_valuta = id_valuta + pcFA_nume_val = Upper(Alltrim(nume_val)) + pnValRata = valrata && ca sa aflu cursul + + pnFA_valvaluta = pnValRata + pnFA_procTVA = goContract.proc_tva + pnFA_valvalutacTVA = Round(pnFA_valvaluta * (1+pnFA_procTVA/100),gnPC) + + *IF pnFA_valctva <> 0 + If pnFA_valvalutacTVA <> 0 + pnFA_curs = Round(pnFA_valctva/pnFA_valvalutacTVA,gnPCurs) + Endif + + + loafc = Createobject('frm_atas_fact_curs') + loafc.Show(1) + + If buton = 2 + Return + Endif + + lnId_fact = cFact_neatas.id_fact + + If !Empty(lnId_fact) + + lcSql = [begin pack_crm.adauga_rata_fact(] + Alltrim(Str(lnId_rata)) + [,] + Alltrim(Str(lnId_fact)) + [,] ; + + Alltrim(Str(pnFA_valvaluta,14,gnPC)) + [,] + Alltrim(Str(pnFA_valvalutacTVA,14,gnPC)) + [,] + Alltrim(Str(pnFA_procTVA)) + [,] ; + + Alltrim(Str(pnFA_curs,12,gnPCurs)) + [,] + Alltrim(Str(pnFA_id_valuta)) + [,] + Alltrim(Str(gnIdUtil)) + [); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX('pack_crm.cauta_ctr_art'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + Thisform.actualizeaza_grid2() + + *!* lcId_ctr = ALLTRIM(STR(goContract.id_ctr)) + *!* lcId_fact = ALLTRIM(STR(lnId_fact)) + *!* lcSql = [update act set id_ctr=] + lcId_ctr + [ where id_fact=]+lcId_fact + [ and id_ctr is null and sters=0] + *!* lnSucces = goExecutor.oExecute(lcSql) + + *!* IF lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* RETURN + *!* ENDIF + + Endif + + + + ENDPROC + + PROCEDURE grid_fact_atas.AfterRowColChange + LPARAMETERS nColIndex + + SELECT cFactAtas + lnId_fact = id_fact + + + + lcTabelScadentar = thisform.grid_scadentar.RecordSource + UPDATE (lcTabelScadentar) SET lid_fact = 0 + IF USED('cRate') + USE IN cRate + ENDIF + + SELECT id_rata FROM cFactAtas WHERE id_fact = lnId_fact INTO CURSOR cRate + + UPDATE (lcTabelScadentar) SET lid_fact = 1 WHERE id_rata in (select id_rata from cRate) + + thisform.grid_scadentar.SetAll('DynamicBackColor','IIF(cCtrScadentar.Lid_fact=1, RGB(217,217,255), RGB(255,255,255))','Column') + + + + + + + + ENDPROC + + PROCEDURE grid_scadentar.AfterRowColChange + LPARAMETERS nColIndex + + LOCAL lcTabelFactAtas + lcTabelFactAtas = thisform.grid_fact_atas.RecordSource + + IF thisform.optFactAtas.Value = 1 + SELECT (lcTabelFactAtas) + SET FILTER TO id_rata = cCtrScadentar.id_rata + ELSE + SELECT (lcTabelFactAtas) + SET FILTER TO + ENDIF + + thisform.grID_FACT_ATAS.SetAll("DynamicBackColor","IIF(id_rata = cCtrScadentar.id_rata, RGB(206,255,255), RGB(255,255,255))", "Column") + + thisform.afisactual + thisform.grid_fact_atas.Refresh + thisform.Refresh + + + ENDPROC + + PROCEDURE optFactAtas.Valid + thisform.grid_scadentar.AfterRowColChange + + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_dg_tl AS ct_dg_cu_banda OF "ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_pv_nr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_proc_ret" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_val_ret" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_alerta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_proc_alerta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_pv_data" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cNract.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cNract.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cDataact.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cDataact.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cValftva.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cValftva.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cGarantie.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_garant.cGarantie.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdfooter1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGrnt_perioada" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label13" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="BUT_MODIFICA1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_attach1" UniqueID="" Timestamp="" /> + + * + Height = 479 + Name = "ct_dg_tl" + Width = 795 + _SHAPE3.Name = "_SHAPE3" + _SHAPE3.ZOrderSet = 0 + _label1.Caption = "Termene de livrare/receptie si Garantii" + _label1.FontCharSet = 1 + _label1.FontName = "Arial" + _label1.FontSize = 10 + _label1.Name = "_label1" + _label1.ZOrderSet = 2 + * + + ADD OBJECT '_grdfooter1' AS _grdfooter WITH ; + ccolwithlabel = cNract, ; + csourcegrid = grid_Fact_garant, ; + csumcolumns = cValftva,cGarantie, ; + ctotallabelexpression = 'TOTAL', ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 20, ; + Left = 455, ; + Name = "_grdfooter1", ; + RowHeight = 19, ; + TabIndex = 29, ; + Top = 240, ; + Width = 338, ; + ZOrderSet = 20 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT '_shape1' AS _shape WITH ; + Height = 479, ; + Left = 0, ; + Name = "_shape1", ; + SpecialEffect = 0, ; + Top = 0, ; + Width = 795, ; + ZOrderSet = 1 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="shape" /> + + ADD OBJECT 'But_attach1' AS but_attach WITH ; + Anchor = 9, ; + caction = do_ataseaza_garantie, ; + Left = 673, ; + Name = "But_attach1", ; + TabIndex = 9, ; + ToolTipText = "Atasare factura la contract;Facturile din contabilitate ale partenerului de pe contract care sunt atasate la contractul selectat sau nu sunt atasate la nici un contract", ; + Top = 1, ; + ZOrderSet = 27 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'BUT_MODIFICA1' AS but_modifica WITH ; + Anchor = 9, ; + caction = inainte_de_do_modifica_garantie, ; + Left = 733, ; + Name = "BUT_MODIFICA1", ; + TabIndex = 11, ; + ToolTipText = "Modificare", ; + Top = 1, ; + Visible = .T., ; + ZOrderSet = 25 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 9, ; + caction = do_adauga_garantie, ; + Left = 703, ; + Name = "But_nou1", ; + TabIndex = 10, ; + ToolTipText = "Se alege dintre facturile din contabilitate ale partenerului de pe contract care sunt atasate la contractul selectat; facturi de 4111 pentru contracte-clienti si 401 sau 404 pentru contracte-furnizori", ; + Top = 1, ; + ZOrderSet = 24 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + caction = inainte_de_do_sterge_garantie, ; + Left = 763, ; + Name = "But_sterge1", ; + TabIndex = 12, ; + ToolTipText = "Stergere", ; + Top = 1, ; + Visible = .T., ; + ZOrderSet = 26 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_Fact_garant' AS _grdbase WITH ; + Anchor = 15, ; + ColumnCount = 4, ; + DeleteMark = .F., ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 232, ; + Left = 455, ; + Name = "grid_Fact_garant", ; + Panel = 1, ; + RecordSource = "cCtrFactGarant", ; + RowHeight = 19, ; + TabIndex = 13, ; + Top = 28, ; + Width = 338, ; + ZOrderSet = 18, ; + Column1.ControlSource = "nract", ; + Column1.FontCharSet = 1, ; + Column1.FontName = "Arial", ; + Column1.FontSize = 10, ; + Column1.Name = "cNract", ; + Column1.Width = 67, ; + Column2.ControlSource = "dataact", ; + Column2.FontCharSet = 1, ; + Column2.FontName = "Arial", ; + Column2.FontSize = 10, ; + Column2.Name = "cDataact", ; + Column2.Width = 65, ; + Column3.ControlSource = "valftva", ; + Column3.FontCharSet = 1, ; + Column3.FontName = "Arial", ; + Column3.FontSize = 10, ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(12,gnPc)), ; + Column3.Name = "cValftva", ; + Column3.Width = 98, ; + Column4.ControlSource = "garantie", ; + Column4.FontCharSet = 1, ; + Column4.FontName = "Arial", ; + Column4.FontSize = 10, ; + Column4.Format = "rk", ; + Column4.InputMask = (get_mask(12,gnPc)), ; + Column4.Name = "cGarantie", ; + Column4.Width = 70 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_Fact_garant.cDataact.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_garant.cDataact.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_garant.cGarantie.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Garantii retinute", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_garant.cGarantie.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_garant.cNract.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr.", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_garant.cNract.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_garant.cValftva.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare (fara TVA)", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_garant.cValftva.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 100,185,255 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "PV predare-primire finalã", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 12, ; + Name = "Label1", ; + TabIndex = 26, ; + Top = 164, ; + Width = 144, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label10' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Facturi - Garantii retinute", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 464, ; + Name = "Label10", ; + TabIndex = 17, ; + Top = 9, ; + Width = 146, ; + ZOrderSet = 19 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label12' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Perioadã garantie", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 12, ; + Name = "Label12", ; + TabIndex = 20, ; + Top = 189, ; + Width = 103, ; + ZOrderSet = 21 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label13' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "(nr. luni)", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 201, ; + Name = "Label13", ; + TabIndex = 22, ; + Top = 189, ; + Width = 49, ; + ZOrderSet = 23 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare garantie retinutã", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 12, ; + Name = "Label2", ; + TabIndex = 25, ; + Top = 86, ; + Width = 143, ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Returnare partialã", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 12, ; + Name = "Label3", ; + TabIndex = 21, ; + Top = 112, ; + Width = 104, ; + ZOrderSet = 9 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Procent garantie retinut", ; + FontCharSet = 1, ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 12, ; + Name = "Label4", ; + TabIndex = 16, ; + Top = 60, ; + Width = 137, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "(nr. zile)", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 201, ; + Name = "Label5", ; + TabIndex = 23, ; + Top = 112, ; + Width = 49, ; + ZOrderSet = 11 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Procent returnare", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 12, ; + Name = "Label6", ; + TabIndex = 24, ; + Top = 138, ; + Width = 102, ; + ZOrderSet = 12 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label7' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "/", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 232, ; + Name = "Label7", ; + TabIndex = 28, ; + Top = 164, ; + Width = 6, ; + ZOrderSet = 15 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label8' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 201, ; + Name = "Label8", ; + TabIndex = 19, ; + Top = 60, ; + Width = 14, ; + ZOrderSet = 16 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + FontName = "Arial", ; + FontSize = 10, ; + Height = 18, ; + Left = 201, ; + Name = "Label9", ; + TabIndex = 18, ; + Top = 138, ; + Width = 14, ; + ZOrderSet = 17 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'txtGrnt_alerta1' AS textbox WITH ; + ControlSource = "goContract.grnt_alerta1", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = "9999", ; + Left = 157, ; + Name = "txtGrnt_alerta1", ; + TabIndex = 3, ; + Top = 109, ; + Width = 43, ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGrnt_perioada' AS textbox WITH ; + ControlSource = "goContract.grnt_perioada", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = "9999", ; + Left = 157, ; + Name = "txtGrnt_perioada", ; + TabIndex = 8, ; + Top = 186, ; + Width = 43, ; + ZOrderSet = 22 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGrnt_proc_alerta1' AS textbox WITH ; + ControlSource = "goContract.grnt_proc_alerta1", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(4,0)), ; + Left = 157, ; + Name = "txtGrnt_proc_alerta1", ; + TabIndex = 4, ; + Top = 135, ; + Width = 43, ; + ZOrderSet = 13 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGrnt_proc_ret' AS textbox WITH ; + ControlSource = "goContract.grnt_proc_ret", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(4,0)), ; + Left = 157, ; + Name = "txtGrnt_proc_ret", ; + TabIndex = 1, ; + Top = 57, ; + Width = 43, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGrnt_pv_data' AS textbox WITH ; + ControlSource = "goContract.grnt_pv_data", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + Left = 241, ; + Name = "txtGrnt_pv_data", ; + TabIndex = 7, ; + Top = 161, ; + Width = 72, ; + ZOrderSet = 14 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGrnt_pv_nr' AS textbox WITH ; + ControlSource = "goContract.grnt_pv_nr", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = "9999999999", ; + Left = 157, ; + Name = "txtGrnt_pv_nr", ; + TabIndex = 6, ; + Top = 161, ; + Width = 72, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGrnt_val_ret' AS textbox WITH ; + ControlSource = "goContract.grnt_val_ret", ; + FontName = "Arial", ; + FontSize = 10, ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(10,gnPc)), ; + Left = 157, ; + Name = "txtGrnt_val_ret", ; + TabIndex = 2, ; + Top = 83, ; + Width = 156, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE txtGrnt_proc_ret.Valid + IF !ISNULL(gocontract.valftva) + goContract.grnt_val_ret = gocontract.valftva * goContract.grnt_proc_ret / 100 + thisform.txtGrnt_val_ret.Refresh + ENDIF + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_part_nr_data AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="cmdDenumire" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtClient" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtNumar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_actAd" UniqueID="" Timestamp="" /> + + * + *m: blocheaza_campuri + *m: deblocheaza_campuri + *p: llock + * + + * + BackColor = 197,214,254 + Height = 62 + llock = .T. + Name = "ct_part_nr_data" + Width = 600 + * + + ADD OBJECT 'cmdDenumire' AS commandbutton WITH ; + Caption = "", ; + Enabled = .F., ; + Height = 22, ; + Left = 525, ; + Name = "cmdDenumire", ; + Picture = ..\grafice\find.bmp, ; + TabIndex = 2, ; + Top = 5, ; + Width = 29 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Command2' AS commandbutton WITH ; + Anchor = 3, ; + Caption = "Modificã", ; + FontBold = .T., ; + FontCharSet = 238, ; + FontSize = 10, ; + ForeColor = 0,0,255, ; + Height = 47, ; + Left = 8, ; + Name = "Command2", ; + Picture = ..\comun\grafice\lock.bmp, ; + SpecialEffect = 0, ; + TabIndex = 1, ; + Top = 4, ; + Width = 131 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Partener", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 163, ; + Name = "Label3", ; + TabIndex = 6, ; + Top = 8, ; + Width = 57 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nr. contract ", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 163, ; + Name = "Label4", ; + TabIndex = 7, ; + Top = 30, ; + Width = 79 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data contract ", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 359, ; + Name = "Label9", ; + TabIndex = 8, ; + Top = 30, ; + Width = 90 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lb_actAd' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nr. act ad.", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 163, ; + Name = "lb_actAd", ; + TabIndex = 8, ; + Top = 43, ; + Visible = .F., ; + Width = 67 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'txtClient' AS textbox WITH ; + ControlSource = "goContract.denumire", ; + FontSize = 10, ; + Height = 21, ; + Left = 240, ; + Name = "txtClient", ; + ReadOnly = .T., ; + TabIndex = 5, ; + Top = 6, ; + Width = 283 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData_ctr' AS textbox WITH ; + ControlSource = "goContract.data", ; + FontSize = 10, ; + Height = 21, ; + Left = 452, ; + Name = "txtData_ctr", ; + ReadOnly = .T., ; + TabIndex = 4, ; + Top = 28, ; + Width = 102 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtNumar' AS textbox WITH ; + ControlSource = "goContract.numar", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 241, ; + Name = "txtNumar", ; + ReadOnly = .T., ; + TabIndex = 3, ; + Top = 28, ; + Width = 113 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE blocheaza_campuri + this.cmdDenumire.Enabled = .F. + this.txtNumar.ReadOnly = .T. + this.txtData_ctr.ReadOnly = .T. + + + ENDPROC + + PROCEDURE deblocheaza_campuri + this.cmdDenumire.Enabled = .T. + this.txtNumar.ReadOnly = .F. + this.txtData_ctr.ReadOnly = .F. + ENDPROC + + PROCEDURE cmdDenumire.Click + LOCAL lcIdTipPart, lcTitlu + STORE '' TO lcIdTipPart, lcTitlu + + * loCauta = caut_partener(lcIdTipPart, lcTitlu) + + DO CASE + CASE gnParametru_prog = 1 && contracte clienti + lcIdTipPart = [-1] + lcTitlu = 'Clienti' + lcLista = ['4111'] + lcContul = '4111' + CASE gnParametru_prog = 2 && contracte furnizori + lcIdTipPart = [-2] + lcTitlu = 'Furnizori' + lcLista = ['401','404'] + lcContul = '401' + ENDCASE + + lnIdTipPart = GetContIdTipPart(lcContul) + + + *!* IF !EMPTY(lcLista) + *!* lcSql = [select distinct c.cont as cont_part, c.explicatie as explic_cont, c.id_tip_part as tip ] + ; + *!* [from vcoresp_tip_cont c ] + ; + *!* [where c.cont in (] + lcLista + [) ] + *!* ENDIF + *!* lcCursor = 'xcont' + + *!* lnSucces = goExecutor.oExecute(lcSql,lcCursor) + *!* IF lnSucces < 0 + *!* aMessagebox('Eroare!',0+48, 'Atentie!') + *!* RETURN + *!* ENDIF + + + *!* SELECT xcont + *!* BROWSE + + *!* SELECT xcont + *!* LOCATE FOR VAL(cont_part) = VAL(lcContul) + *!* lcContul = cont_part + *!* lcTip = ALLTRIM(STR(tip)) + + locauta = CautPartenerContabilitate(GetHash([cTitlu=>] + lcTitlu + [??lAdaugCorespondente=>1??cTipuriParteneri=>] + ALLTRIM(STR(lnIdTipPart)))) + + IF buton = 2 + RETURN + ENDIF + + goContract.id_part = loCauta.id_part + goContract.denumire = loCauta.denumire + THIS.PARENT.txtClient.REFRESH + * THISFORM.pageframe1.page1.txtClient.REFRESH + + ENDPROC + + PROCEDURE Command2.Click + Parameters tlNou + && la adaugarea unui contract nou, intra cu butonul de modificare "apasat" + + *!* If Alltrim(goContract.tip_istoric) <> 'C' && pentru istoric Acte aditionale, sa nu mai pot face modificari, doar vizualizari + *!* AMESSAGEBOX('Nu se poate modifica istoricul unui contract!',0+48,'Atentie!') + *!* Return + *!* Endif + Local llNou + llNou = tlNou + + If This.Parent.lLock + If !llNou + AMESSAGEBOX('Toate modificarile au efect imediat! Nu puteti da renuntare!',0+48,'Atentie!') + Endif + + This.Picture = 'unlock.bmp' + This.Parent.lLock = .F. + This.Caption = 'Salveaza' + This.Parent.deblocheaza_campuri() + + ****** + If Type('podg_dg.but_termin1') <> 'U' + podg_dg.deblocheaza_campuri() + Endif + If Type('podg_ob.but_termin1') <> 'U' + podg_ob.deblocheaza_campuri() + Endif + If Type('podg_tf.but_termin1') <> 'U' + podg_tf.deblocheaza_campuri() + Endif + If Type('podg_link.but_termin1') <> 'U' + podg_link.deblocheaza_campuri() + Endif + If Type('podg_fact.but_termin1') <> 'U' + podg_fact.deblocheaza_campuri() + Endif + If Type('podg_tl.but_termin1') <> 'U' + podg_tl.deblocheaza_campuri() + Endif + If Type('podg_obs.but_termin1') <> 'U' + podg_obs.deblocheaza_campuri() + Endif + ****** + Else + If Type('podg_fact.but_termin1') <> 'U' + If (goContract.opt_facturare = 1 Or goContract.opt_facturare = 2) And Empty(Nvl(goContract.id_nota,0)) + AMESSAGEBOX('Alegeti nota contabila !',0+48) + + If Type('podg_dg.but_termin1') <> 'U' + podg_dg.blocheaza_campuri() + Endif + If Type('podg_ob.but_termin1') <> 'U' + podg_ob.blocheaza_campuri() + Endif + If Type('podg_tf.but_termin1') <> 'U' + podg_tf.blocheaza_campuri() + Endif + If Type('podg_link.but_termin1') <> 'U' + podg_link.blocheaza_campuri() + Endif + If Type('podg_fact.but_termin1') <> 'U' + podg_fact.blocheaza_campuri() + Endif + If Type('podg_tl.but_termin1') <> 'U' + podg_tl.blocheaza_campuri() + Endif + If Type('podg_obs.but_termin1') <> 'U' + podg_obs.blocheaza_campuri() + Endif + + Return + Endif + Endif + + + This.Picture = 'lock.bmp' + This.Parent.lLock = .T. + This.Caption = 'Modifica' + This.Parent.blocheaza_campuri() + + If Empty(Nvl(goContract.id_part,0)) + AMESSAGEBOX('Alegeti partenerul!') + + If Type('podg_dg.but_termin1') <> 'U' + podg_dg.blocheaza_campuri() + Endif + If Type('podg_ob.but_termin1') <> 'U' + podg_ob.blocheaza_campuri() + Endif + If Type('podg_tf.but_termin1') <> 'U' + podg_tf.blocheaza_campuri() + Endif + If Type('podg_link.but_termin1') <> 'U' + podg_link.blocheaza_campuri() + Endif + If Type('podg_fact.but_termin1') <> 'U' + podg_fact.blocheaza_campuri() + Endif + If Type('podg_tl.but_termin1') <> 'U' + podg_tl.blocheaza_campuri() + Endif + If Type('podg_obs.but_termin1') <> 'U' + podg_obs.blocheaza_campuri() + Endif + + This.Parent.cmdDenumire.SetFocus() + Return + Endif + + If pnGNnumar<>0 And Upper(Alltrim(Str(pnGNnumar))) <> Upper(Alltrim(goContract.numar)) + poGeneratorNumere.dezaloca_numar(13) + Endif + Do modifica_ctr_dg With goContract In oproceduri_roacontracte.prg + + && sa nu mai faca de fiecare data do_cauta (sa aduca toate contactele de pe server) + Select cContracte + Locate For id_ctr = goContract.id_ctr + If Found() + Gather Name goContract Memo + Endif + + If Type('podg_dg.but_termin1') <> 'U' + podg_dg.blocheaza_campuri() + Endif + If Type('podg_ob.but_termin1') <> 'U' + podg_ob.blocheaza_campuri() + Endif + If Type('podg_tf.but_termin1') <> 'U' + podg_tf.blocheaza_campuri() + Endif + If Type('podg_link.but_termin1') <> 'U' + podg_link.blocheaza_campuri() + Endif + If Type('podg_fact.but_termin1') <> 'U' + podg_fact.blocheaza_campuri() + Endif + If Type('podg_tl.but_termin1') <> 'U' + podg_tl.blocheaza_campuri() + Endif + If Type('podg_obs.but_termin1') <> 'U' + podg_obs.blocheaza_campuri() + Endif + + Endif + + + + + + ENDPROC + + PROCEDURE Command2.Refresh + IF THIS.PARENT.lLock + THIS.PICTURE = 'lock.bmp' + THIS.CAPTION = 'Modifica' + ELSE + THIS.PICTURE = 'unlock.bmp' + THIS.CAPTION = 'Salveaza' + ENDIF + + + + + + ENDPROC + + PROCEDURE Label3.Init + DO CASE + CASE gnParametru_prog = 1 + THIS.CAPTION = 'Client' + CASE gnParametru_prog = 2 + THIS.CAPTION = 'Furnizor' + ENDCASE + + ENDPROC + +ENDDEFINE + +DEFINE CLASS ct_part_nr_data_2 AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdDenumire" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtClient" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtNumar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_actAd" UniqueID="" Timestamp="" /> + + * + *m: blocheaza_campuri + *m: deblocheaza_campuri + *p: llock + * + + * + BackColor = 206,241,255 + Height = 34 + llock = .T. + Name = "ct_part_nr_data_2" + Width = 795 + * + + ADD OBJECT '_shape1' AS _shape WITH ; + Height = 34, ; + Left = 0, ; + Name = "_shape1", ; + SpecialEffect = 0, ; + Top = 0, ; + Width = 795, ; + ZOrderSet = 0 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="shape" /> + + ADD OBJECT 'cmdDenumire' AS commandbutton WITH ; + Caption = "", ; + Height = 22, ; + Left = 371, ; + Name = "cmdDenumire", ; + Picture = ..\grafice\find.bmp, ; + TabIndex = 2, ; + Top = 5, ; + Width = 29 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Partener", ; + FontBold = .T., ; + FontSize = 10, ; + ForeColor = 255,0,0, ; + Height = 18, ; + Left = 7, ; + Name = "Label3", ; + TabIndex = 6, ; + Top = 9, ; + Width = 57 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nr. / Data contract", ; + FontBold = .T., ; + FontSize = 10, ; + ForeColor = 255,0,0, ; + Height = 18, ; + Left = 440, ; + Name = "Label4", ; + TabIndex = 7, ; + Top = 9, ; + Width = 116 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "/", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 18, ; + Left = 674, ; + Name = "Label9", ; + TabIndex = 8, ; + Top = 9, ; + Width = 6 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lb_actAd' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nr. act ad.", ; + FontBold = .T., ; + FontSize = 8, ; + Height = 16, ; + Left = 440, ; + Name = "lb_actAd", ; + TabIndex = 8, ; + Top = 18, ; + Visible = .F., ; + Width = 55 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'txtClient' AS textbox WITH ; + ControlSource = "goContract.denumire", ; + DisabledBackColor = 255,255,255, ; + FontSize = 10, ; + Format = "!k", ; + Height = 21, ; + Left = 80, ; + Name = "txtClient", ; + ReadOnly = .T., ; + TabIndex = 5, ; + Top = 6, ; + Width = 289 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData_ctr' AS textbox WITH ; + ControlSource = "goContract.data", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 686, ; + Name = "txtData_ctr", ; + TabIndex = 4, ; + Top = 6, ; + Width = 102 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtNumar' AS textbox WITH ; + ControlSource = "goContract.numar", ; + FontSize = 10, ; + Format = "k", ; + Height = 21, ; + Left = 554, ; + Name = "txtNumar", ; + TabIndex = 3, ; + Top = 6, ; + Width = 113 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE blocheaza_campuri + this.cmdDenumire.Enabled = .F. + this.txtNumar.ReadOnly = .T. + this.txtData_ctr.ReadOnly = .T. + + + ENDPROC + + PROCEDURE deblocheaza_campuri + this.cmdDenumire.Enabled = .T. + this.txtNumar.ReadOnly = .F. + this.txtData_ctr.ReadOnly = .F. + ENDPROC + + PROCEDURE cmdDenumire.Click + LOCAL lcIdTipPart, lcTitlu + STORE '' TO lcIdTipPart, lcTitlu + + * loCauta = caut_partener(lcIdTipPart, lcTitlu) + + DO CASE + CASE gnParametru_prog = 1 && contracte clienti + lcIdTipPart = [-1] + lcTitlu = 'Clienti' + lcLista = ['4111'] + lcContul = '4111' + CASE gnParametru_prog = 2 && contracte furnizori + lcIdTipPart = [-2] + lcTitlu = 'Furnizori' + lcLista = ['401','404'] + lcContul = '401' + ENDCASE + + lnIdTipPart = GetContIdTipPart(lcContul) + + + *!* IF !EMPTY(lcLista) + *!* lcSql = [select distinct c.cont as cont_part, c.explicatie as explic_cont, c.id_tip_part as tip ] + ; + *!* [from vcoresp_tip_cont c ] + ; + *!* [where c.cont in (] + lcLista + [) ] + *!* ENDIF + *!* lcCursor = 'xcont' + + *!* lnSucces = goExecutor.oExecute(lcSql,lcCursor) + *!* IF lnSucces < 0 + *!* aMessagebox('Eroare!',0+48, 'Atentie!') + *!* RETURN + *!* ENDIF + + + *!* SELECT xcont + *!* BROWSE + + *!* SELECT xcont + *!* LOCATE FOR VAL(cont_part) = VAL(lcContul) + *!* lcContul = cont_part + *!* lcTip = ALLTRIM(STR(tip)) + + locauta = CautPartenerContabilitate(GetHash([cTitlu=>] + lcTitlu + [??lAdaugCorespondente=>1??cTipuriParteneri=>] + ALLTRIM(STR(lnIdTipPart)))) + + IF buton = 2 + RETURN + ENDIF + + goContract.id_part = loCauta.id_part + goContract.denumire = loCauta.denumire + THIS.PARENT.txtClient.REFRESH + * THISFORM.pageframe1.page1.txtClient.REFRESH + + ENDPROC + + PROCEDURE Label3.Init + DO CASE + CASE gnParametru_prog = 1 + THIS.CAPTION = 'Client' + CASE gnParametru_prog = 2 + THIS.CAPTION = 'Furnizor' + ENDCASE + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_actaditional AS _cusodatabase OF "..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Name = "cus_odata_actaditional" + * + + PROCEDURE make_sql + LPARAMETERS toRec,tnId + + lcActiune = ALLTRIM(THIS.cActiune) + lcId_util = ALLTRIM(STR(gnidutil)) + + IF INLIST(lcActiune, "UPDATE",'INSERT') AND TYPE('toRec') != "O" + RETURN .F. + ENDIF + + IF INLIST(lcActiune, "UPDATE",'DELETE') AND TYPE('tnId') != "N" + RETURN .F. + ENDIF + + IF INLIST(lcActiune, "UPDATE",'DELETE') + lcId = ALLTRIM(STR(tnId)) + ENDIF + + IF INLIST(lcActiune, "UPDATE",'INSERT') + lcId_ctr = NVL(ALLTRIM(STR(goContract.id_ctr)),"0") + lcId_part = NVL(ALLTRIM(STR(goContract.id_part)),"0") + lcId_tip_ctr = NVL(ALLTRIM(STR(goContract.id_tip_ctr)),"0") + lcNumar = NVL(ALLTRIM(toRec.numar),"0") + lcData = ALLTRIM(DTOS(toRec.data)) + lcDescriere = NVL(ALLTRIM(toRec.descriere),"") + ENDIF + + Do Case + Case lcActiune = "INSERT" + lcSql = [begin pack_crm.adauga_act_aditional(]+lcId_ctr+ [,]+lcId_part+ [,] + lcId_tip_ctr+[,']+ lcNumar+[',]+; + [to_date(']+lcData+[','YYYYMMDD'),']+lcDescriere+ [',]+lcId_util+[); end;] + + Case lcActiune = "UPDATE" + lcSql = [begin pack_def.modifica_contract(]+lcId+[,']+lcNumar+[',]+; + [to_date(']+lcData+[','YYYYMMDD'),]+lcId_tip_ctr + [,]+lcInactiv+[,]+lcId_util+[); end;] + + Case lcActiune = "DELETE" + lcSql = [begin pack_def.sterge_contract(]+lcId+[,]+lcId_util+[); end;] + ENDCASE + + this.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_selectie AS _cusodatabase OF "..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Name = "cus_odata_selectie" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + lcId_util = Alltrim(Str(gnIdUtil)) + + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + Endif + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcSelectie = Strtran(Alltrim(toRec.selectie),['],['']) + ENDIF + + + Do Case + Case lcActiune = "INSERT" + lcSql = [begin PACK_CTR_FURNIZORI.adauga_selectie('] + lcSelectie + [',]+lcId_util+[); end;] + + Case lcActiune = "UPDATE" + lcSql = [begin PACK_CTR_FURNIZORI.modifica_selectie(]+lcId +[,']+lcSelectie+ [',]+ lcId_util+[); end;] + + Case lcActiune = "DELETE" + * lcSql = [begin pack_nomenclatoare.sterge_tip_ctr(]+lcId+[,]+lcId_util+[); end;] + lcSql = [begin PACK_CTR_FURNIZORI.sterge_selectie(]+lcId+ [,]+ lcId_util+[); end;] + + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_actaditional_nou AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Clb_data" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_numar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_descriere" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="BUT_RENUNT1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_actaditional1" UniqueID="" Timestamp="" /> + + * + *p: nid + *p: orec + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 143 + Name = "frm_actaditional_nou" + nid = .F. + orec = .NULL. + Width = 353 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 293 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 61 + Lb_titlu_alb_b121.Caption = "ACT ADIÞIONAL" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 6 + BUT_TERMIN1.Left = 324 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 4 + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 96 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 8 + * + + ADD OBJECT 'BUT_RENUNT1' AS but_renunt WITH ; + Left = 295, ; + Name = "BUT_RENUNT1", ; + TabIndex = 5, ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_data' AS clb_tx_simplu WITH ; + Height = 29, ; + Left = 7, ; + Name = "Clb_data", ; + TabIndex = 2, ; + Top = 68, ; + Width = 314, ; + ZOrderSet = 7, ; + TEXT_SIMPLU1.ControlSource = "poRec.data", ; + TEXT_SIMPLU1.Format = "!K", ; + TEXT_SIMPLU1.Left = 114, ; + TEXT_SIMPLU1.Name = "TEXT_SIMPLU1", ; + Lb_simplu1.Caption = "Data", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_descriere' AS clb_tx_simplu WITH ; + Height = 29, ; + Left = 7, ; + Name = "Clb_descriere", ; + TabIndex = 3, ; + Top = 105, ; + Width = 314, ; + ZOrderSet = 7, ; + Text_simplu1.ControlSource = "poRec.descriere", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Left = 114, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Descriere", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_numar' AS clb_tx_simplu WITH ; + Height = 29, ; + Left = 7, ; + Name = "Clb_numar", ; + TabIndex = 1, ; + Top = 40, ; + Width = 314, ; + ZOrderSet = 7, ; + Text_simplu1.ControlSource = "poRec.numar", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Left = 114, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Numãr", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_actaditional1' AS cus_odata_actaditional WITH ; + Left = 180, ; + Name = "Cus_odata_actaditional1", ; + Top = 8 + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + Local plReturn + lccontrol = Upper(This.ActiveControl.BaseClass ) + If Inlist(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.ActiveControl.ControlSource + &lcval=Thisform.ActiveControl.Value + Endif + + Do Case + Case Empty(porec.numar) + amessagebox('Nu ati completat numarul actului aditional!',0+48,"Atentie") + this.clb_numar.texT_SIMPLU1.SetFocus() + plReturn=.F. + Case Empty(porec.data) + amessagebox('Nu ati completat data actului aditional!',0+48,"Atentie") + this.clb_data.texT_SIMPLU1.SetFocus() + plReturn=.F. + Case Empty(porec.descriere) + amessagebox('Nu ati completat desrierea actului aditional!',0+48,"Atentie") + this.clb_descriere.texT_SIMPLU1.SetFocus() + plReturn=.F. + Otherwise + plReturn=This.cus_odata_actaditional1.salvare(This.OREC,This.NID) + endcase + + Return plReturn + + ENDPROC + + PROCEDURE Init + LPARAMETERS toRec, tnId, tcActiune + DODEFAULT() + THIS.orec = toRec + THIS.nid = tnId + this.cus_odata_actaditional1.cactiune = tcActiune + + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_alerte AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Ck_data_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cDenumire.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cDenumire.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cNumar.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cNumar.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cData.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cData.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cValidat.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cValidat.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cNr_alerta.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cNr_alerta.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cInstiintat.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cInstiintat.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cInstiintat.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cDescriere.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_alerte.cDescriere.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="opt_validat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="opt_Instiintat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_excel1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nume" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nr_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nr_alerta" UniqueID="" Timestamp="" /> + + * + cgridsortlist = grid_alerte + DoCreate = .T. + Height = 573 + Name = "frm_alerte" + Width = 708 + _SHAPE1.Anchor = 11 + _SHAPE1.Height = 29 + _SHAPE1.Left = 0 + _SHAPE1.Name = "_SHAPE1" + _SHAPE1.Top = 0 + _SHAPE1.Width = 948 + _SHAPE2.Anchor = 9 + _SHAPE2.Height = 29 + _SHAPE2.Left = 613 + _SHAPE2.Name = "_SHAPE2" + _SHAPE2.Top = 0 + _SHAPE2.Width = 92 + LB_TITLU_ALB_B121.Caption = "Alerte garanþii" + LB_TITLU_ALB_B121.Left = 6 + LB_TITLU_ALB_B121.Name = "LB_TITLU_ALB_B121" + LB_TITLU_ALB_B121.TabIndex = 12 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 677 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 11 + BUT_TERMIN1.Top = 1 + GRIDSORT1.Left = 192 + GRIDSORT1.Name = "GRIDSORT1" + GRIDSORT1.Top = 6 + * + + ADD OBJECT 'But_excel1' AS but_excel WITH ; + Anchor = 9, ; + Left = 645, ; + Name = "But_excel1", ; + TabIndex = 10, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + caction = do_listare, ; + Left = 614, ; + Name = "But_listare1", ; + TabIndex = 9, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Ck_data_ctr' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = data, ; + Caption = "Data ctr.", ; + FontName = "Arial Narrow", ; + Left = 72, ; + Name = "Ck_data_ctr", ; + TabIndex = 2, ; + tip = D, ; + Top = 34, ; + ZOrderSet = 4 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nr_alerta' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = nr_alerta, ; + Caption = "Nr. alertã", ; + FontName = "Arial Narrow", ; + Left = 72, ; + mask = 9, ; + Name = "Ck_nr_alerta", ; + TabIndex = 4, ; + Top = 53 + *< END OBJECT: ClassLib="..\..\roacont\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nr_ctr' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = numar, ; + Caption = "Nr. ctr.", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_nr_ctr", ; + TabIndex = 1, ; + Top = 34, ; + ZOrderSet = 15 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nume' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = denumire, ; + Caption = "Partener", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_nume", ; + TabIndex = 3, ; + Top = 53, ; + ZOrderSet = 14 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 547, ; + Name = "Cmd_cauta1", ; + TabIndex = 7, ; + Top = 42, ; + Width = 67, ; + ZOrderSet = 21 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 619, ; + Name = "Cmd_reset1", ; + TabIndex = 17, ; + Top = 42, ; + Width = 67, ; + ZOrderSet = 18 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_alerte' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 7, ; + DeleteMark = .F., ; + GridLines = 0, ; + HeaderHeight = 38, ; + Height = 429, ; + Left = 6, ; + Name = "grid_alerte", ; + Panel = 1, ; + RecordMark = .F., ; + RecordSource = "cAlerte", ; + ScrollBars = 2, ; + TabIndex = 8, ; + Top = 90, ; + Width = 695, ; + Column1.ColumnOrder = 1, ; + Column1.ControlSource = "denumire", ; + Column1.Name = "cDenumire", ; + Column1.Width = 157, ; + Column2.ColumnOrder = 2, ; + Column2.ControlSource = "numar", ; + Column2.Name = "cNumar", ; + Column2.Width = 33, ; + Column3.ColumnOrder = 3, ; + Column3.ControlSource = "ttod(data)", ; + Column3.Name = "cData", ; + Column3.Width = 70, ; + Column4.ColumnOrder = 6, ; + Column4.ControlSource = "validat", ; + Column4.Name = "cValidat", ; + Column4.Sparse = .F., ; + Column4.Width = 41, ; + Column5.ColumnOrder = 7, ; + Column5.ControlSource = "nr_alerta", ; + Column5.Name = "cNr_alerta", ; + Column5.Width = 33, ; + Column6.ColumnOrder = 5, ; + Column6.ControlSource = "Instiintat", ; + Column6.CurrentControl = "Check1", ; + Column6.FontName = "Arial", ; + Column6.Name = "cInstiintat", ; + Column6.Sparse = .F., ; + Column6.Width = 35, ; + Column7.ColumnOrder = 4, ; + Column7.ControlSource = "descriere", ; + Column7.Name = "cDescriere", ; + Column7.Width = 298 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_alerte.cData.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data contr.", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_alerte.cData.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_alerte.cDenumire.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Partener", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_alerte.cDenumire.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_alerte.cDescriere.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Descriere alerta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_alerte.cDescriere.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_alerte.cInstiintat.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + FontName = "Arial", ; + Height = 17, ; + Left = 21, ; + Name = "Check1", ; + Top = 89, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_alerte.cInstiintat.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Insti- intat", ; + FontName = "Arial Narrow", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_alerte.cInstiintat.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_alerte.cNr_alerta.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr alerta", ; + FontName = "Arial Narrow", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_alerte.cNr_alerta.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_alerte.cNumar.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. contr.", ; + FontName = "Arial Narrow", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_alerte.cNumar.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_alerte.cValidat.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + FontName = "Arial", ; + Height = 17, ; + Left = 33, ; + Name = "Check1", ; + Top = 59, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grid_alerte.cValidat.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Validat", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'Label1' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nr. alertã:", ; + FontCharSet = 238, ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 6, ; + Name = "Label1", ; + TabIndex = 13, ; + Top = 519, ; + Width = 44 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "1 - depãºire termen contractual", ; + FontCharSet = 238, ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 50, ; + Name = "Label2", ; + TabIndex = 14, ; + Top = 519, ; + Width = 129 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "2 - restituire procent parþial din garanþia reþinutã la facturã (dupã nr. zile de la PVR)", ; + FontCharSet = 238, ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 50, ; + Name = "Label3", ; + TabIndex = 15, ; + Top = 531, ; + Width = 339 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "3 - restituirea restului de garanþie de pe toate facturile emise conform contractului (dupã perioada de garanþie)", ; + FontCharSet = 238, ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 50, ; + Name = "Label4", ; + TabIndex = 16, ; + Top = 543, ; + Width = 445 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "4 - apropiere ultima ratã definitã", ; + FontCharSet = 238, ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 50, ; + Name = "Label5", ; + TabIndex = 18, ; + Top = 555, ; + Width = 130 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'opt_Instiintat' AS optiongroup WITH ; + AutoSize = .F., ; + BackStyle = 0, ; + ButtonCount = 3, ; + Height = 51, ; + Left = 271, ; + Name = "opt_Instiintat", ; + TabIndex = 6, ; + Top = 34, ; + Value = 1, ; + Width = 97, ; + Option1.AutoSize = .T., ; + Option1.BackStyle = 0, ; + Option1.Caption = "Alerte neînºtiinþate", ; + Option1.FontCharSet = 238, ; + Option1.FontName = "Arial Narrow", ; + Option1.Height = 18, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 1, ; + Option1.Value = 1, ; + Option1.Width = 92, ; + Option2.AutoSize = .T., ; + Option2.BackStyle = 0, ; + Option2.Caption = "Alerte înºtiinþate", ; + Option2.FontCharSet = 238, ; + Option2.FontName = "Arial Narrow", ; + Option2.Height = 18, ; + Option2.Left = 5, ; + Option2.Name = "Option2", ; + Option2.Top = 16, ; + Option2.Width = 82, ; + Option3.AutoSize = .T., ; + Option3.BackStyle = 0, ; + Option3.Caption = "Toate alertele", ; + Option3.FontName = "Arial Narrow", ; + Option3.Height = 18, ; + Option3.Left = 5, ; + Option3.Name = "Option3", ; + Option3.Top = 32, ; + Option3.Width = 72 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'opt_validat' AS optiongroup WITH ; + AutoSize = .F., ; + BackStyle = 0, ; + ButtonCount = 3, ; + Height = 51, ; + Left = 168, ; + Name = "opt_validat", ; + TabIndex = 5, ; + Top = 36, ; + Value = 1, ; + Width = 97, ; + Option1.AutoSize = .T., ; + Option1.BackStyle = 0, ; + Option1.Caption = "Alerte nevalidate", ; + Option1.FontName = "Arial Narrow", ; + Option1.Height = 18, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 1, ; + Option1.Value = 1, ; + Option1.Width = 87, ; + Option2.AutoSize = .T., ; + Option2.BackStyle = 0, ; + Option2.Caption = "Alerte validate", ; + Option2.FontName = "Arial Narrow", ; + Option2.Height = 18, ; + Option2.Left = 5, ; + Option2.Name = "Option2", ; + Option2.Top = 16, ; + Option2.Width = 77, ; + Option3.AutoSize = .T., ; + Option3.BackStyle = 0, ; + Option3.Caption = "Toate alertele", ; + Option3.FontName = "Arial Narrow", ; + Option3.Height = 18, ; + Option3.Left = 5, ; + Option3.Name = "Option3", ; + Option3.Top = 32, ; + Option3.Width = 72 + *< END OBJECT: BaseClass="optiongroup" /> + + PROCEDURE actualizeaza_grid1 + Lparameters pcFiltru + + Local lcFiltru + lcFiltru = pcFiltru + If Empty(lcFiltru) + lcFiltru = poAlerte.ca_baza1.cfiltru + Endif + + save_grid_tag(This.grid_alerte) + poAlerte.ca_baza1.cfiltru = lcFiltru + poAlerte.ca_baza1.afisare() + + restore_grid_tag(This.grid_alerte) + If Reccount('cAlerte')>0 + Select cAlerte + Go Top + This.grid_alerte.SetFocus() + Endif + + + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru = "" + + If This.ck_nume.Value = 1 + lcFiltru = lcFiltru + This.ck_nume.filtru + Endif + + If This.ck_nr_ctr.Value = 1 + lcFiltru = lcFiltru + This.ck_nr_ctr.filtru + Endif + + If This.ck_data_ctr.Value = 1 + lcFiltru = lcFiltru + This.ck_data_ctr.filtru + Endif + + If This.ck_nr_alerta.Value = 1 + lcFiltru = lcFiltru + This.ck_nr_alerta.filtru + ENDIF + + Do Case + Case This.opt_validat.Value = 1 + lcFiltru = lcFiltru + [ and validat = 0] + Case This.opt_validat.Value = 2 + lcFiltru = lcFiltru + [ and validat = 1] + ENDCASE + + Do Case + Case This.opt_Instiintat.Value = 1 + lcFiltru = lcFiltru + [ and instiintat = 0] + Case This.opt_Instiintat.Value = 2 + lcFiltru = lcFiltru + [ and instiintat = 1] + Endcase + + + If !Empty(lcFiltru) + lcFiltru = Substr(lcFiltru,6) + Else + lcFiltru = [1=1] + Endif + + This.actualizeaza_grid1(lcFiltru) + If Reccount('cAlerte')=0 + aMessagebox("Cautarea nu a intors rezultate!",0+48,"Info cautare") + Endif + this.grid_alerte.SetFocus() + + ENDPROC + + PROCEDURE do_listare + thisform.AlwaysOnTop=.f. + pcdataora = get_Ora(2) + + SELECT cAlerte + REPORT FORM ralerte TO PRINTER PROMPT PREVIEW + thisform.AlwaysOnTop=.t. + ENDPROC + + PROCEDURE do_reset + With This + For i=1 To .Objects.Count + If Upper(.Objects(i).BaseClass)='CHECKBOX' + .Objects(i).Value=0 + Endif + Endfor + ENDWITH + + this.opt_validat.Value = 1 + this.opt_Instiintat.Value = 1 + this.ck_nr_ctr.SetFocus() + ENDPROC + + PROCEDURE inainte_de_do_excel + DO export_excel_grid WITH this.grid_alerte + + ENDPROC + + PROCEDURE grid_alerte.cInstiintat.Check1.Valid + Private pnId_ctr, pnNr_alerta + Store 0 To pnId_ctr, pnNr_alerta + + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + pnId= id + + lcSql = [update ctr_log_alerte set instiintat = 1,ID_UTIL_INST = ?gnIdUtil,dataora_inst = sysdate where id=?pnId;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + *!* Else + *!* AMESSAGEBOX('Nu se poate modifica starea unei alerte validate deja!') + *!* Endif + + ENDPROC + + PROCEDURE grid_alerte.cInstiintat.Check1.When + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + If instiintat = 1 + Return .F. + Endif + + ENDPROC + + PROCEDURE grid_alerte.cValidat.Check1.LostFocus + thisform.grid_alerte.Refresh + ENDPROC + + PROCEDURE grid_alerte.cValidat.Check1.Valid + Private pnId_ctr, pnNr_alerta + Store 0 To pnId_ctr, pnNr_alerta + *!* If instiintat <> 1 + *!* Messagebox('Pentru a valida o alerta, aceasta trebuie sa fie instiintata',0+16,'Atentie') + *!* Replace Validat With 0 + *!* Return + *!* Endif + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + pnId_ctr = id_ctr + pnNr_alerta = nr_alerta + + lcSql = [begin pack_crm.valideaza_alerta(?pnId_ctr, ?pnNr_alerta, ?gnIdUtil); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + thisform.grid_alerte.Refresh + *!* Else + *!* AMESSAGEBOX('Nu se poate modifica starea unei alerte validate deja!') + *!* Endif + + ENDPROC + + PROCEDURE grid_alerte.cValidat.Check1.When + Local lcTabel + lcTabel = This.Parent.Parent.RecordSource + + Select (lcTabel) + If Validat = 1 + Return .F. + ENDIF + If instiintat <> 1 + aMessagebox('Pentru a valida o alerta, aceasta trebuie sa fie instiintata!',48,'Atentie') + RETURN .F. + ENDIF + + + ENDPROC + + PROCEDURE Label5.Init + IF gnParametru_prog=1 + this.Visible= .T. + ELSE + this.Visible= .F. + ENDIF + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_atas_fact_curs AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValvaluta" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtCurs" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdValuta" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label17" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValuta" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValvalutactva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtProc_tva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + + * + BorderStyle = 1 + DoCreate = .T. + Height = 146 + Name = "frm_atas_fact_curs" + Width = 344 + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 324 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 281 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 60 + Lb_titlu_alb_b121.Caption = "Date suplimentare" + Lb_titlu_alb_b121.Left = 10 + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 8 + Lb_titlu_alb_b121.Top = 6 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 313 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 6 + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 180 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 6 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Anchor = 9, ; + Left = 283, ; + Name = "But_renunt1", ; + TabIndex = 7, ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'cmdValuta' AS commandbutton WITH ; + Caption = "", ; + FontName = "Arial Narrow", ; + Height = 25, ; + Left = 258, ; + Name = "cmdValuta", ; + Picture = ..\grafice\find.bmp, ; + TabIndex = 5, ; + Top = 114, ; + Width = 28 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare valutã (fãrã TVA)", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 10, ; + Name = "Label1", ; + TabIndex = 12, ; + Top = 91, ; + Width = 135 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label17' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valuta", ; + Height = 17, ; + Left = 10, ; + Name = "Label17", ; + TabIndex = 15, ; + Top = 117, ; + Width = 36 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Curs", ; + Height = 17, ; + Left = 10, ; + Name = "Label2", ; + TabIndex = 13, ; + Top = 39, ; + Width = 29 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare valutã (cu TVA)", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 10, ; + Name = "Label3", ; + TabIndex = 11, ; + Top = 65, ; + Width = 127 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .F., ; + BackStyle = 0, ; + Caption = "Proc TVA", ; + FontName = "Arial Narrow", ; + Height = 35, ; + Left = 262, ; + Name = "Label4", ; + TabIndex = 9, ; + Top = 56, ; + Width = 20, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + Height = 17, ; + Left = 325, ; + Name = "Label5", ; + TabIndex = 10, ; + Top = 65, ; + Width = 13 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'txtCurs' AS textbox WITH ; + ControlSource = "pnFA_curs", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(10,gnPCurs)), ; + Left = 155, ; + Name = "txtCurs", ; + TabIndex = 1, ; + Top = 36, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtProc_tva' AS textbox WITH ; + ControlSource = "pnFA_procTva", ; + Format = "rk", ; + Height = 23, ; + InputMask = "99", ; + Left = 286, ; + Name = "txtProc_tva", ; + TabIndex = 3, ; + Top = 62, ; + Width = 39 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValuta' AS textbox WITH ; + ControlSource = "pcFA_nume_val", ; + Height = 23, ; + Left = 155, ; + Name = "txtValuta", ; + ReadOnly = .T., ; + TabIndex = 14, ; + Top = 114, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValvaluta' AS textbox WITH ; + ControlSource = "pnFA_valvaluta", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(10,gnPc)), ; + Left = 155, ; + Name = "txtValvaluta", ; + TabIndex = 4, ; + Top = 88, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValvalutactva' AS textbox WITH ; + ControlSource = "pnFA_valvalutacTVA", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(10,gnPc)), ; + Left = 155, ; + Name = "txtValvalutactva", ; + TabIndex = 2, ; + Top = 62, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE cmdValuta.Click + locauta = caut_valuta() + If buton=2 + Return + Endif + + pnFA_id_valuta = locauta.id_valuta + pcFA_nume_val = locauta.nume_val + *!* modificare v 2.0.46 + With Thisform.txtVALVALUTA + .InputMask = get_mask(10,Iif(locauta.moneda_nationala=1,gnPc,gnPVal)) + .Refresh() + Endwith + With Thisform.txtValvalutactva + .InputMask = get_mask(10,Iif(locauta.moneda_nationala=1,gnPc,gnPVal)) + .Refresh() + Endwith + *!* modificare v 2.0.46 ^ + Thisform.txtValuta.Refresh + + ENDPROC + + PROCEDURE txtProc_tva.LostFocus + pnFa_valvaluta = pnFa_valvalutactva / (1 + pnFA_procTva/100) + thisform.txtValvaluta.Refresh + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_atas_fact_iregpart AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_Fact_iregPart" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column6.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column6.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column7.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column7.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column8.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_Fact_iregPart.Column8.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nr_fact" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_data_fact" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command2" UniqueID="" Timestamp="" /> + + * + cgridsortlist = grid_Fact_iregPart + DoCreate = .T. + Height = 480 + Name = "frm_atas_fact_iregpart" + Width = 757 + _SHAPE1.Anchor = 11 + _SHAPE1.Height = 29 + _SHAPE1.Left = 0 + _SHAPE1.Name = "_SHAPE1" + _SHAPE1.Top = 0 + _SHAPE1.Width = 765 + _SHAPE2.Anchor = 9 + _SHAPE2.Height = 29 + _SHAPE2.Left = 695 + _SHAPE2.Name = "_SHAPE2" + _SHAPE2.Top = 0 + _SHAPE2.Width = 61 + LB_TITLU_ALB_B121.Caption = "Facturi partener" + LB_TITLU_ALB_B121.Left = 6 + LB_TITLU_ALB_B121.Name = "LB_TITLU_ALB_B121" + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 727 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 168 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 9 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Anchor = 9, ; + Left = 696, ; + Name = "But_renunt1", ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Ck_data_fact' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = dataact, ; + Caption = "Data fact.", ; + FontName = "Arial Narrow", ; + Left = 63, ; + Name = "Ck_data_fact", ; + TabIndex = 1, ; + tip = D, ; + Top = 36, ; + ZOrderSet = 8 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nr_fact' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = nract, ; + Caption = "Nr. fact.", ; + FontName = "Arial Narrow", ; + Left = 6, ; + mask = (replicate('9',12)), ; + Name = "Ck_nr_fact", ; + TabIndex = 4, ; + Top = 36, ; + ZOrderSet = 7 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 432, ; + Name = "Cmd_cauta1", ; + TabIndex = 34, ; + Top = 33, ; + ZOrderSet = 9 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 522, ; + Name = "Cmd_reset1", ; + TabIndex = 45, ; + Top = 33, ; + ZOrderSet = 10 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + AutoSize = .T., ; + Caption = "Ataºeazã factura la contract", ; + FontCharSet = 238, ; + Height = 27, ; + Left = 357, ; + Name = "Command1", ; + Top = 444, ; + Width = 167 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Command2' AS commandbutton WITH ; + AutoSize = .T., ; + Caption = "Detaºeazã factura de pe contract", ; + FontCharSet = 238, ; + Height = 27, ; + Left = 545, ; + Name = "Command2", ; + Top = 444, ; + Width = 197 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'grid_Fact_iregPart' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 8, ; + DeleteMark = .F., ; + HeaderHeight = 38, ; + Height = 363, ; + HighlightStyle = 2, ; + Left = 6, ; + Name = "grid_Fact_iregPart", ; + Panel = 1, ; + RecordSource = "cFact_neatas", ; + Top = 68, ; + Width = 743, ; + Column1.ControlSource = "fdoc", ; + Column1.Name = "Column1", ; + Column2.ControlSource = "nract", ; + Column2.Name = "Column2", ; + Column3.ControlSource = "ttod(dataact)", ; + Column3.Name = "Column3", ; + Column4.ControlSource = "suma", ; + Column4.Format = "rk", ; + Column4.InputMask = (get_mask(14,gnPc)), ; + Column4.Name = "Column4", ; + Column4.Width = 113, ; + Column5.ControlSource = "explicatia", ; + Column5.Name = "Column5", ; + Column5.Width = 122, ; + Column6.ControlSource = "id_fact", ; + Column6.Name = "Column6", ; + Column7.ControlSource = "cod", ; + Column7.Name = "Column7", ; + Column8.ControlSource = "contract", ; + Column8.Name = "Column8", ; + Column8.Width = 94 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_Fact_iregPart.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Fel doc", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr doc", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data doc", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Suma lei cu TVA", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatia", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column6.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "ID fact", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column6.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column7.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cod", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column7.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_Fact_iregPart.Column8.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Contract", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_Fact_iregPart.Column8.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru = pcFiltru + IF EMPTY(lcFiltru) + lcFiltru = poFactGaran.ca_baza1.cfiltru + ENDIF + + save_grid_tag(thisform.grid_Fact_iregPart) + + poFactGaran.ca_baza1.cfiltru = lcFiltru + poFactGaran.ca_baza1.afisare() + restore_grid_tag(thisform.grid_Fact_iregPart) + IF RECCOUNT('cFact_neatas')>0 + thisform.grid_Fact_iregPart.SetFocus() + ENDIF + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru = "" + + If This.ck_nr_fact.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_nr_fact.filtru + Endif + If This.ck_data_fact.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_data_fact.filtru + Endif + + lcFiltru = [ and id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + lcFiltru + + lcFiltru = Substr(lcFiltru,6) + + Thisform.actualizeaza_grid1(lcFiltru) + Thisform.grid_Fact_iregPart.SetFocus() + + ENDPROC + + PROCEDURE do_reset + With This + For i=1 To .Objects.Count + If Upper(.Objects(i).BaseClass)='CHECKBOX' + .Objects(i).Value=0 + Endif + Endfor + ENDWITH + ENDPROC + + PROCEDURE Command1.Click + LOCAL lnId_fact, lnCod + STORE 0 TO lnId_fact, lnCod + SELECT cFact_neatas + lnId_fact = id_fact + lnCod = cod + + lcSql=[update act set id_ctr=]+ALLTRIM(STR(goContract.id_ctr))+; + [where id_fact=]+Alltrim(Str(lnId_fact))+[ and cod = ]+ALLTRIM(STR(lnCod)) + lnSucces=goExecutor.oExecute(lcSql) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + ENDIF + + lcSql=[update ireg_parteneri set id_ctr=]+ALLTRIM(STR(goContract.id_ctr))+; + [where id_fact=]+Alltrim(Str(lnId_fact))+[ and cod = ]+ALLTRIM(STR(lnCod)) + lnSucces=goExecutor.oExecute(lcSql) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + ENDIF + + thisform.do_cauta() + + + + ENDPROC + + PROCEDURE Command2.Click + LOCAL lnId_fact, lnCod + STORE 0 TO lnId_fact, lnCod + SELECT cFact_neatas + lnId_fact = id_fact + lnCod = cod + + lcSql=[update act set id_ctr = NULL ]+; + [where id_fact=]+Alltrim(Str(lnId_fact))+[ and cod = ]+ALLTRIM(STR(lnCod)) + lnSucces=goExecutor.oExecute(lcSql) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + ENDIF + + lcSql=[update ireg_parteneri set id_ctr = NULL ]+; + [where id_fact=]+Alltrim(Str(lnId_fact))+[ and cod = ]+ALLTRIM(STR(lnCod)) + lnSucces=goExecutor.oExecute(lcSql) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + ENDIF + + thisform.do_cauta() + + + + ENDPROC + + PROCEDURE grid_Fact_iregPart.Init + this.SetAll("DynamicBackColor","IIF(atasata=1, RGB(206,255,255), RGB(255,255,255))", "Column") + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_atasare_facturi AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_fact_atas" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column6.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column6.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column7.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column7.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column8.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column8.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column9.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column9.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column10.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_fact_atas.Column10.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNr_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNr_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cData_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cValrata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cDen_rata.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cDen_rata.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNume_val.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_scadentar.cNume_val.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtSumaRate" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtSumaFacturi" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="optFactAtas" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ct_part_nr_data1" UniqueID="" Timestamp="" /> + + * + *m: afisactual + *p: nsumafact + *p: nsumarate + * + + * + BorderStyle = 1 + cgridsortlist = grid_scadentar;grid_fact_atas + DoCreate = .T. + Height = 514 + Name = "frm_atasare_facturi" + nsumafact = 0 + nsumarate = 0 + Width = 795 + _SHAPE1.Anchor = 11 + _SHAPE1.Height = 29 + _SHAPE1.Left = 0 + _SHAPE1.Name = "_SHAPE1" + _SHAPE1.Top = 0 + _SHAPE1.Width = 792 + _SHAPE2.Anchor = 9 + _SHAPE2.Height = 29 + _SHAPE2.Left = 727 + _SHAPE2.Name = "_SHAPE2" + _SHAPE2.Top = 0 + _SHAPE2.Width = 70 + LB_TITLU_ALB_B121.Caption = "Facturi asociate la scadentar" + LB_TITLU_ALB_B121.Left = 12 + LB_TITLU_ALB_B121.Name = "LB_TITLU_ALB_B121" + LB_TITLU_ALB_B121.Top = 6 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 763 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 204 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 5 + * + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 732, ; + Name = "But_listare1", ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + Left = 746, ; + Name = "But_sterge1", ; + Top = 118, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Anchor = 3, ; + AutoSize = .T., ; + Caption = "Ataºare facturi", ; + FontCharSet = 238, ; + Height = 27, ; + Left = 258, ; + Name = "Command1", ; + Top = 118, ; + Width = 84, ; + WordWrap = .T. + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Ct_part_nr_data1' AS ct_part_nr_data WITH ; + BorderColor = 255,255,255, ; + Height = 70, ; + Left = 3, ; + Name = "Ct_part_nr_data1", ; + Top = 36, ; + Width = 600, ; + CMDDENUMIRE.Name = "CMDDENUMIRE", ; + CMDDENUMIRE.Visible = .F., ; + CMDDENUMIRE.ZOrderSet = 2, ; + LABEL3.Left = 16, ; + LABEL3.Name = "LABEL3", ; + LABEL3.Top = 13, ; + LABEL3.ZOrderSet = 3, ; + TXTCLIENT.Left = 87, ; + TXTCLIENT.Name = "TXTCLIENT", ; + TXTCLIENT.Top = 10, ; + TXTCLIENT.ZOrderSet = 4, ; + LABEL4.Left = 16, ; + LABEL4.Name = "LABEL4", ; + LABEL4.Top = 41, ; + LABEL4.ZOrderSet = 5, ; + TXTNUMAR.Left = 87, ; + TXTNUMAR.Name = "TXTNUMAR", ; + TXTNUMAR.Top = 38, ; + TXTNUMAR.ZOrderSet = 6, ; + LABEL9.Left = 209, ; + LABEL9.Name = "LABEL9", ; + LABEL9.Top = 40, ; + LABEL9.ZOrderSet = 7, ; + TXTDATA_CTR.Left = 288, ; + TXTDATA_CTR.Name = "TXTDATA_CTR", ; + TXTDATA_CTR.Top = 37, ; + TXTDATA_CTR.ZOrderSet = 8, ; + COMMAND2.Name = "COMMAND2", ; + COMMAND2.Visible = .F., ; + COMMAND2.ZOrderSet = 0, ; + lb_actAd.Name = "lb_actAd" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT 'grid_fact_atas' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 10, ; + DeleteMark = .F., ; + GridLineColor = 192,192,192, ; + HeaderHeight = 38, ; + Height = 323, ; + Left = 363, ; + Name = "grid_fact_atas", ; + Panel = 1, ; + RecordSource = "cFactAtas", ; + Top = 154, ; + Width = 423, ; + Column1.ColumnOrder = 1, ; + Column1.ControlSource = "id_fact", ; + Column1.Name = "Column1", ; + Column1.Width = 50, ; + Column2.ColumnOrder = 2, ; + Column2.ControlSource = "valvaluta", ; + Column2.Format = "rk", ; + Column2.InputMask = (get_mask(14,MAX(gnPC,gnPVal))), ; + Column2.Name = "Column2", ; + Column2.Width = 81, ; + Column3.ColumnOrder = 5, ; + Column3.ControlSource = "curs", ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(10,gnPCurs)), ; + Column3.Name = "Column3", ; + Column3.Width = 48, ; + Column4.ColumnOrder = 6, ; + Column4.ControlSource = "nume_val", ; + Column4.Name = "Column4", ; + Column4.Width = 55, ; + Column5.ColumnOrder = 8, ; + Column5.ControlSource = "nract", ; + Column5.Name = "Column5", ; + Column5.Width = 56, ; + Column6.ColumnOrder = 9, ; + Column6.ControlSource = "ttod(dataact)", ; + Column6.Name = "Column6", ; + Column6.Width = 41, ; + Column7.ColumnOrder = 7, ; + Column7.ControlSource = "fdoc", ; + Column7.Name = "Column7", ; + Column7.Width = 53, ; + Column8.ColumnOrder = 10, ; + Column8.ControlSource = "explicatia", ; + Column8.Name = "Column8", ; + Column8.Width = 111, ; + Column9.ColumnOrder = 3, ; + Column9.ControlSource = "valvalutactva", ; + Column9.InputMask = (get_mask(20,MAX(gnPC,gnPVal))), ; + Column9.Name = "Column9", ; + Column9.Width = 84, ; + Column10.ColumnOrder = 4, ; + Column10.ControlSource = "proctva", ; + Column10.Name = "Column10", ; + Column10.Width = 47 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_fact_atas.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "ID fact.", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column10.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Proc TVA (%)", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column10.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta (fara TVA)", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Curs", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr fact", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column6.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data fact", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column6.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column7.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Fel doc", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column7.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column8.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatia", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column8.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_fact_atas.Column9.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta (cu TVA)", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_fact_atas.Column9.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar' AS _grdrow WITH ; + Anchor = 7, ; + ColumnCount = 5, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + GridLineColor = 192,192,192, ; + HeaderHeight = 38, ; + Height = 323, ; + HighlightStyle = 2, ; + Left = 3, ; + Name = "grid_scadentar", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordMark = .F., ; + RecordSource = "cCtrScadentar", ; + RowHeight = 18, ; + TabIndex = 1, ; + Top = 154, ; + Width = 351, ; + Column1.ColumnOrder = 1, ; + Column1.ControlSource = "nr_rata", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "cNr_rata", ; + Column1.ReadOnly = .T., ; + Column1.Width = 29, ; + Column2.ColumnOrder = 3, ; + Column2.ControlSource = "data_rata", ; + Column2.FontName = "Arial Narrow", ; + Column2.Name = "cData_rata", ; + Column2.ReadOnly = .T., ; + Column2.Width = 55, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "valrata", ; + Column3.FontName = "Arial Narrow", ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(20,MAX(gnPC,gnPVal))), ; + Column3.Name = "cValrata", ; + Column3.ReadOnly = .T., ; + Column3.Width = 97, ; + Column4.ColumnOrder = 2, ; + Column4.ControlSource = "den_rata", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "cDen_rata", ; + Column4.ReadOnly = .T., ; + Column4.Width = 99, ; + Column5.ColumnOrder = 5, ; + Column5.ControlSource = "nume_val", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "cNume_val", ; + Column5.ReadOnly = .T., ; + Column5.Width = 45 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_scadentar.cData_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data facturarii", ; + FontName = "Arial Narrow", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cData_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cDen_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Denumire rata", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cDen_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cNr_rata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. rata", ; + FontName = "Arial Narrow", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cNr_rata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cNume_val.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cNume_val.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_scadentar.cValrata.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare rata valuta (fara TVA)", ; + FontName = "Arial Narrow", ; + Name = "Header1", ; + WordWrap = .T. + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_scadentar.cValrata.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Anchor = 6, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total valoare rate", ; + Height = 17, ; + Left = 96, ; + Name = "Label1", ; + Top = 485, ; + Width = 96 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total valori facturi", ; + Height = 17, ; + Left = 527, ; + Name = "Label2", ; + Top = 482, ; + Width = 97 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'optFactAtas' AS optiongroup WITH ; + AutoSize = .F., ; + BackStyle = 0, ; + ButtonCount = 2, ; + Height = 37, ; + Left = 444, ; + Name = "optFactAtas", ; + Top = 115, ; + Value = 1, ; + Width = 161, ; + Option1.AutoSize = .T., ; + Option1.BackStyle = 0, ; + Option1.Caption = "Facturile ataºate la ratã", ; + Option1.FontCharSet = 238, ; + Option1.FontName = "Arial Narrow", ; + Option1.Height = 18, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 2, ; + Option1.Value = 1, ; + Option1.Width = 113, ; + Option2.AutoSize = .T., ; + Option2.BackStyle = 0, ; + Option2.Caption = "Toate facturile ataºate la contract", ; + Option2.FontCharSet = 238, ; + Option2.FontName = "Arial Narrow", ; + Option2.Height = 18, ; + Option2.Left = 5, ; + Option2.Name = "Option2", ; + Option2.Top = 16, ; + Option2.Width = 151 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'txtSumaFacturi' AS textbox WITH ; + Anchor = 12, ; + ControlSource = "thisform.nSumaFact", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPc)), ; + Left = 633, ; + Name = "txtSumaFacturi", ; + Top = 482, ; + Width = 153 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtSumaRate' AS textbox WITH ; + Anchor = 6, ; + ControlSource = "thisform.nSumaRate", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPc)), ; + Left = 201, ; + Name = "txtSumaRate", ; + Top = 482, ; + Width = 153 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid2 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru = pcFiltru + IF EMPTY(lcFiltru) + lcFiltru = poFact_atas.ca_baza1.cfiltru + ENDIF + + save_grid_tag(thisform.grid_fact_atas) + + poFact_atas.ca_baza1.cfiltru = lcFiltru + poFact_atas.ca_baza1.afisare() + restore_grid_tag(thisform.grid_fact_atas) + IF RECCOUNT('cFactAtas')>0 + thisform.grid_fact_atas.SetFocus() + ENDIF + ENDPROC + + PROCEDURE afisactual + LOCAL lcTabelFact + + lcTabelFact = thisform.grid_fact_atas.RecordSource + + SELECT (lcTabelFact) + CALCULATE SUM(ROUND(NVL(valvaluta,0),gnPC)) TO thisform.nSumafact + + thisform.txtSumaFacturi.Refresh + ENDPROC + + PROCEDURE inainte_de_do_listare + lcSel = [{call pack_crm.situatie_rate(] + Alltrim(Str(goContract.id_ctr)) + [)}] + + lcCursor = 'cSitRate' + If goExecutor.oExecuta(lcSel, lcCursor) + + Private pcPartener, pcNrData, pcValuta + pcPartener = Nvl(Alltrim(goContract.denumire),'') + pcNrData = Nvl(Alltrim(goContract.numar),'')+' / ' + Nvl(Dtoc(goContract.Data),'') + pcValuta = Nvl(Alltrim(goContract.nume_val),'') + + pcTitlu = 'Situaþia ratelor' + + Thisform.AlwaysOnTop = .F. + + *** + Select * From (lcCursor) Into Cursor cList Readwrite + Use In (lcCursor) + + Select id_rata, Cnt(id_rata) As Cnt ; + FROM cList ; + HAVING Cnt > 1 ; + GROUP By 1 Order By 2 ; + INTO Cursor crsDuplicate + + Select crsDuplicate + Scan + lnId_rata = id_rata + lnCount = Cnt - 1 + lnGasit = 0 + Select cList + Locate For id_rata = lnId_rata + Do While Found( ) + lnGasit = lnGasit + 1 + If lnGasit > 1 + Replace nr_rata With .Null., den_rata With .Null., data_rata With .Null., valrata With .Null., sumvalrate With .Null., valfact With .Null. + Endif + Continue + Enddo + Endscan + *** + + If Used('crsDuplicate') + Use In crsDuplicate + Endif + + goExport.export2frx([cList],[rRate_facturi_extins]) + + If Used('cList') + Use In cList + Endif + + Thisform.AlwaysOnTop = .T. + Endif + + ENDPROC + + PROCEDURE inainte_de_do_sterge + LOCAL lcFact_atas, lnId_rata, lnId_fact, lcSql, lnSucces + + lcFact_atas = THISFORM.grID_FACT_ATAS.RECORDSOURCE + + SELECT (lcFact_atas) + lnId_rata = id_rata + lnId_fact = id_fact + + lcSql = [begin pack_crm.sterge_rata_fact(] + ALLTRIM(STR(lnId_rata)) + [,] ; + + ALLTRIM(STR(lnId_fact)) + [,] + ALLTRIM(STR(gnIdUtil)) + [); end;] + lnSucces = goExecutor.oExecute(lcSql) + + IF lnSucces < 0 + aMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + RETURN + ENDIF + + THISFORM.actualizeaza_grid2() + + ENDPROC + + PROCEDURE Init + DODEFAULT() + + LOCAL lcTabelRate, lcTabelFact + lcTabelRate = thisform.grid_scadentar.RecordSource + lcTabelFact = thisform.grid_fact_atas.RecordSource + + + SELECT (lcTabelRate) + CALCULATE SUM(ROUND(NVL(valrata,0),gnPC)) TO thisform.nSumarate + + SELECT (lcTabelFact) + CALCULATE SUM(ROUND(NVL(valvaluta,0),gnPC)) TO thisform.nSumafact + + thisform.txtSumaRate.Refresh + thisform.txtSumaFacturi.Refresh + + + ENDPROC + + PROCEDURE Release + IF USED('cRate') + USE IN cRate + ENDIF + ENDPROC + + PROCEDURE Command1.Click + Local lcSel, lcCursor, lnSucces, lcScadentar, lnId_fact, lnId_rata, lcSql, lnSucces + + *!* lcSel = [{call pack_crm.facturi_neatasate(] + ALLTRIM(STR(gnParametru_prog))+ [,] + ALLTRIM(STR(goContract.id_part)) + [,]+ALLTRIM(STR(goContract.id_ctr))+ [)}] + *!* lcCursor = 'cFact_neatas' + *!* lnSucces = goExecutor.oExecute(lcSel, lcCursor) + *!* IF lnSucces < 0 + *!* amessage(goExecutor.cEroare,0+16,"Eroare") + *!* RETURN + *!* ENDIF + + Private poFactGaran + Store '' To poFactGaran + + Local lcSchema, lcSelect, lcOrder, lcFiltru, lcFiltruOriginal, llAfiseaza, llModParam, lcgroup, lcFiltruOriginal + lcOrder = [dataact desc] + lcgroup = [] + lcFiltru = [ 1=1 ] + + Do Case + Case gnParametru_prog=1 + lcSchema = [] + lcSelect = [select distinct id_ctr, contract, fdoc, nract, dataact, dataireg, debit as suma, id_fact, cod, explicatia, ]+; + [(case when id_fact in (select id_fact from vctr_rate_facturi) then 1 else 0 end) as atasata ]+; + [ from vireg_emise_in_perioada ] + lcFiltruOriginal = [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + Case gnParametru_prog=2 + lcSchema = [] + lcSelect = [select distinct id_ctr, contract, fdoc, nract, dataact, dataireg, credit as suma, id_fact, cod, explicatia, ]+; + [(case when id_fact in (select id_fact from vctr_rate_facturi) then 1 else 0 end) as atasata ]+; + [ from vireg_emise_in_perioada ] + lcFiltruOriginal = [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + + Otherwise + lcFiltruOriginal = [] + Endcase + + llAfiseaza = .F. + llModParam = .T. + + gencursor('poFactGaran','cFact_neatas', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poFactGaran.ca_baza1.afisare() + + ***---------------------------- + + lcScadentar = Thisform.grid_scadentar.RecordSource + + Select cFact_neatas + loip = Createobject('frm_atas_fact_iregpart') + loip.lb_titlu_alb_b121.Caption = 'Facturi fara contract sau corespunzatoare contractului '+Alltrim(goContract.numar) + ' / ' + Dtoc(goContract.Data) + loip.Show(1) + + If buton = 2 + Return + Endif + + Private pnFA_valvaluta, pnFA_valvalutacTVA, pnFA_procTVA, pnFA_valctva, pnFA_curs, pnFA_id_valuta, pcFA_nume_val, pnValRata + Store 0 To pnFA_valvaluta, pnFA_valvalutacTVA, pnFA_procTVA, pnFA_curs, pnFA_id_valuta, pnValRata + Store '' To pcFA_nume_val + + pnFA_valctva = cFact_neatas.suma + + + Select (lcScadentar) + lnId_rata = id_rata + pnFA_id_valuta = id_valuta + pcFA_nume_val = Upper(Alltrim(nume_val)) + pnValRata = valrata && ca sa aflu cursul + + pnFA_valvaluta = pnValRata + pnFA_procTVA = goContract.proc_tva + pnFA_valvalutacTVA = Round(pnFA_valvaluta * (1+pnFA_procTVA/100),gnPC) + + *IF pnFA_valctva <> 0 + If pnFA_valvalutacTVA <> 0 + pnFA_curs = Round(pnFA_valctva/pnFA_valvalutacTVA,gnPCurs) + Endif + + + loafc = Createobject('frm_atas_fact_curs') + loafc.Show(1) + + If buton = 2 + Return + Endif + + lnId_fact = cFact_neatas.id_fact + + If !Empty(lnId_fact) + + lcSql = [begin pack_crm.adauga_rata_fact(] + Alltrim(Str(lnId_rata)) + [,] + Alltrim(Str(lnId_fact)) + [,] ; + + Alltrim(Str(pnFA_valvaluta,14,gnPC)) + [,] + Alltrim(Str(pnFA_valvalutacTVA,14,gnPC)) + [,] + Alltrim(Str(pnFA_procTVA)) + [,] ; + + Alltrim(Str(pnFA_curs,10,gnPCurs)) + [,] + Alltrim(Str(pnFA_id_valuta)) + [,] + Alltrim(Str(gnIdUtil)) + [); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX('pack_crm.cauta_ctr_art'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + Thisform.actualizeaza_grid2() + + *!* lcId_ctr = ALLTRIM(STR(goContract.id_ctr)) + *!* lcId_fact = ALLTRIM(STR(lnId_fact)) + *!* lcSql = [update act set id_ctr=] + lcId_ctr + [ where id_fact=]+lcId_fact + [ and id_ctr is null and sters=0] + *!* lnSucces = goExecutor.oExecute(lcSql) + + *!* IF lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* RETURN + *!* ENDIF + + Endif + + + + ENDPROC + + PROCEDURE grid_fact_atas.AfterRowColChange + LPARAMETERS nColIndex + + SELECT cFactAtas + lnId_fact = id_fact + + + + lcTabelScadentar = thisform.grid_scadentar.RecordSource + UPDATE (lcTabelScadentar) SET lid_fact = 0 + IF USED('cRate') + USE IN cRate + ENDIF + + SELECT id_rata FROM cFactAtas WHERE id_fact = lnId_fact INTO CURSOR cRate + + UPDATE (lcTabelScadentar) SET lid_fact = 1 WHERE id_rata in (select id_rata from cRate) + + thisform.grid_scadentar.SetAll('DynamicBackColor','IIF(cCtrScadentar.Lid_fact=1, RGB(217,217,255), RGB(255,255,255))','Column') + + + + + + + + ENDPROC + + PROCEDURE grid_scadentar.AfterRowColChange + LPARAMETERS nColIndex + + LOCAL lcTabelFactAtas + lcTabelFactAtas = thisform.grid_fact_atas.RecordSource + + IF thisform.optFactAtas.Value = 1 + SELECT (lcTabelFactAtas) + SET FILTER TO id_rata = cCtrScadentar.id_rata + ELSE + SELECT (lcTabelFactAtas) + SET FILTER TO + ENDIF + + thisform.grID_FACT_ATAS.SetAll("DynamicBackColor","IIF(id_rata = cCtrScadentar.id_rata, RGB(206,255,255), RGB(255,255,255))", "Column") + + thisform.afisactual + thisform.grid_fact_atas.Refresh + thisform.Refresh + + + ENDPROC + + PROCEDURE optFactAtas.Valid + thisform.grid_scadentar.AfterRowColChange + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_contracte_nou AS frm_termin_renunt OF "..\comun\clase\_frm_child.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_pageframe1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page1.Ct_dg_date_generale1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page1.Ct_dg_date_generale1.ck_suspendat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page1.Ct_dg_fact1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page1.Ct_part_nr_data_21" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page1.Ct_dg_obiectul1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page1.Ct_dg_date_generale_frz1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page2.Ct_dg_tf1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page3.Ct_atasamente1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_pageframe1.Page4.Ct_dg_tl1" UniqueID="" Timestamp="" /> + + * + *m: afisactual_obiectul + *m: do_adauga_garantie + *m: do_adauga_obiectul + *m: do_adauga_rate + *m: do_ataseaza_garantie + *m: do_download + *m: do_open + *m: do_upload + *m: inainte_de_do_listare_rate + *m: inainte_de_do_modifica_garantie + *m: inainte_de_do_sterge_atasament + *m: inainte_de_do_sterge_garantie + *m: inainte_de_do_sterge_obiectul + *m: inainte_de_do_sterge_rate + *p: clistaidarticole + *p: cxmlarticole + *p: llnou + *p: ncoef_discount + *p: ndiscountmediu + *p: nsumaarticole + *p: nvalcdiscount + *p: nvaldiscount + * + + * + BorderStyle = 3 + clistaidarticole = + cxmlarticole = + DoCreate = .T. + Height = 546 + llnou = .F. + Name = "frm_contracte_nou" + ncoef_discount = 0 + ndiscountmediu = 0 + nsumaarticole = 0 + nvalcdiscount = 0 + nvaldiscount = 0 + Width = 808 + _memberdata = + + + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 876 + _shape2.Anchor = 12 + _shape2.Left = 737 + _shape2.Name = "_shape2" + _shape2.Top = 0 + Lb_titlu_alb_b121.Caption = "Contract" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 4 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 779 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 2 + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 204 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 6 + But_renunt1.Anchor = 9 + But_renunt1.Left = 750 + But_renunt1.Name = "But_renunt1" + But_renunt1.TabIndex = 3 + But_renunt1.Top = 1 + * + + ADD OBJECT '_pageframe1' AS _pageframe WITH ; + Anchor = 15, ; + ErasePage = .T., ; + Height = 560, ; + Left = 0, ; + Name = "_pageframe1", ; + PageCount = 4, ; + TabIndex = 1, ; + Top = 28, ; + Width = 810, ; + Page1.BackColor = 255,255,255, ; + Page1.Caption = "Date generale", ; + Page1.FontBold = .T., ; + Page1.FontName = "Arial", ; + Page1.Name = "Page1", ; + Page1.PageOrder = 1, ; + Page2.BackColor = 255,255,255, ; + Page2.Caption = "Rate", ; + Page2.FontBold = .T., ; + Page2.FontName = "Arial", ; + Page2.Name = "Page2", ; + Page2.PageOrder = 2, ; + Page3.BackColor = 255,255,255, ; + Page3.Caption = "Doc. ataºate", ; + Page3.FontBold = .T., ; + Page3.FontCharSet = 238, ; + Page3.FontName = "Arial", ; + Page3.Name = "Page3", ; + Page3.PageOrder = 3, ; + Page4.BackColor = 255,255,255, ; + Page4.Caption = "Garanþii", ; + Page4.FontBold = .T., ; + Page4.FontCharSet = 238, ; + Page4.FontName = "Arial", ; + Page4.Name = "Page4", ; + Page4.PageOrder = 4 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="pageframe" /> + + ADD OBJECT '_pageframe1.Page1.Ct_dg_date_generale1' AS ct_dg_date_generale WITH ; + Anchor = 3, ; + Left = 5, ; + Name = "Ct_dg_date_generale1", ; + TabIndex = 2, ; + Top = 49, ; + Shape1.Name = "Shape1", ; + Shape3.Name = "Shape3", ; + Shape7.Name = "Shape7", ; + txtDescriere.Name = "txtDescriere", ; + Shape5.Name = "Shape5", ; + txtMotiv_incetat.Name = "txtMotiv_incetat", ; + Label6.Name = "Label6", ; + txtData_intern.Name = "txtData_intern", ; + ck_incetat.Alignment = 0, ; + ck_incetat.Name = "ck_incetat", ; + Label10.Name = "Label10", ; + txtDurata.Name = "txtDurata", ; + Label4.Name = "Label4", ; + Label17.Name = "Label17", ; + Label2.Name = "Label2", ; + txtData_incetat.Name = "txtData_incetat", ; + txtNumar_intern.Name = "txtNumar_intern", ; + Label12.Name = "Label12", ; + Label21.Name = "Label21", ; + ck_inactiv.Alignment = 0, ; + ck_inactiv.Name = "ck_inactiv", ; + ck_semnat.Alignment = 0, ; + ck_semnat.Name = "ck_semnat", ; + Label1.Name = "Label1", ; + cbo_valute.ControlSource = "goContract.nume_val", ; + cbo_valute.Name = "cbo_valute", ; + txtData_inceput.Name = "txtData_inceput", ; + Label5.Name = "Label5", ; + txtData_sfarsit.Name = "txtData_sfarsit", ; + cbo_sectii.Name = "cbo_sectii", ; + cmdResponsabil.Name = "cmdResponsabil", ; + Label14.Name = "Label14", ; + txtResponsabil.Name = "txtResponsabil", ; + Label9.Name = "Label9", ; + Label20.Name = "Label20", ; + cbo_tip_ctr.Name = "cbo_tip_ctr" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page1.Ct_dg_date_generale1.ck_suspendat' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Suspendat", ; + ControlSource = "goContract.suspendat", ; + Left = 179, ; + Name = "ck_suspendat", ; + Top = 202 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT '_pageframe1.Page1.Ct_dg_date_generale_frz1' AS ct_dg_date_generale_frz WITH ; + Anchor = 0, ; + Left = 437, ; + Name = "Ct_dg_date_generale_frz1", ; + TabIndex = 4, ; + Top = 152, ; + Shape1.Name = "Shape1", ; + Label7.Name = "Label7", ; + txtOfertanti.Name = "txtOfertanti", ; + Label3.Name = "Label3", ; + cbo_selectii.Name = "cbo_selectii" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page1.Ct_dg_fact1' AS ct_dg_fact WITH ; + Anchor = 0, ; + Left = 437, ; + Name = "Ct_dg_fact1", ; + TabIndex = 3, ; + Top = 49, ; + _shape1.Name = "_shape1", ; + ck_text_standard.Alignment = 0, ; + ck_text_standard.Name = "ck_text_standard", ; + cboNote.Name = "cboNote", ; + lbNota.Name = "lbNota", ; + cbo_opt_facturare.Name = "cbo_opt_facturare", ; + Label2.Name = "Label2", ; + Label1.Name = "Label1" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page1.Ct_dg_obiectul1' AS ct_dg_obiectul WITH ; + Anchor = 14, ; + Left = 5, ; + Name = "Ct_dg_obiectul1", ; + TabIndex = 5, ; + Top = 278, ; + _shape3.Name = "_shape3", ; + Shape5.Name = "Shape5", ; + grid_articole.cCant.Header1.Name = "Header1", ; + grid_articole.cCant.Name = "cCant", ; + grid_articole.cCant.Text1.Name = "Text1", ; + grid_articole.cCoef_Discount.Header1.Name = "Header1", ; + grid_articole.cCoef_Discount.Name = "cCoef_Discount", ; + grid_articole.cCoef_Discount.Text1.Name = "Text1", ; + grid_articole.cNume_art.Header1.Name = "Header1", ; + grid_articole.cNume_art.Name = "cNume_art", ; + grid_articole.cNume_art.Text1.Name = "Text1", ; + grid_articole.cNume_val.Header1.Name = "Header1", ; + grid_articole.cNume_val.Name = "cNume_val", ; + grid_articole.cNume_val.Text1.Name = "Text1", ; + grid_articole.Column1.Header1.Name = "Header1", ; + grid_articole.Column1.Name = "Column1", ; + grid_articole.Column1.Text1.Name = "Text1", ; + grid_articole.COLUMN9.Header1.Name = "Header1", ; + grid_articole.COLUMN9.Name = "COLUMN9", ; + grid_articole.COLUMN9.Text1.Name = "Text1", ; + grid_articole.cPret_cu_tva.Check1.Alignment = 0, ; + grid_articole.cPret_cu_tva.Check1.Name = "Check1", ; + grid_articole.cPret_cu_tva.Header1.Name = "Header1", ; + grid_articole.cPret_cu_tva.Name = "cPret_cu_tva", ; + grid_articole.cPret_unitar.Header1.Name = "Header1", ; + grid_articole.cPret_unitar.Name = "cPret_unitar", ; + grid_articole.cPret_unitar.Text1.Name = "Text1", ; + grid_articole.cUM.Header1.Name = "Header1", ; + grid_articole.cUM.Name = "cUM", ; + grid_articole.cUM.Text1.Name = "Text1", ; + grid_articole.cValcDiscount.Header1.Name = "Header1", ; + grid_articole.cValcDiscount.Name = "cValcDiscount", ; + grid_articole.cValcDiscount.Text1.Name = "Text1", ; + grid_articole.cValoare.Header1.Name = "Header1", ; + grid_articole.cValoare.Name = "cValoare", ; + grid_articole.cValoare.Text1.Name = "Text1", ; + grid_articole.cVal_discount.Header1.Name = "Header1", ; + grid_articole.cVal_discount.Name = "cVal_discount", ; + grid_articole.cVal_discount.Text1.Name = "Text1", ; + grid_articole.Name = "grid_articole", ; + _grdfooter1.Height = 35, ; + _grdfooter1.Left = 0, ; + _grdfooter1.Name = "_grdfooter1", ; + _grdfooter1.Top = 108, ; + _grdfooter1.Width = 794, ; + txtDiscount.Name = "txtDiscount", ; + txtValcdiscount.Name = "txtValcdiscount", ; + txtValDiscount.Name = "txtValDiscount", ; + _label1.Name = "_label1", ; + txtValctva.Name = "txtValctva", ; + Label9.Name = "Label9", ; + Label1.Name = "Label1", ; + Label10.Name = "Label10", ; + But_nou1.Name = "But_nou1", ; + But_sterge1.Name = "But_sterge1", ; + Label3.Name = "Label3", ; + Label5.Name = "Label5", ; + Label15.Name = "Label15", ; + txtProc_tva.Name = "txtProc_tva", ; + Label16.Name = "Label16", ; + Label4.Name = "Label4", ; + Label6.Name = "Label6", ; + Label7.Name = "Label7", ; + txtCoef_discount.Name = "txtCoef_discount", ; + txtValftva.Name = "txtValftva", ; + txtValDiscountTotal.Name = "txtValDiscountTotal", ; + Label8.Name = "Label8", ; + ck_pret_cu_tva.Alignment = 0, ; + ck_pret_cu_tva.Name = "ck_pret_cu_tva" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page1.Ct_part_nr_data_21' AS ct_part_nr_data_2 WITH ; + Anchor = 0, ; + Left = 5, ; + Name = "Ct_part_nr_data_21", ; + TabIndex = 1, ; + Top = 7, ; + _shape1.Name = "_shape1", ; + cmdDenumire.Name = "cmdDenumire", ; + Label3.Name = "Label3", ; + txtClient.Name = "txtClient", ; + Label4.Name = "Label4", ; + txtNumar.Name = "txtNumar", ; + Label9.Name = "Label9", ; + txtData_ctr.Name = "txtData_ctr", ; + lb_actAd.Name = "lb_actAd" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page2.Ct_dg_tf1' AS ct_dg_tf WITH ; + Anchor = 15, ; + Left = 5, ; + Name = "Ct_dg_tf1", ; + Top = 7, ; + _shape1.Name = "_shape1", ; + _shape3.Name = "_shape3", ; + _label1.Name = "_label1", ; + grid_scadentar.cData_rata.Header1.Name = "Header1", ; + grid_scadentar.cData_rata.Name = "cData_rata", ; + grid_scadentar.cData_rata.Text1.Name = "Text1", ; + grid_scadentar.cData_scadenta.Header1.Name = "Header1", ; + grid_scadentar.cData_scadenta.Name = "cData_scadenta", ; + grid_scadentar.cData_scadenta.Text1.Name = "Text1", ; + grid_scadentar.cDen_rata.Header1.Name = "Header1", ; + grid_scadentar.cDen_rata.Name = "cDen_rata", ; + grid_scadentar.cDen_rata.Text1.Name = "Text1", ; + grid_scadentar.cNr_rata.Header1.Name = "Header1", ; + grid_scadentar.cNr_rata.Name = "cNr_rata", ; + grid_scadentar.cNr_rata.Text1.Name = "Text1", ; + grid_scadentar.cNume_val.Header1.Name = "Header1", ; + grid_scadentar.cNume_val.Name = "cNume_val", ; + grid_scadentar.cNume_val.Text1.Name = "Text1", ; + grid_scadentar.cPret_cu_tva.Check1.Alignment = 0, ; + grid_scadentar.cPret_cu_tva.Check1.Name = "Check1", ; + grid_scadentar.cPret_cu_tva.Header1.Name = "Header1", ; + grid_scadentar.cPret_cu_tva.Name = "cPret_cu_tva", ; + grid_scadentar.cProcent.Header1.Name = "Header1", ; + grid_scadentar.cProcent.Name = "cProcent", ; + grid_scadentar.cProcent.Text1.Name = "Text1", ; + grid_scadentar.cProc_tva.Header1.Name = "Header1", ; + grid_scadentar.cProc_tva.Name = "cProc_tva", ; + grid_scadentar.cProc_tva.Text1.Name = "Text1", ; + grid_scadentar.cRest.ControlSource = "valrataftva - valvaluta", ; + grid_scadentar.cRest.Header1.Name = "Header1", ; + grid_scadentar.cRest.Name = "cRest", ; + grid_scadentar.cRest.Text1.Name = "Text1", ; + grid_scadentar.cValrata.Header1.Name = "Header1", ; + grid_scadentar.cValrata.Name = "cValrata", ; + grid_scadentar.cValrata.Text1.Name = "Text1", ; + grid_scadentar.cValratactva.Header1.Name = "Header1", ; + grid_scadentar.cValratactva.Name = "cValratactva", ; + grid_scadentar.cValratactva.Text1.Name = "Text1", ; + grid_scadentar.cValrataftva.Header1.Name = "Header1", ; + grid_scadentar.cValrataftva.Name = "cValrataftva", ; + grid_scadentar.cValrataftva.Text1.Name = "Text1", ; + grid_scadentar.cValvaluta.Header1.Name = "Header1", ; + grid_scadentar.cValvaluta.Name = "cValvaluta", ; + grid_scadentar.cValvaluta.Text1.Name = "Text1", ; + grid_scadentar.HeaderHeight = 37, ; + grid_scadentar.Name = "grid_scadentar", ; + But_nou1.Name = "But_nou1", ; + But_sterge1.Name = "But_sterge1", ; + Label6.Name = "Label6", ; + txtScadenta_incasare.Name = "txtScadenta_incasare", ; + Label13.Name = "Label13", ; + txtCoef_penalitati.Name = "txtCoef_penalitati", ; + cmdMultiplicaRate.Name = "cmdMultiplicaRate", ; + cmdAplicaScadenta.Name = "cmdAplicaScadenta", ; + Label4.Name = "Label4", ; + _grdfooter1.Name = "_grdfooter1", ; + But_listare1.Name = "But_listare1", ; + ck_pret_cu_tva.Alignment = 0, ; + ck_pret_cu_tva.Name = "ck_pret_cu_tva", ; + ck_afisare_scadenta.Alignment = 0, ; + ck_afisare_scadenta.Name = "ck_afisare_scadenta" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page3.Ct_atasamente1' AS ct_atasamente WITH ; + Anchor = 15, ; + Left = 5, ; + Name = "Ct_atasamente1", ; + Top = 7, ; + _shape1.Name = "_shape1", ; + grid_linkuri.Column1.Header1.Name = "Header1", ; + grid_linkuri.Column1.Name = "Column1", ; + grid_linkuri.Column1.Text1.Name = "Text1", ; + grid_linkuri.Column2.Header1.Name = "Header1", ; + grid_linkuri.Column2.Name = "Column2", ; + grid_linkuri.Column2.Text1.Name = "Text1", ; + grid_linkuri.Column3.Header1.Name = "Header1", ; + grid_linkuri.Column3.Name = "Column3", ; + grid_linkuri.Column3.Text1.Name = "Text1", ; + grid_linkuri.Column4.Header1.Name = "Header1", ; + grid_linkuri.Column4.Name = "Column4", ; + grid_linkuri.Column4.Text1.Name = "Text1", ; + grid_linkuri.Column5.Header1.Name = "Header1", ; + grid_linkuri.Column5.Name = "Column5", ; + grid_linkuri.Column5.Text1.Name = "Text1", ; + grid_linkuri.Name = "grid_linkuri", ; + But_sterge1.Name = "But_sterge1", ; + But_edit1.Name = "But_edit1", ; + But_attach1.Name = "But_attach1", ; + But_attach2.Name = "But_attach2", ; + Label1.Name = "Label1" + *< END OBJECT: ClassLib="..\comun\clase\ferestre_atasamente.vcx" BaseClass="container" /> + + ADD OBJECT '_pageframe1.Page4.Ct_dg_tl1' AS ct_dg_tl WITH ; + Anchor = 15, ; + Left = 5, ; + Name = "Ct_dg_tl1", ; + Top = 7, ; + _shape3.Name = "_shape3", ; + _shape1.Name = "_shape1", ; + _label1.Name = "_label1", ; + Label1.Name = "Label1", ; + txtGrnt_pv_nr.Name = "txtGrnt_pv_nr", ; + Label4.Name = "Label4", ; + txtGrnt_proc_ret.Name = "txtGrnt_proc_ret", ; + Label2.Name = "Label2", ; + txtGrnt_val_ret.Name = "txtGrnt_val_ret", ; + Label3.Name = "Label3", ; + txtGrnt_alerta1.Name = "txtGrnt_alerta1", ; + Label5.Name = "Label5", ; + Label6.Name = "Label6", ; + txtGrnt_proc_alerta1.Name = "txtGrnt_proc_alerta1", ; + txtGrnt_pv_data.Name = "txtGrnt_pv_data", ; + Label7.Name = "Label7", ; + Label8.Name = "Label8", ; + Label9.Name = "Label9", ; + grid_Fact_garant.cDataact.Header1.Name = "Header1", ; + grid_Fact_garant.cDataact.Name = "cDataact", ; + grid_Fact_garant.cDataact.Text1.Name = "Text1", ; + grid_Fact_garant.cGarantie.Header1.Name = "Header1", ; + grid_Fact_garant.cGarantie.Name = "cGarantie", ; + grid_Fact_garant.cGarantie.Text1.Name = "Text1", ; + grid_Fact_garant.cNract.Header1.Name = "Header1", ; + grid_Fact_garant.cNract.Name = "cNract", ; + grid_Fact_garant.cNract.Text1.Name = "Text1", ; + grid_Fact_garant.cValftva.Header1.Name = "Header1", ; + grid_Fact_garant.cValftva.Name = "cValftva", ; + grid_Fact_garant.cValftva.Text1.Name = "Text1", ; + grid_Fact_garant.Name = "grid_Fact_garant", ; + Label10.Name = "Label10", ; + _grdfooter1.Height = 35, ; + _grdfooter1.Name = "_grdfooter1", ; + Label12.Name = "Label12", ; + txtGrnt_perioada.Name = "txtGrnt_perioada", ; + Label13.Name = "Label13", ; + But_nou1.Name = "But_nou1", ; + BUT_MODIFICA1.Name = "BUT_MODIFICA1", ; + But_sterge1.Name = "But_sterge1", ; + But_attach1.Name = "But_attach1" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + + PROCEDURE afisactual_obiectul + Parameters tlDiscount_salvat + + Local lcTabelArticole, lnPret_cu_tva, lnZecimalePret, lnZecimaleSuma + lcTabelArticole = Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.RecordSource + Store 0 To lnPret_cu_tva + + lnPret_cu_tva = This._pageframe1.page1.ct_dg_obiectul1.ck_pret_cu_tva.Value + + *!* modificare v 2.0.46 : am adaugat ROUND + lnZecimalePret = iif(goContract.moneda_nationala=1,gnPPretV,gnPVal) + lnZecimaleSuma = iif(goContract.moneda_nationala=1,gnPC,gnPVal) + Select (lcTabelArticole) + *CALCULATE SUM(NVL(cant,0)*NVL(pret_unitar,0)) TO THISFORM.nSumaArticole + Calculate Sum(round(Nvl(cant,0)* Iif(lnPret_cu_tva=1,round(Nvl(pret_unitar,0)/(1+goContract.proc_tva/100),lnZecimalePret),Nvl(pret_unitar,0)),lnZecimaleSuma))To Thisform.nSumaArticole + + Calculate Sum(round(Nvl(cant,0)*round(Nvl(pret_unitar,0)*Nvl(coef_discount,0)/100,lnZecimalePret),lnZecimaleSuma)) To Thisform.nValDiscount + Calculate Avg(Nvl(coef_discount,0)) To Thisform.nDiscountMediu + Calculate Sum(round(Nvl(cant,0)*Nvl(pret_unitar,0),lnZecimaleSuma) - round(Nvl(val_discount,0),lnZecimaleSuma)) To Thisform.nValcdiscount + + Thisform.nDiscountMediu = round(Thisform.nDiscountMediu,lnZecimaleSuma) + *!* Thisform.nSumaArticole = Round(Thisform.nSumaArticole, gnPC) + *!* Thisform.nValDiscount = Round(Thisform.nValDiscount, gnPC) + *!* Thisform.nDiscountMediu = Round(Thisform.nDiscountMediu, gnPC) + *!* Thisform.nValcdiscount = Round(Thisform.nValcdiscount, gnPC) + *!* modificare v 2.0.46 ^ + + *thisform._pageframe1.page1.ct_dg_obiectul1.txtSumaArticole.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtDiscount.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValcdiscount.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValcdiscount.Refresh + + + *** + If tlDiscount_salvat && cand arat obiectul si valoarea contractului, pe show, sa iau datele salvate + If Thisform.nSumaArticole <> 0 + Thisform.nCoef_discount = Round(Nvl(goContract.val_discount,0) / Thisform.nSumaArticole * 100, 2) + Endif + Else && cand calculez, trebuie sa arat cat imi da + Thisform.nCoef_discount = Thisform.nDiscountMediu + goContract.val_discount = Thisform.nValDiscount + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValDiscountTotal.Refresh + Endif + + + *goContract.valftva = THISFORM.nValcdiscount - NVL(goContract.val_discount,0) + If lnPret_cu_tva=1 + goContract.valctva = Thisform.nValcdiscount + goContract.valftva = round(goContract.valctva / (1+goContract.proc_tva/100),lnZecimaleSuma) + Else + goContract.valftva = Thisform.nSumaArticole - Nvl(goContract.val_discount,0) && Thisform.nValcdiscount + goContract.valctva = round(goContract.valftva * (1+goContract.proc_tva/100),lnZecimaleSuma) + Endif + + Thisform._pageframe1.page1.ct_dg_obiectul1.txtCoef_discount.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValDiscount.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValcdiscount.Refresh + + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValftva.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.txtValctva.Refresh + + Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.Refresh + + + ENDPROC + + PROCEDURE do_adauga_garantie + Private poFactGaran + Store '' To poFactGaran + + Local lnId_fact, lnNrAct, ldDataAct, lnCod, lnId_fact + Store 0 To lnId_fact, lnNrAct, ldDataAct, lnCod, lnId_fact + + Local lcSchema, lcSelect, lcOrder, lcFiltru, lcFiltruOriginal, llAfiseaza, llModParam, lcgroup, lcFiltruOriginal + lcOrder = [ dataact desc] + lcgroup = [] + lcFiltru = [ 1=1 ] + + Do Case + Case gnParametru_prog=1 + lcSchema = [id_fact N(20), nract n(14), dataact d, cod n(20), valctva n(20,]+alltrim(str(gnPc))+[)] + lcSelect = [select id_fact, nract, dataact, cod, debit as valctva from ireg_parteneri ] + lcFiltruOriginal = [ extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna ]+; + [ and id_part = ] + Alltrim(Str(goContract.id_part))+; + [ and id_ctr = ] + Alltrim(Str(goContract.id_ctr))+; + [ and cont = '4111' ] + Case gnParametru_prog=2 + lcSchema = [id_fact N(20), nract n(14), dataact d, cod n(20), valctva n(20,]+alltrim(str(gnPc))+[)] + lcSelect = [select id_fact, nract, dataact, cod, credit as valctva from ireg_parteneri ] + lcFiltruOriginal = [ extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna ]+; + [ and id_part = ] + Alltrim(Str(goContract.id_part))+; + [ and id_ctr = ] + Alltrim(Str(goContract.id_ctr))+; + [ and (cont = '401' or cont='404') ] + Otherwise + lcFiltruOriginal = [] + Endcase + + llAfiseaza = .F. + llModParam = .T. + + gencursor('poFactGaran','cFactGaran', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poFactGaran.ca_baza1.afisare() + + Select cFactGaran + lofc = Createobject('frm_facturi_ctr') + lofc.Show(1) + + If buton = 2 + Return + Endif + + ***-------------------- + Private pnFactValftva, pnGarantieRetinuta + Store 0 To pnFactValftva, pnGarantieRetinuta + + Select cFactGaran + lnId_fact = id_fact + lnNrAct = nract + ldDataAct = dataact + lnId_fact = id_fact + lnCod = cod + + Do Case + Case gnParametru_prog=2 + If Year(ldDataAct)>=2007 + lcSql = [select totctva -(ro19bct+ro19bvt+ro19bft+ro09bct+ro09bvt+ro09bft+fo19bct+fo19bvt+fo19bft+fo09bct+fo09bvt+fo09bft+cebct+cebvt+cebft+ti19bct+ti19bvt+ti19bft+ti09bvt+ti09bft) as valftva ] +; + [ from jc2007 ]+; + [ where cod = ]+Alltrim(Str(lnCod)) + Else + lcSql = [select totctva -(tvai+tvam) as valftva ] +; + [ from cump ]+; + [ where cod = ]+Alltrim(Str(lnCod)) + Endif + lcCursor = [cJC_fact] + lnSucces = goExecutor.oExecute(lcSql, lcCursor) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + Select cJC_fact + pnFactValftva = valftva + + + If Used('cJC_fact') + Use In cJC_fact + Endif + Endcase + + pnGarantieRetinuta = Round(pnFactValftva * goContract.grnt_proc_ret / 100,gnPC) + + lofg = Createobject('frm_fact_garant') + lofg.Show(1) + + If buton = 2 + Return + Endif + + Insert Into cCtrFactGarant (id_fact, nract, dataact, valftva, garantie) ; + Values (lnId_fact, lnNrAct, ldDataAct, pnFactValftva, pnGarantieRetinuta) + + Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.Refresh + Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.SetFocus + + Thisform._pageframe1.page4.ct_dg_tl1._grdfooter1.calctotal() + Thisform._pageframe1.page4.ct_dg_tl1._grdfooter1.Refresh + + *!* lcSql = [begin pack_crm.adauga_factura_garantie(]+Alltrim(Str(goContract.id_ctr))+[,] + Alltrim(Str(lnId_fact))+[,]+; + *!* ALLTRIM(Str(pnFactValftva,20,gnPA))+[,]+Alltrim(Str(pnGarantieRetinuta,20,gnPA))+[); end;] + *!* lnSucces = goExecutor.oExecute(lcSql) + + *!* If lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* Return + *!* Endif + + *!* Thisform.actualizeaza_grid1() + *!* Thisform.grid_Fact_garant.Refresh + + + + + + ENDPROC + + PROCEDURE do_adauga_obiectul + Local lcCtrArt, lnPret_cu_tva + lcCtrArt = Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.RecordSource + lnPret_cu_tva = This._pageframe1.page1.ct_dg_obiectul1.ck_pret_cu_tva.Value + + IF EMPTY(NVL(goContract.id_valuta,0)) AND !INLIST(UPPER(ALLTRIM(NVL(goContract.nume_val,''))), 'LEI', 'RON') + AMESSAGEBOX('Nu ati ales valuta contractului',0+48,'Atentie!') + Return + Endif + + Do Case + Case gnParametru_prog = 1 && clienti + *!* modificare v 2.0.48 : gnIdSucursala + lcSel = [{call pack_crm.get_politici_grup(] + Alltrim(Str(gnIdUtil)) + [,] + Alltrim(Str(goContract.id_valuta)) + [,?gnIdSucursala)}] + + lcCursor = 'crsPoliticiGrup1' + lnSucces = goExecutor.oExecute(lcSel, lcCursor) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + *!* modificare v 2.0.48 : am adaugat moneda_nationala + Select id_politica, nume_lista_preturi, Ttod(datai) As datai, Ttod(DataS) As DataS, ; + nume_val, id_valuta, moneda_nationala ; + FROM crsPoliticiGrup1 ; + INTO Cursor crsPoliticiGrup + + If Used('crsPoliticiGrup1') + Use In crsPoliticiGrup1 + Endif + + fpp = Createobject("frm_politica_preturi") + fpp.Show(1) + + If Used('crsPoliticiGrup') + Use In crsPoliticiGrup + Endif + + If Used("cPol_pret_art") + *!* modificare 08.05.2007 ( PRETFTVA in loc de PRET ) + Select *, PRETFTVA As pret_unitar, 1 As cant, Pret As valoare, ; + 0 As coef_discount, 0 As val_discount, ; + lnPret_cu_tva as pret_cu_tva ; + FROM cPol_pret_art With (Buffering = .T.) ; + WHERE ales = 1 ; + INTO Cursor cAles + + Select * From cAles ; + Where id_pol_art In (Select id_pol_art From (lcCtrArt)) ; + Into Cursor cExista + If _Tally > 0 + Select cExista + Scan + lcArticole = Alltrim(nume_articol)+', ' + Endscan + lcArticole = Substr(lcArticole,1,Len(lcArticole)-2) + If Reccount('cExista')=1 + AMESSAGEBOX('Articolul '+lcArticole+ ' exista in obiectul contractului. Stergeti si adaugati cu alte valori!',0+48,'Atentie') + Else + AMESSAGEBOX('Articolele '+lcArticole+ ' exista in obiectul contractului. Stergeti si adaugati cu alte valori!',0+48,'Atentie') + Endif + Endif + + Select * From cAles Where id_pol_art Not In (Select id_pol_art From cExista) ; + INTO Cursor cAles2 + + If Used('cExista') + Use In cExista + Endif + + Select (lcCtrArt) + Append From Dbf('cAles2') + + Select (lcCtrArt) + Replace valoare With cant * pret_unitar + + If Used('cAles') + Use In cAles + Endif + + If Used('cAles2') + Use In cAles2 + Endif + + If Used('cPol_pret_art') + Use In cPol_pret_art + Endif + Endif + Case gnParametru_prog = 2 && firnizori + Local lcArticole, lcXMLArticole + + lcXMLArticole = caut_articol(0, .F., .T., .T.) + + This.cXMLArticole = lcXMLArticole + If !Empty(lcXMLArticole) + + Xmltocursor(lcXMLArticole, "crsArticole") + lcArticole = cursor2lista("crsArticole", "denumire", ",") + This.cListaIdArticole = cursor2lista("crsArticole","id_articol",",") + + Select crsArticole.*, denumire As nume_articol ; + From crsArticole ; + Into Cursor crsArticole2 + Select c.*, 00000 As id_valuta, Space(4) As nume_val,; + 0 as cant, ; + lnPret_cu_tva as pret_cu_tva ; + FROM crsArticole2 c ; + Into Cursor crsArticole3 READWRITE + Select crsArticole3 + Replace All id_valuta With goContract.id_valuta, ; + nume_val With goContract.nume_val, ; + cant WITH 1 + + Select (lcCtrArt) + Append From Dbf('crsArticole3') + + Use In crsArticole + Use In crsArticole2 + Use In crsArticole3 + Endif + Endcase + + Thisform.afisactual_obiectul() + Thisform._pageframe1.page1.ct_dg_obiectul1._grdfooter1.calctotal + Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.SetFocus() + + + + + ENDPROC + + PROCEDURE do_adauga_rate + Local lcScadentar, lnNr_rata, lnPret_cu_tva + lcScadentar = Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.RecordSource + lnPret_cu_tva = this._pageframe1.page2.ct_dg_tf1.ck_pret_cu_tva.Value + + IF EMPTY(NVL(goContract.id_valuta,0)) AND !INLIST(UPPER(ALLTRIM(NVL(goContract.nume_val,''))), 'LEI', 'RON') + AMESSAGEBOX('Nu ati ales valuta contractului',0+48,'Atentie!') + Return + Endif + + Select (lcScadentar) + Calculate Max(Nvl(nr_rata,0)) To lnNr_rata + lnNr_rata = lnNr_rata + 1 + + Select (lcScadentar) + Append Blank + + Select (lcScadentar) + Replace id_valuta With goContract.id_valuta, ; + nume_val With goContract.nume_val, ; + nr_rata With lnNr_rata, ; + pret_cu_tva WITH lnPret_cu_tva, ; + proc_tva with goContract.proc_tva + + Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.Refresh + Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.SetFocus + + ENDPROC + + PROCEDURE do_ataseaza_garantie + Private poFactGaran + Store '' To poFactGaran + + Local lcSchema, lcSelect, lcOrder, lcFiltru, lcFiltruOriginal, llAfiseaza, llModParam, lcgroup, lcFiltruOriginal + lcOrder = [dataact desc] + lcgroup = [] + lcFiltru = [ 1=1 ] + + Do Case + Case gnParametru_prog=1 + lcSchema = [] + lcSelect = [select distinct id_ctr, contract, fdoc, nract, dataact, dataireg, debit as suma, id_fact, cod, explicatia, 0 as atasata ]+; + [ from vireg_emise_in_perioada ] + lcFiltruOriginal = [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + Case gnParametru_prog=2 + lcSchema = [] + lcSelect = [select distinct id_ctr, contract, fdoc, nract, dataact, dataireg, credit as suma, id_fact, cod, explicatia, 0 as atasata ]+; + [ from vireg_emise_in_perioada ] + lcFiltruOriginal = [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and (id_ctr is null or id_ctr = ]+ Alltrim(Str(goContract.id_ctr))+ [ or id_ctr = 0)] + Otherwise + lcFiltruOriginal = [] + Endcase + + llAfiseaza = .F. + llModParam = .T. + + gencursor('poFactGaran','cFact_neatas', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poFactGaran.ca_baza1.afisare() + + Select cFact_neatas + lofc = Createobject('frm_atas_fact_iregpart') + lofc.Show(1) + + Release poFactGaran + + ENDPROC + + PROCEDURE do_download + Lparameters tcFisSalvat + + Private poLink + Store '' To poLink + Local lcSchema, lcSelect, lcOrder, lcFiltru, lcFiltruOriginal, llAfiseaza, lcgroup, lcFiltruOriginal + Local lcTabel, lcFisSalvat, lnIdAtas, lcFisier + + lcTabel = thisform._pageframe1.page3.ct_atasamente1.grid_linkuri.RecordSource + Select (lcTabel) + If Reccount() >0 + If Pcount() = 0 Or Type('tcFisSalvat') <> 'C' + lcDir = Getdir('c:\',"Director","Directorul unde doriti sa salvati fisierul",64) + If Empty(lcDir) + Return + Endif + If !Empty(nume_fisier) + lcFisSalvat = Addbs(lcDir)+Alltrim(nume_fisier) + Endif + Else + lcFisSalvat = tcFisSalvat + Endif + If !Empty(lcFisSalvat) + + lnIdAtas = id_atas + lcSchema = [fisier w ] + lcSelect = [select fisier from atas_atasamente where id_atas = ] + Alltrim(Str(lnIdAtas)) + lcOrder = [] + lcgroup = [] + lcFiltru = [] + lcFiltruOriginal = [] + llModParam = .T. + llAfiseaza = .F. + + gencursor('poLink','cRegFisierTemp', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poLink.ca_baza1.afisare() + If Used('cRegFisierTemp') + lcFisier = fisier + Use In (Select('cRegFisierTemp')) + + Strtofile(lcFisier, lcFisSalvat) + open_default_app(lcFisSalvat) + + Endif + Endif + Endif + + ENDPROC + + PROCEDURE do_open + Local lcTabel, lcFisSalvat + + lcTabel = thisform._pageframe1.page3.ct_atasamente1.grid_linkuri.RecordSource + Select (lcTabel) + If Reccount() >0 + IF !EMPTY(NVL(nume_fisier,'')) + lcFisSalvat = Addbs(gcTempPath)+ALLTRIM(nume_fisier) + thisform.do_download(lcFisSalvat) + ENDIF + Endif + + ENDPROC + + PROCEDURE do_upload + Local lcTabelLinkuri + lcTabelLinkuri = Thisform._pageframe1.page3.ct_atasamente1.grid_linkuri.RecordSource + + ***--- + Private pnId_entitate, pnTip_entitate, pcLink, pcDescriere, pcFis_name, pcFisier, pnId_atas + Store 0 To pnId_entitate, pnTip_entitate, pnId_atas + Store "" To pcDescriere, pcFis_name, pcFisier, pcLink + * pcLink - private - folosit in frm_atas_nou + + Local llReturn,lcSql,lnSucces + llReturn = .T. + + Select (lcTabelLinkuri) + Scatter Name poLink Blank Memo + + AddProperty(poLink,'id_proiect',0) + AddProperty(poLink,'proiect','') + AddProperty(poLink,'id_ctr',0) + AddProperty(poLink,'contract','') + + lodn = Createobject("frm_atas_nou") + lodn.Show(1) + If gnButon = 2 + Return + Endif + + pnId_entitate = goContract.id_ctr + pnTip_entitate = 2 + + pcDescriere = Upper(Alltrim(poLink.descriere)) + pcFis_name = Upper(Alltrim(poLink.nume_fisier)) + If Empty(pcLink) + Return + Endif + pcFisier = Filetostr(pcLink) + + Select (lcTabelLinkuri) + Append Blank + Gather Name poLink Memo + Replace fisier With pcFisier, id_atas With pnId_atas, nume_fisier With pcFis_name, descriere With pcDescriere, dataora With Datetime(), utilizator With gcUserNameApp + Replace are_link With 1 In cContracte + + ***--- + + Thisform._pageframe1.page3.ct_atasamente1.grid_linkuri.Refresh + + ENDPROC + + PROCEDURE inainte_de_do_listare_rate + Private pcPartener, pcNrData, pcValuta, cTitlu, pcDataOra + pcPartener = Nvl(Alltrim(goContract.denumire),'') + pcNrData = Nvl(Alltrim(goContract.numar),'')+' / ' + Nvl(Dtoc(goContract.Data),'') + pcValuta = Nvl(Alltrim(goContract.nume_val),'') + + pcDataOra = get_ora(2) + + + lcmenu = "Rate - Valoare facturata;Rate - Facturi aferente;Rate - facturi aferente (extins)" + lnx = xmenu(lcmenu) + + Thisform.AlwaysOnTop = .F. + + Do Case + Case lnx = 1 + pcTitlu = 'RATE' + Local lcScadentar, lnNr_rata + goExport.export2frx(Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.RecordSource,[rrate]) + Case lnx = 2 Or lnx = 3 + lcSel = [{call pack_crm.situatie_rate(] + Alltrim(Str(goContract.id_ctr)) + [)}] + + lcCursor = 'cSitRate' + If goExecutor.oExecuta(lcSel, lcCursor) + *** + Select * From cSitRate Into Cursor cList Readwrite + If Used('cSitRate') + Use In cSitRate + Endif + + Select id_rata, Cnt(id_rata) As Cnt ; + FROM cList ; + HAVING Cnt > 1 ; + GROUP By 1 Order By 2 ; + INTO Cursor crsDuplicate + + Select crsDuplicate + Scan + lnId_rata = id_rata + lnCount = Cnt - 1 + lnGasit = 0 + Select cList + Locate For id_rata = lnId_rata + Do While Found( ) + lnGasit = lnGasit + 1 + If lnGasit > 1 + Replace nr_rata With .Null., den_rata With .Null., data_rata With .Null., valrata With .Null., sumvalrate With .Null., valfact With .Null. + Endif + Continue + Enddo + Endscan + *** + + If Used('crsDuplicate') + Use In crsDuplicate + Endif + + If lnx = 2 + pcTitlu = 'RATE - FACTURI AFERENTE' + goExport.export2frx([cList],[rRate_facturi]) + Else + pcTitlu = 'RATE - FACTURI AFERENTE (EXTINS)' + goExport.export2frx([cList],[rRate_facturi_extins]) + Endif + + If Used('cList') + Use In cList + Endif + Endif + Endcase + + Thisform.AlwaysOnTop = .T. + + + + ENDPROC + + PROCEDURE inainte_de_do_modifica_garantie + Private pnFactValftva, pnGarantieRetinuta + Store 0 To pnFactValftva, pnGarantieRetinuta + + Local lnId_ctr_fact_garan + Store 0 To lnId_ctr_fact_garan + + lcTabelgarantii = Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.RecordSource + Select (lcTabelgarantii) + Select Cnt(*) As nr_inreg From (lcTabelgarantii) ; + INTO Cursor cInreg + Select cInreg + lnInreg = nr_inreg + If lnInreg > 0 + + Select (lcTabelgarantii) + lnId_ctr_fact_garan = id_ctr_fact_garan + pnFactValftva = valftva + pnGarantieRetinuta = garantie + + lofg = Createobject('frm_fact_garant') + lofg.Show(1) + + If buton = 2 + Return + Endif + + Select (lcTabelgarantii) + Replace valftva With pnFactValftva, garantie With pnGarantieRetinuta + Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.Refresh + + Thisform._pageframe1.page4.ct_dg_tl1._grdfooter1.calctotal() + Thisform._pageframe1.page4.ct_dg_tl1._grdfooter1.Refresh + Endif + + *!* lcSql = [begin pack_crm.modifica_factura_garantie(]+ALLTRIM(STR(lnId_ctr_fact_garan))+[,]+; + *!* ALLTRIM(Str(pnFactValftva,20,gnPA))+[,]+Alltrim(Str(pnGarantieRetinuta,20,gnPA))+[); end;] + *!* lnSucces = goExecutor.oExecute(lcSql) + + *!* If lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* Return + *!* ENDIF + + *!* thisform.actualizeaza_grid1() + *!* thisform.grid_Fact_garant.Refresh + + ENDPROC + + PROCEDURE inainte_de_do_renunt + Local llNou + llNou = Thisform.llNou + + If llNou + * sterge contract + poGeneratorNumere.dezaloca_numar(13) + *- + + lcId = Alltrim(Str(goContract.id_ctr)) + lcId_util = Alltrim(Str(gnIdUtil)) + + lcSql = [begin pack_def.sterge_contract(]+lcId+[,]+lcId_util+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.oprelucrareEroare(),0+16,"Eroare") + Return .F. + Endif + + Select cContracte + Locate For id_ctr = goContract.id_ctr + If Found() + Delete + ENDIF + Select cContracte + GO BOTTOM + + Endif + + Return .T. + + ENDPROC + + PROCEDURE inainte_de_do_sterge_atasament + Local lcTabelLinkuri, lnRaspuns, lnInreg + lcTabelLinkuri = thisform._pageframe1.page3.ct_atasamente1.grid_linkuri.RecordSource + Store 0 To lnRaspuns, lnInreg + + Select Cnt(*) As nr_inreg From (lcTabelLinkuri) ; + INTO Cursor cInreg + Select cInreg + lnInreg = nr_inreg + If lnInreg > 0 + lnRaspuns = amessagebox('Doriti sa stergeti documentul?',4+32,"Confirmare stergere document") + If lnRaspuns = 7 && 7 = No ; 6 = Yes + Return + Endif + + Select (lcTabelLinkuri) + Delete + + thisform._pageframe1.page3.ct_atasamente1.SetFocus() + Endif + + ENDPROC + + PROCEDURE inainte_de_do_sterge_garantie + Local lcTabelgarantii, lnInreg, lnRaspuns + + lcTabelgarantii = Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.RecordSource + Select (lcTabelgarantii) + + Select Cnt(*) As nr_inreg From (lcTabelgarantii) ; + INTO Cursor cInreg + Select cInreg + lnInreg = nr_inreg + If lnInreg > 0 + lnRaspuns = AMESSAGEBOX('Doriti sa stergeti inregistrarea?',4+32,"Confirmare stergere inregistrare") + If lnRaspuns = 7 && 7 = No ; 6 = Yes + Return + Endif + + Select (lcTabelgarantii) + Delete + + Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.Refresh + Thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.SetFocus + + Thisform._pageframe1.page4.ct_dg_tl1._grdfooter1.calctotal() + Thisform._pageframe1.page4.ct_dg_tl1._grdfooter1.Refresh + Endif + + *!* lnId_ctr_fact_garan = id_ctr_fact_garan + + *!* lcSql = [begin pack_crm.sterge_factura_garantie(]+Alltrim(Str(lnId_ctr_fact_garan))+[); end;] + *!* lnSucces = goExecutor.oExecute(lcSql) + + *!* If lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* Return + *!* ENDIF + + *!* thisform.actualizeaza_grid1() + *!* thisform.grid_Fact_garant.Refresh + + ENDPROC + + PROCEDURE inainte_de_do_sterge_obiectul + Private pcId_ctr, pcId_pol_art + Store '' To pcId_ctr, pcId_pol_art + + Local lcTabelCtrArt, lnRaspuns, lnInreg + Store 0 To lnRaspuns, lnInreg + + lcTabelCtrArt = Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.RecordSource + + Select Cnt(*) As nr_inreg From (lcTabelCtrArt) ; + INTO Cursor cInreg + Select cInreg + lnInreg = nr_inreg + If lnInreg > 0 + lnRaspuns = amessagebox('Doriti sa stergeti?',4+32,"Confirmare stergere") + If lnRaspuns = 7 && 7 = No ; 6 = Yes + Return + Endif + + pcId_ctr = Alltrim(Str(goContract.id_ctr)) + Select (lcTabelCtrArt) + + Do Case + Case gnParametru_prog = 1 + pcId_pol_art = Alltrim(Str(id_pol_art)) + Case gnParametru_prog = 2 + pcId_pol_art = Alltrim(Str(id_articol)) + Endcase + + Select (lcTabelCtrArt) + DELETE + + thisform.afisactual_obiectul() + Thisform._pageframe1.page1.ct_dg_obiectul1._grdfooter1.calctotal + Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.Refresh + Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.SetFocus + Endif + + + ENDPROC + + PROCEDURE inainte_de_do_sterge_rate + Local lcScadentar + lcScadentar = Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.RecordSource + + Select Cnt(*) As nr_inreg From (lcScadentar) ; + INTO Cursor cInreg + Select cInreg + lnInreg = nr_inreg + If lnInreg > 0 + lnRaspuns = amessagebox('Doriti sa stergeti rata?',4+32,"Confirmare stergere rata") + If lnRaspuns = 7 && 7 = No ; 6 = Yes + Return + Endif + Select (lcScadentar) + Delete + Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.Refresh + Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.SetFocus + thisform._pageframe1.paGE2.ct_dg_tf1._grdfooter1.calctotal() + Endif + + ENDPROC + + PROCEDURE inainte_de_do_termin + Private pcParametru_prog, pcId_ctr, pcId_pol_art, pcId_articol, pcCant, pcPret_unitar, pcCoef_discount, pcVal_discount, pcId_valuta + Store '' To pcId_ctr, pcId_pol_art, pcId_articol, pcCant, pcPret_unitar, pcCoef_discount, pcVal_discount, pcId_valuta + + Local llNou, lnRaspuns, lcTabelCtrArt, lcTabelScadentar, lcTabelAtasamente, lcTabelGarantii, lnInreg + llNou = Thisform.llNou + + lcTabelCtrArt = Thisform._pageframe1.page1.ct_dg_obiectul1.grid_articole.RecordSource + lcTabelScadentar = Thisform._pageframe1.page2.ct_dg_tf1.grid_scadentar.RecordSource + lcTabelAtasamente = Thisform._pageframe1.page3.ct_atasamente1.grid_linkuri.RecordSource + lcTabelGarantii = thisform._pageframe1.page4.ct_dg_tl1.grid_Fact_garant.RecordSource + lnInreg = 0 + + lnRaspuns = AMESSAGEBOX('Doriti sa salvati modificarile facute?',4+32,'Confirmare salvare') + + If lnRaspuns = 7 && NU + If llNou + * sterge contract + poGeneratorNumere.dezaloca_numar(13) + *- + + lcId = Alltrim(Str(goContract.id_ctr)) + lcId_util = Alltrim(Str(gnIdUtil)) + + lcSql = [begin pack_def.sterge_contract(]+lcId+[,]+lcId_util+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.oprelucrareEroare(),0+16,"Eroare") + Return .F. + Endif + + Select cContracte + Locate For id_ctr = goContract.id_ctr + If Found() + Delete + Endif + Select cContracte + Go Bottom + Endif + + Return .T. + Else && DA + *poGeneratorNumere.reset(13) + + pcId_ctr = Alltrim(Str(goContract.id_ctr)) + pcParametru_prog = Alltrim(Str(gnParametru_prog)) + If Empty(Nvl(goContract.id_part,0)) + AMESSAGEBOX('Nu ati ales partenerul!',48,"Atentie") + Return .F. + Endif + + If Empty(Nvl(goContract.numar,0)) + AMESSAGEBOX('Nu ati completat numarul contractului!',48,"Atentie") + Thisform._pageframe1.page1.ct_part_nr_data_21.txtNUMAR.SetFocus + Return .F. + Endif + + If Empty(Nvl(goContract.Data,{})) + AMESSAGEBOX('Nu ati completat data contractului!',48,"Atentie") + Thisform._pageframe1.page1.ct_part_nr_data_21.txtDATA_CTR.SetFocus + Return .F. + ENDIF + + IF EMPTY(NVL(goContract.opt_facturare,0)) + AMESSAGEBOX('Nu ati ales ce se factureaza!',48,"Atentie") + ENDIF + + If (goContract.opt_facturare = 1 Or goContract.opt_facturare = 2) And Empty(Nvl(goContract.id_nota,0)) + AMESSAGEBOX('Alegeti nota contabila !',,48,"Atentie") + Return .F. + Endif + + Do Case + Case goContract.opt_facturare = 1 + Select (lcTabelScadentar) + Calculate Cnt() For !Deleted() To lnInreg + If lnInreg = 0 + AMESSAGEBOX('Adaugati rate!',0+48,'Atentie') + Return .F. + Endif + Case goContract.opt_facturare = 2 + Select (lcTabelCtrArt) && modificare v 2.1.11 + Calculate Cnt() For !Deleted() To lnInreg + If lnInreg = 0 + AMESSAGEBOX('Adaugati obiectul contractului!',0+48,'Atentie') + Return .F. + Endif + Select (lcTabelScadentar) && modificare v 2.1.11 + Calculate Cnt() For !Deleted() To lnInreg + If lnInreg = 0 + AMESSAGEBOX('Adaugati rate!',0+48,'Atentie') + Return .F. + Endif + Endcase + + Select (lcTabelScadentar) + Locate For Empty(data_rata) + If Found() + AMESSAGEBOX('Completati data ratelor!',0+48,'Atentie') + Return .F. + Endif + + Select (lcTabelScadentar) + Locate For Empty(valrata) + If Found() + AMESSAGEBOX('Completati valoarea ratelor!',0+48,'Atentie') + Return .F. + Endif + + If pnGNnumar<>0 And Upper(Alltrim(Str(pnGNnumar))) <> Upper(Alltrim(goContract.numar)) + poGeneratorNumere.dezaloca_numar(13) + Endif + + lnSucces = SQLSetprop(gnhandle,"Transactions",2) + If lnSucces < 0 + AMESSAGEBOX("Programul nu a reusit sa treaca pe tranzactie manuala! Reintrati in program si incercati din nou!",48,"Atentie") + ELSE + lnSucces = modifica_ctr_dg(goContract) && In oproceduri_roacontracte.prg + If lnSucces > 0 + lnSucces = salveaza_obiectul(lcTabelCtrArt) + If lnSucces > 0 + lnSucces = salveaza_rate(lcTabelScadentar) + If lnSucces > 0 + lnSucces = salveaza_atasamente(lcTabelAtasamente) + IF lnSucces > 0 + lnSucces = salveaza_garantii(lcTabelGarantii) + ENDIF + Endif + Endif + Endif + Endif + + If lnSucces < 0 + lcSql = "ROLLBACK" + Else + lcSql = "COMMIT" + Endif + lnSucces2 = goExecutor.oExecute(lcSql) + + If lnSucces2 < 0 + AMESSAGEBOX(lcSql + Chr(13) + goExecutor.cEroare,0+16,"Eroare") + Endif + + lnSucces2 = SQLSetprop(gnhandle,"Transactions",1) + If lnSucces2 < 0 + AMESSAGEBOX('Programul nu a reusit sa treaca pe tranzactie automata. Iesiti din program si intrati din nou!',0+48,'Atentie!') + Else + If lcSql = "COMMIT" + && sa nu mai faca de fiecare data do_cauta (sa aduca toate contactele de pe server) + Select cContracte + Locate For id_ctr = goContract.id_ctr + If Found() + Gather Name goContract Memo + ENDIF + ELSE + Return .F. + Endif + + Endif + Endif + + Return .T. + + + + + + + + + + + + + ENDPROC + + PROCEDURE Init + PARAMETERS tlNou + DODEFAULT() + + thisform.llnou = tlNou + *!* modificare v 2.0.46 + if goContract.moneda_nationala = 1 + This._pageframe1.page1.ct_dg_obiectul1.actualizeaza_zecimale(gnPPretV,gnPc) + This._pageframe1.page2.ct_dg_tf1.actualizeaza_zecimale(gnPPretV,gnPc) + else + This._pageframe1.page1.ct_dg_obiectul1.actualizeaza_zecimale(gnPVal,gnPVal) + This._pageframe1.page2.ct_dg_tf1.actualizeaza_zecimale(gnPVal,gnPVal) + endif + *!* modificare v 2.0.46 ^ + ENDPROC + + PROCEDURE Show + Lparameters nStyle + + LOCAL lnPret_cu_tva + STORE 0 TO lnPret_cu_tva + + If gnParametru_prog = 1 + This._pageframe1.page1.ct_dg_date_generale_frz1.Visible = .F. + Endif + + + Select Max(pret_cu_tva) as nPret_cu_tva ; + FROM cCtrArt ; + INTO Cursor cPret_cu_tva + Select cPret_cu_tva + lnPret_cu_tva = NVL(nPret_cu_tva,0) + If Used('cPret_cu_tva') + Use In cPret_cu_tva + ENDIF + this._pageframe1.page1.ct_dg_obiectul1.ck_pret_cu_tva.Value = lnPret_cu_tva + + Local llDiscountSalvat + llDiscountSalvat = .T. + + If Alltrim(gocontract.tip_istoric) = 'A' + This._pageframe1.page1.ct_part_nr_data_21.lb_actAd.Visible = .T. + This._pageframe1.page1.ct_part_nr_data_21.laBEL4.Top = 4 + This._pageframe1.page1.ct_part_nr_data_21.lb_actAd.Caption = Alltrim(gocontract.numar_aa) + Else + This._pageframe1.page1.ct_part_nr_data_21.lb_actAd.Visible = .F. + Endif + + Thisform.afisactual_obiectul(llDiscountSalvat) + + WITH this._pageframe1.page1.ct_dg_obiectul1 + *!* ._grdfooter1.attachtogrid(._grdfooter1.osourcegrid) + *!* ._grdfooter1.calctotal() + .grid_articole.HeaderHeight = 38 + ENDWITH + + WITH thisform._pageframe1.paGE2.ct_dg_tf1 + *!* ._grdfooter1.attachtogrid(._grdfooter1.osourcegrid) + *!* ._grdfooter1.calctotal() + .grid_scadentar.HeaderHeight = 38 + ENDWITH + + this.Height = INT(_Screen.Height * 0.7) + this.Width = INT(_screen.Width * 0.7) + this.AutoCenter = .T. + ENDPROC + + PROCEDURE _pageframe1.Page1.Ct_dg_date_generale1.cbo_valute.Valid + DoDefault() + *!* modificare v 2.0.46 + If goContract.moneda_nationala = 1 + Thisform._pageframe1.page1.ct_dg_obiectul1.actualizeaza_zecimale(gnPPretV,gnPc) + Thisform._pageframe1.page2.ct_dg_tf1.actualizeaza_zecimale(gnPPretV,gnPc) + Else + Thisform._pageframe1.page1.ct_dg_obiectul1.actualizeaza_zecimale(gnPVal,gnPVal) + Thisform._pageframe1.page2.ct_dg_tf1.actualizeaza_zecimale(gnPVal,gnPVal) + Endif + *!* modificare v 2.0.46 ^ + ENDPROC + + PROCEDURE _pageframe1.Page1.Ct_dg_obiectul1.txtProc_tva.Valid + DoDefault() + + Local llPastreazaPretcuTVA, lnProcTVAVechi, lnProcTvaNou + Local lnTVANou, lnTVAVechi, lnValRataCTva, lnValRataFTva, lnZecimalePret + SET STEP ON + lnZecimalePret = This.Parent.nzecimalepret + + lnProcTvaNou = goContract.proc_tva + lnProcTVAVechi = This.Parent.nOldProcTVA + If m.lnProcTvaNou <> m.lnProcTVAVechi + If AMESSAGEBOX('Doriti sa actualizati procentul de TVA si valorile pe ratele nefacturate de la ' + ; + ALLTRIM(Transform(m.lnProcTVAVechi)) + ' la ' + Alltrim(Transform(m.lnProcTvaNou)) + '?',4+32, 'Actualizare TVA') = 6 + + llPastreazaPretcuTVA = (AMESSAGEBOX('Se pastreaza pretul cu TVA pentru ratele cu TVA inclus?',4+32, 'Actualizare TVA') = 6) + + + Select cCtrScadentar + Scan For valrataftva - valvaluta <> 0 AND proc_tva = m.lnProcTVAVechi + If goContract.valftva <> 0 And goContract.valftva*0 = 0 && <> ************* + Replace procent With valrata/goContract.valftva * 100 + Else + Replace procent With 0 + Endif + + REPLACE proc_tva WITH m.lnProcTVANou + IF NVL(pret_cu_tva,0) = 1 + IF m.llPastreazaPretCuTVA + * se pastreaza pretul cu TVA. recalculez pretul fara TVA + lnValRatacTva = valratactva + lnTVANou = ROUND(lnValRatacTva * lnProcTVANou / 100, m.lnZecimalePret) + lnValRatafTva = m.lnValRatacTva - m.lnTvaNou + REPLACE valrataftva WITH m.lnValRatafTva + ELSE + * se pastreaza pretul fara TVA. recalculez pretul cu TVA + lnValRataFTva = valrataftva + lnTVANou = ROUND(lnValRataFTva * m.lnProcTVANou / 100, m.lnZecimalePret) + lnValRataCTva = m.lnValRataFTva + m.lnTVANou + REPLACE valrata WITH m.lnValRataCTva, valratactva WITH m.lnValRataCTva + ENDIF + ELSE + * pret fara tva. recalculez pretul cu TVA + lnValRataFTva = valrataftva + lnTVANou = ROUND(lnValRataFTva * m.lnProcTVANou / 100, m.lnZecimalePret) + lnValRataCTva = m.lnValRataFTva + m.lnTVANou + REPLACE valratactva WITH m.lnValRataCTva + ENDIF + + + This.Parent._grdfooter1.calctotal() + Endscan + + Endif + Endif + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_fact_garant AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtFactValftva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtGarantieRetinuta" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + + * + BorderStyle = 1 + DoCreate = .T. + Height = 111 + Name = "frm_fact_garant" + Width = 406 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 419 + _shape2.Height = 29 + _shape2.Left = 342 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 64 + Lb_titlu_alb_b121.Caption = "Facturi - Garanþii" + Lb_titlu_alb_b121.Left = 6 + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 5 + BUT_TERMIN1.Left = 375 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 3 + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 252 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 12 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 344, ; + Name = "But_renunt1", ; + TabIndex = 4, ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare facturã", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 6, ; + Name = "Label1", ; + TabIndex = 6, ; + Top = 48, ; + Width = 84 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "(fara TVA)", ; + Height = 17, ; + Left = 6, ; + Name = "Label2", ; + TabIndex = 7, ; + Top = 61, ; + Width = 55 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Procent reþinut", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 241, ; + Name = "Label3", ; + TabIndex = 8, ; + Top = 54, ; + Width = 81 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "%", ; + Height = 17, ; + Left = 385, ; + Name = "Label4", ; + TabIndex = 10, ; + Top = 54, ; + Width = 13 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Garanþie reþinutã", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 6, ; + Name = "Label5", ; + TabIndex = 11, ; + Top = 84, ; + Width = 93 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Text2' AS textbox WITH ; + ControlSource = "goContract.grnt_proc_ret", ; + Format = "rk", ; + Height = 23, ; + InputMask = "999", ; + Left = 335, ; + Name = "Text2", ; + ReadOnly = .T., ; + TabIndex = 9, ; + Top = 51, ; + Width = 48 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtFactValftva' AS textbox WITH ; + ControlSource = "pnFactValftva", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPC)), ; + Left = 103, ; + Name = "txtFactValftva", ; + TabIndex = 1, ; + Top = 51, ; + Width = 120 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtGarantieRetinuta' AS textbox WITH ; + ControlSource = "pnGarantieRetinuta", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPC)), ; + Left = 103, ; + Name = "txtGarantieRetinuta", ; + TabIndex = 2, ; + Top = 81, ; + Width = 120 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE txtFactValftva.LostFocus + pnGarantieRetinuta = ROUND(pnFactValftva * goContract.grnt_proc_ret / 100,gnPc) + thisform.txtGarantieRetinuta.Refresh + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_facturat_incasat AS frm_termin_renunt OF "..\comun\clase\_frm_child.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_checkbox1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_checkbox2" UniqueID="" Timestamp="" /> + + * + DoCreate = .T. + Height = 70 + Name = "frm_facturat_incasat" + Width = 375 + _shape1.Name = "_shape1" + _SHAPE2.Name = "_SHAPE2" + LB_TITLU_ALB_B121.Caption = "Facturat-încasat" + LB_TITLU_ALB_B121.Name = "LB_TITLU_ALB_B121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + BUT_RENUNT1.Name = "BUT_RENUNT1" + * + + ADD OBJECT '_checkbox1' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Sold <> 0", ; + ControlSource = "pnFacturatIncasat", ; + FontBold = .T., ; + FontName = "Arial Narrow", ; + Left = 35, ; + Name = "_checkbox1", ; + Top = 41 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT '_checkbox2' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Grupare pe responsabil", ; + ControlSource = "pnGrupResponsabil", ; + FontName = "Arial Narrow", ; + Left = 228, ; + Name = "_checkbox2", ; + Top = 41 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + +ENDDEFINE + +DEFINE CLASS frm_facturi_ctr AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_facturi" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nr_fact" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_data_fact" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + + * + BorderStyle = 1 + DoCreate = .T. + Height = 474 + Name = "frm_facturi_ctr" + Width = 362 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 299 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 62 + Lb_titlu_alb_b121.Caption = "Facturi" + Lb_titlu_alb_b121.Left = 9 + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.Top = 6 + BUT_TERMIN1.Left = 331 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 252 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 3 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 300, ; + Name = "But_renunt1", ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Ck_data_fact' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = dataact, ; + Caption = "Data fact.", ; + FontName = "Arial Narrow", ; + Left = 65, ; + Name = "Ck_data_fact", ; + TabIndex = 1, ; + tip = D, ; + Top = 43, ; + ZOrderSet = 8 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nr_fact' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = nract, ; + Caption = "Nr. fact.", ; + FontName = "Arial Narrow", ; + Left = 9, ; + mask = (replicate('9',12)), ; + Name = "Ck_nr_fact", ; + TabIndex = 4, ; + Top = 43, ; + ZOrderSet = 7 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 175, ; + Name = "Cmd_cauta1", ; + TabIndex = 34, ; + Top = 39, ; + ZOrderSet = 9 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 265, ; + Name = "Cmd_reset1", ; + TabIndex = 45, ; + Top = 39, ; + ZOrderSet = 10 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_facturi' AS _grdbase WITH ; + ColumnCount = 3, ; + DeleteMark = .F., ; + Height = 385, ; + Left = 9, ; + Name = "grid_facturi", ; + Panel = 1, ; + RecordSource = "cFactGaran", ; + Top = 74, ; + Width = 340, ; + Column1.ControlSource = "nract", ; + Column1.Name = "Column1", ; + Column2.ControlSource = "dataact", ; + Column2.Name = "Column2", ; + Column3.ControlSource = "valctva", ; + Column3.Format = "rk", ; + Column3.InputMask = (get_mask(20,gnPC)), ; + Column3.Name = "Column3", ; + Column3.Width = 156 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_facturi.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. fact. ", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data fact.", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare cu TVA", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru = pcFiltru + IF EMPTY(lcFiltru) + lcFiltru = poFactGaran.ca_baza1.cfiltru + ENDIF + + save_grid_tag(thisform.grid_Facturi) + + poFactGaran.ca_baza1.cfiltru = lcFiltru + poFactGaran.ca_baza1.afisare() + restore_grid_tag(thisform.grid_Facturi) + IF RECCOUNT('cFactGaran')>0 + thisform.grid_Facturi.SetFocus() + ENDIF + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru = "" + + If This.ck_nr_fact.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_nr_fact.filtru + Endif + If This.ck_data_fact.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_data_fact.filtru + Endif + + Do Case + Case gnParametru_prog=1 + lcFiltru = [ and extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna ]+; + [ and id_part = ] + Alltrim(Str(goContract.id_part))+; + [ and id_ctr = ] + Alltrim(Str(goContract.id_ctr))+; + [ and cont = '4111' ]+ lcFiltru + Case gnParametru_prog=2 + lcFiltru = [ and extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna ]+; + [ and id_part = ] + Alltrim(Str(goContract.id_part))+; + [ and id_ctr = ] + Alltrim(Str(goContract.id_ctr))+; + [ and (cont = '401' or cont='404') ]+ lcFiltru + Otherwise + lcFiltru = [] + Endcase + + lcFiltru = Substr(lcFiltru,6) + + Thisform.actualizeaza_grid1(lcFiltru) + Thisform.grid_facturi.SetFocus() + + ENDPROC + + PROCEDURE do_reset + With This + For i=1 To .Objects.Count + If Upper(.Objects(i).BaseClass)='CHECKBOX' + .Objects(i).Value=0 + Endif + Endfor + ENDWITH + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_incasari AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_incasari" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column6.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column6.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column7.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_incasari.Column7.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + + * + BorderStyle = 3 + cgridsortlist = grid_incasari + DoCreate = .T. + Height = 548 + Name = "frm_incasari" + Width = 690 + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 691 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 629 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 62 + Lb_titlu_alb_b121.Caption = "Încasãri" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 660 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 468 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 6 + * + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 630, ; + Name = "But_listare1", ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_incasari' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 7, ; + DeleteMark = .F., ; + GridLineColor = 196,196,196, ; + Height = 500, ; + Left = 9, ; + Name = "grid_incasari", ; + Panel = 1, ; + RecordSource = "cIncasari", ; + Top = 38, ; + Width = 671, ; + Column1.BackColor = 255,255,255, ; + Column1.ControlSource = "nract", ; + Column1.Name = "Column1", ; + Column1.Width = 79, ; + Column2.BackColor = 255,255,255, ; + Column2.ControlSource = "ttod(dataact)", ; + Column2.Name = "Column2", ; + Column3.BackColor = 255,255,255, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "fel", ; + Column3.Name = "Column3", ; + Column3.Width = 84, ; + Column4.BackColor = 255,255,255, ; + Column4.ColumnOrder = 5, ; + Column4.ControlSource = "suma", ; + Column4.Format = "rk", ; + Column4.InputMask = (get_mask(20,gnPC)), ; + Column4.Name = "Column4", ; + Column4.Width = 110, ; + Column5.BackColor = 255,255,255, ; + Column5.ColumnOrder = 6, ; + Column5.ControlSource = "pereche", ; + Column5.Format = "rk", ; + Column5.InputMask = "99999999999999", ; + Column5.Name = "Column5", ; + Column5.Width = 93, ; + Column6.BackColor = 255,255,255, ; + Column6.ColumnOrder = 7, ; + Column6.ControlSource = "contract", ; + Column6.Name = "Column6", ; + Column6.Width = 86, ; + Column7.BackColor = 255,255,255, ; + Column7.ColumnOrder = 3, ; + Column7.ControlSource = "fdoc", ; + Column7.Name = "Column7", ; + Column7.Width = 97 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_incasari.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. Doc.", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_incasari.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data Act", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_incasari.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Fel incasare", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_incasari.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Suma", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_incasari.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Doc. incasat", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_incasari.Column6.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Contract", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column6.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_incasari.Column7.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Fel document", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_incasari.Column7.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE inainte_de_do_listare + Private pcTitlu + Do Case + Case gnParametru_prog = 1 + pcTitlu = 'Încasãri de la clientul ' + Alltrim(Upper(goContract.denumire)) + Case gnParametru_prog = 2 + pcTitlu = 'Plãþi cãtre furnizorul ' + Alltrim(Upper(goContract.denumire)) + Endcase + Thisform.AlwaysOnTop = .F. + goExport.export2frx(Thisform.grid_incasari.RecordSource,[rIncasari]) + Thisform.AlwaysOnTop = .T. + + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_ireg_parteneri AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cfdoc.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cfdoc.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDataAct.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDataAct.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDataScad.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDataScad.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDataireg.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDataireg.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNrAct.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNrAct.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNume.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNume.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotDeb.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotDeb.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotCred.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotCred.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSoldFinal.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSoldFinal.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotDebVal.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotDebVal.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotCredVal.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cTotCredVal.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSoldVal.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSoldVal.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cAcont.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cAcont.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatia.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatia.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNrord.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNrord.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cnresp.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cnresp.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDebit.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cDebit.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cCredit.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cCredit.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cValDebit.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cValDebit.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cValCredit.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cValCredit.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNume_val.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cNume_val.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cCurs.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cCurs.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecDeb.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecDeb.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecCred.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecCred.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatia4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatia4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatia5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatia5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cVenChelt.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cVenChelt.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cCod.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cCod.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cId_fact.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cId_fact.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cId_set.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cId_set.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cId_part.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cId_part.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.Column32.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.Column32.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecValDeb.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecValDeb.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecValCred.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cPrecValCred.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.Column35.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.Column35.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSerie_act.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSerie_act.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cProcentTVA.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cProcentTVA.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatieTVA.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cExplicatieTVA.combo1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSucursala.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid1.cSucursala.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_excel1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cb_nom_valute1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="oMenuShortcut" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdIncasPl" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_start_criterii1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_scadente" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_reset_criterii1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Lb_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Lb_simplu2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text1" UniqueID="" Timestamp="" /> + + * + *m: actualizeaza_totaluri + *m: butapend + *m: butdrept + *m: corderby_assign + *m: filtre + *m: incaspl + *m: initializare + *m: ist_deb_cred + *m: notacontab + *m: plati + *m: salariati + *p: casc + *p: ccont + *p: cnewvalue + *p: coldvalue + *p: cont + *p: corderby + *p: cseparator + *p: fisier + *p: lactiv + *p: leroare + *p: lmodificare_totaluri + *p: lmodificata + *p: lvaluta + *p: ncreditval + *p: ndebitval + *p: nmodificata + *p: ntotcredit + *p: ntotdebit + *p: ntotsold + *p: ntotsoldval + * + + * + BorderStyle = 1 + casc = ASC + cbuton2 = but_listare1;but_listare2;but_listare3 + ccont = + cgridsortlist = grid1 + cnewvalue = + coldvalue = + cont = 0 + corderby = dataact + cseparator = . + DoCreate = .T. + filtru_pretty_ro = + fisier = '' + Height = 528 + lactiv = .F. + leroare = .F. + lmodificare_totaluri = .F. + lmodificata = .F. + lvaluta = .F. + Name = "frm_ireg_parteneri" + ncreditval = 0 + ndebitval = 0 + nmodificata = 0 + ntotcredit = 0 + ntotdebit = 0 + ntotsold = 0 + ntotsoldval = 0 + Width = 793 + _memberdata = + + + _shape1.Anchor = 11 + _shape1.Name = "_shape1" + _shape1.Width = 792 + _shape1.ZOrderSet = 3 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 642 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 151 + _shape2.ZOrderSet = 4 + Lb_titlu_alb_b121.Caption = "REGISTRUL" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 30 + Lb_titlu_alb_b121.ZOrderSet = 5 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 762 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 29 + BUT_TERMIN1.Top = 1 + BUT_TERMIN1.ZOrderSet = 6 + Gridsort1.Left = 378 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 49 + * + + ADD OBJECT 'But_excel1' AS but_excel WITH ; + Anchor = 9, ; + Left = 733, ; + Name = "But_excel1", ; + TabIndex = 28, ; + Top = 1, ; + ZOrderSet = 11 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 703, ; + Name = "But_listare1", ; + TabIndex = 25, ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_reset_criterii1' AS but_reset_criterii WITH ; + Anchor = 9, ; + Left = 642, ; + Name = "But_reset_criterii1", ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\ocriterii.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_start_criterii1' AS but_start_criterii WITH ; + Anchor = 9, ; + caction = , ; + Height = 27, ; + Left = 672, ; + Name = "But_start_criterii1", ; + Picture = ..\comun\grafice\find_sus.bmp, ; + Style = 0, ; + Top = 1, ; + Width = 31 + *< END OBJECT: ClassLib="..\comun\clase\ocriterii.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cb_nom_valute1' AS cb_nom_valute WITH ; + Anchor = 8, ; + Left = 378, ; + Name = "Cb_nom_valute1", ; + TabIndex = 35, ; + Top = 93, ; + ZOrderSet = 43 + *< END OBJECT: ClassLib="..\comun\clase\oparteneri.vcx" BaseClass="combobox" /> + + ADD OBJECT 'Ck_scadente' AS ck_filtru_text WITH ; + Alignment = 0, ; + Anchor = 3, ; + AutoSize = .T., ; + camp_nume = , ; + Caption = "Scadente", ; + FontName = "Arial Narrow", ; + Left = 12, ; + Name = "Ck_scadente", ; + TabIndex = 9, ; + ToolTipText = "Numele responsabilului", ; + Top = 34, ; + ZOrderSet = 24 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'cmdIncasPl' AS commandbutton WITH ; + AutoSize = .T., ; + Caption = "Plati / Incasari", ; + Height = 27, ; + Left = 446, ; + Name = "cmdIncasPl", ; + TabIndex = 49, ; + Top = 2, ; + Visible = .F., ; + Width = 95, ; + ZOrderSet = 46 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Caption = "Note contabile", ; + Height = 27, ; + Left = 308, ; + Name = "Command1", ; + TabIndex = 48, ; + Top = 2, ; + Visible = .F., ; + Width = 84, ; + ZOrderSet = 45 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Command2' AS commandbutton WITH ; + Caption = "\ + + ADD OBJECT 'Command3' AS commandbutton WITH ; + AutoSize = .T., ; + Caption = "Istoric", ; + Height = 27, ; + Left = 394, ; + Name = "Command3", ; + TabIndex = 52, ; + Top = 2, ; + Visible = .F., ; + Width = 51, ; + ZOrderSet = 49 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'grid1' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 39, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 377, ; + Left = 3, ; + Name = "grid1", ; + Panel = 1, ; + ReadOnly = .T., ; + TabIndex = 22, ; + Top = 132, ; + Width = 786, ; + ZOrderSet = 7, ; + Column1.ColumnOrder = 3, ; + Column1.ControlSource = "fdoc", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "cfdoc", ; + Column1.ReadOnly = .T., ; + Column1.Visible = .T., ; + Column1.Width = 70, ; + Column2.ColumnOrder = 4, ; + Column2.ControlSource = "dataAct", ; + Column2.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column2.FontName = "Arial Narrow", ; + Column2.Name = "cDataAct", ; + Column2.ReadOnly = .T., ; + Column2.Visible = .T., ; + Column2.Width = 50, ; + Column3.ColumnOrder = 5, ; + Column3.ControlSource = "dataScad", ; + Column3.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column3.FontName = "Arial Narrow", ; + Column3.Name = "cDataScad", ; + Column3.ReadOnly = .T., ; + Column3.Visible = .T., ; + Column3.Width = 58, ; + Column4.ColumnOrder = 6, ; + Column4.ControlSource = "dataIreg", ; + Column4.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "cDataireg", ; + Column4.ReadOnly = .T., ; + Column4.Visible = .T., ; + Column4.Width = 51, ; + Column5.ColumnOrder = 8, ; + Column5.ControlSource = "nrAct", ; + Column5.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "cNrAct", ; + Column5.ReadOnly = .T., ; + Column5.Visible = .T., ; + Column5.Width = 64, ; + Column6.ColumnOrder = 9, ; + Column6.ControlSource = "nume", ; + Column6.FontName = "Arial Narrow", ; + Column6.Name = "cNume", ; + Column6.ReadOnly = .T., ; + Column6.Visible = .T., ; + Column6.Width = 160, ; + Column7.ColumnOrder = 10, ; + Column7.ControlSource = "debit+precdeb", ; + Column7.FontName = "Arial Narrow", ; + Column7.InputMask = (get_mask(12,gnPC)), ; + Column7.Name = "cTotDeb", ; + Column7.ReadOnly = .T., ; + Column7.Visible = .T., ; + Column7.Width = 73, ; + Column8.ColumnOrder = 11, ; + Column8.ControlSource = "credit+preccred", ; + Column8.FontName = "Arial Narrow", ; + Column8.InputMask = (get_mask(12,gnPC)), ; + Column8.Name = "cTotCred", ; + Column8.ReadOnly = .T., ; + Column8.Visible = .T., ; + Column8.Width = 72, ; + Column9.ColumnOrder = 13, ; + Column9.ControlSource = "(precdeb+debit)-(preccred+credit)", ; + Column9.DynamicBackColor = "RGB(187,235,255)", ; + Column9.FontName = "Arial Narrow", ; + Column9.InputMask = (get_mask(12,gnPC)), ; + Column9.Name = "cSoldFinal", ; + Column9.ReadOnly = .T., ; + Column9.Visible = .T., ; + Column9.Width = 77, ; + Column10.ColumnOrder = 12, ; + Column10.ControlSource = "valdebit+precValDeb", ; + Column10.FontName = "Arial Narrow", ; + Column10.InputMask = (get_mask(12,gnPval)), ; + Column10.Name = "cTotDebVal", ; + Column10.ReadOnly = .T., ; + Column10.Visible = .T., ; + Column10.Width = 87, ; + Column11.ColumnOrder = 14, ; + Column11.ControlSource = "valcredit+precValCred", ; + Column11.FontName = "Arial Narrow", ; + Column11.InputMask = (get_mask(12,gnPval)), ; + Column11.Name = "cTotCredVal", ; + Column11.ReadOnly = .T., ; + Column11.Visible = .T., ; + Column11.Width = 75, ; + Column12.ColumnOrder = 15, ; + Column12.ControlSource = "(precValDeb+valDebit)-(precValCred+valCredit)", ; + Column12.DynamicBackColor = "RGB(187,235,255)", ; + Column12.FontName = "Arial Narrow", ; + Column12.InputMask = (get_mask(12,gnPval)), ; + Column12.Name = "cSoldVal", ; + Column12.ReadOnly = .T., ; + Column12.Visible = .T., ; + Column13.ColumnOrder = 2, ; + Column13.ControlSource = "acont", ; + Column13.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column13.FontName = "Arial Narrow", ; + Column13.Name = "cAcont", ; + Column13.ReadOnly = .T., ; + Column13.Visible = .T., ; + Column13.Width = 32, ; + Column14.ColumnOrder = 16, ; + Column14.ControlSource = "explicatia", ; + Column14.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column14.FontName = "Arial Narrow", ; + Column14.Name = "cExplicatia", ; + Column14.ReadOnly = .T., ; + Column14.Visible = .T., ; + Column14.Width = 100, ; + Column15.ColumnOrder = 17, ; + Column15.ControlSource = "nrord", ; + Column15.FontName = "Arial Narrow", ; + Column15.Name = "cNrord", ; + Column15.ReadOnly = .T., ; + Column15.Visible = .T., ; + Column15.Width = 78, ; + Column16.ColumnOrder = 19, ; + Column16.ControlSource = "nresp", ; + Column16.FontName = "Arial Narrow", ; + Column16.Name = "cnresp", ; + Column16.ReadOnly = .T., ; + Column16.Visible = .T., ; + Column16.Width = 139, ; + Column17.ColumnOrder = 20, ; + Column17.ControlSource = "debit", ; + Column17.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column17.FontName = "Arial Narrow", ; + Column17.InputMask = (get_mask(12,gnPC)), ; + Column17.Name = "cDebit", ; + Column17.ReadOnly = .T., ; + Column17.Visible = .T., ; + Column18.ColumnOrder = 21, ; + Column18.ControlSource = "credit", ; + Column18.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column18.FontName = "Arial Narrow", ; + Column18.InputMask = (get_mask(12,gnPC)), ; + Column18.Name = "cCredit", ; + Column18.ReadOnly = .T., ; + Column18.Visible = .T., ; + Column19.ColumnOrder = 22, ; + Column19.ControlSource = "valDebit", ; + Column19.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column19.FontName = "Arial Narrow", ; + Column19.InputMask = (get_mask(12,gnPval)), ; + Column19.Name = "cValDebit", ; + Column19.ReadOnly = .T., ; + Column19.Visible = .T., ; + Column20.ColumnOrder = 23, ; + Column20.ControlSource = "valcredit", ; + Column20.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column20.FontName = "Arial Narrow", ; + Column20.InputMask = (get_mask(12,gnPval)), ; + Column20.Name = "cValCredit", ; + Column20.ReadOnly = .T., ; + Column20.Visible = .T., ; + Column21.ColumnOrder = 24, ; + Column21.ControlSource = "nume_val", ; + Column21.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column21.FontName = "Arial Narrow", ; + Column21.Name = "cNume_val", ; + Column21.ReadOnly = .T., ; + Column21.Visible = .T., ; + Column21.Width = 35, ; + Column22.ColumnOrder = 25, ; + Column22.ControlSource = "curs", ; + Column22.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column22.FontName = "Arial Narrow", ; + Column22.InputMask = (get_mask(12,gnPCurs2)), ; + Column22.Name = "cCurs", ; + Column22.ReadOnly = .T., ; + Column22.Visible = .T., ; + Column22.Width = 68, ; + Column23.ColumnOrder = 26, ; + Column23.ControlSource = "precDeb", ; + Column23.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column23.FontName = "Arial Narrow", ; + Column23.InputMask = (get_mask(12,gnPC)), ; + Column23.Name = "cPrecDeb", ; + Column23.ReadOnly = .T., ; + Column23.Visible = .T., ; + Column24.ColumnOrder = 27, ; + Column24.ControlSource = "precCred", ; + Column24.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column24.FontName = "Arial Narrow", ; + Column24.InputMask = (get_mask(12,gnPC)), ; + Column24.Name = "cPrecCred", ; + Column24.ReadOnly = .T., ; + Column24.Visible = .T., ; + Column25.ColumnOrder = 30, ; + Column25.ControlSource = "explicatia4", ; + Column25.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column25.FontName = "Arial Narrow", ; + Column25.Name = "cExplicatia4", ; + Column25.ReadOnly = .T., ; + Column25.Visible = .T., ; + Column26.ColumnOrder = 31, ; + Column26.ControlSource = "explicatia5", ; + Column26.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column26.FontName = "Arial Narrow", ; + Column26.Name = "cExplicatia5", ; + Column26.ReadOnly = .T., ; + Column26.Visible = .T., ; + Column27.ColumnOrder = 32, ; + Column27.ControlSource = "venChelt", ; + Column27.FontName = "Arial Narrow", ; + Column27.Name = "cVenChelt", ; + Column27.ReadOnly = .T., ; + Column27.Visible = .T., ; + Column27.Width = 61, ; + Column28.ColumnOrder = 33, ; + Column28.ControlSource = "cod", ; + Column28.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column28.FontName = "Arial Narrow", ; + Column28.Name = "cCod", ; + Column28.ReadOnly = .T., ; + Column28.Visible = .T., ; + Column28.Width = 51, ; + Column29.ColumnOrder = 34, ; + Column29.ControlSource = "id_fact", ; + Column29.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column29.FontName = "Arial Narrow", ; + Column29.Name = "cId_fact", ; + Column29.ReadOnly = .T., ; + Column29.Visible = .T., ; + Column29.Width = 53, ; + Column30.ColumnOrder = 35, ; + Column30.ControlSource = "id_set", ; + Column30.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column30.FontName = "Arial Narrow", ; + Column30.Name = "cId_set", ; + Column30.ReadOnly = .T., ; + Column30.Visible = .T., ; + Column30.Width = 50, ; + Column31.ColumnOrder = 36, ; + Column31.ControlSource = "id_part", ; + Column31.FontName = "Arial Narrow", ; + Column31.Name = "cId_part", ; + Column31.ReadOnly = .T., ; + Column31.Visible = .T., ; + Column31.Width = 71, ; + Column32.ColumnOrder = 1, ; + Column32.ControlSource = "cont", ; + Column32.FontName = "Arial Narrow", ; + Column32.Name = "Column32", ; + Column32.ReadOnly = .T., ; + Column32.Width = 29, ; + Column33.ColumnOrder = 28, ; + Column33.ControlSource = "precvaldeb", ; + Column33.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column33.FontName = "Arial Narrow", ; + Column33.InputMask = (get_mask(12,gnPval)), ; + Column33.Name = "cPrecValDeb", ; + Column33.ReadOnly = .T., ; + Column33.Width = 80, ; + Column34.ColumnOrder = 29, ; + Column34.ControlSource = "precvalcred", ; + Column34.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column34.FontName = "Arial Narrow", ; + Column34.InputMask = (get_mask(12,gnPval)), ; + Column34.Name = "cPrecValCred", ; + Column34.ReadOnly = .T., ; + Column34.Width = 84, ; + Column35.ColumnOrder = 18, ; + Column35.ControlSource = "contract", ; + Column35.FontName = "Arial Narrow", ; + Column35.Name = "Column35", ; + Column35.ReadOnly = .T., ; + Column36.ColumnOrder = 7, ; + Column36.ControlSource = "serie_act", ; + Column36.FontName = "Arial Narrow", ; + Column36.Name = "cSerie_act", ; + Column36.ReadOnly = .T., ; + Column36.Width = 53, ; + Column37.ControlSource = "proc_tva", ; + Column37.FontName = "Arial Narrow", ; + Column37.Name = "cProcentTVA", ; + Column37.ReadOnly = .T., ; + Column38.ControlSource = "explicatie_TVA", ; + Column38.DynamicBackColor = "IIF(THIS.READONLY,RGB(255,255,255),RGB(252,255,183))", ; + Column38.FontName = "Arial Narrow", ; + Column38.Name = "cExplicatieTVA", ; + Column38.ReadOnly = .T., ; + Column38.Sparse = .T., ; + Column38.Width = 148, ; + Column39.ControlSource = "sucursala", ; + Column39.FontName = "Arial Narrow", ; + Column39.Name = "cSucursala", ; + Column39.ReadOnly = .T., ; + Column39.Width = 151 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid1.cAcont.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Analitic", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cAcont.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cCod.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cod", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cCod.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cCredit.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Credit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cCredit.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cCurs.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Curs de schimb", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cCurs.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cDataAct.Header1' AS header WITH ; + Alignment = 2, ; + BackColor = 212,208,200, ; + Caption = "Data Act", ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,255, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cDataAct.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cDataireg.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data inreg", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cDataireg.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cDataScad.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data scadenta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cDataScad.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cDebit.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Debit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cDebit.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cExplicatia.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatia", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cExplicatia.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cExplicatia4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatia 4", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cExplicatia4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cExplicatia5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatia 5", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cExplicatia5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cExplicatieTVA.combo1' AS combobox WITH ; + BoundColumn = 1, ; + BoundTo = .T., ; + FontName = "Arial Narrow", ; + Height = 24, ; + Left = 30, ; + Name = "combo1", ; + ReadOnly = .T., ; + RowSource = "jtva_temp.denumire", ; + RowSourceType = 6, ; + SpecialEffect = 1, ; + Top = 23, ; + Width = 100 + *< END OBJECT: BaseClass="combobox" /> + + ADD OBJECT 'grid1.cExplicatieTVA.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Explicatie TVA", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cfdoc.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Fel Doc", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cfdoc.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cId_fact.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Id fact", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cId_fact.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cId_part.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Id Partener", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cId_part.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cId_set.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Id set", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cId_set.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cNrAct.Header1' AS header WITH ; + Alignment = 2, ; + BackColor = 212,208,200, ; + Caption = "Nr. Doc.", ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,255, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cNrAct.Text1' AS textbox WITH ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cnresp.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Responsabil", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cnresp.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cNrord.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Lucrare/Comanda", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cNrord.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cNume.Header1' AS header WITH ; + Alignment = 2, ; + BackColor = 192,192,192, ; + Caption = "Nume", ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,255, ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cNume.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cNume_val.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cNume_val.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.Column32.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cont", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.Column32.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.Column35.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Contract", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.Column35.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cPrecCred.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Prec. Credit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cPrecCred.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cPrecDeb.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Prec. Debit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cPrecDeb.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cPrecValCred.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Prec. Valuta Credit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cPrecValCred.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cPrecValDeb.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Prec. Valuta Debit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cPrecValDeb.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cProcentTVA.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Procent TVA", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cProcentTVA.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ControlSource = "proc_tva", ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cSerie_act.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Serie Doc.", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cSerie_act.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cSoldFinal.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Sold final", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cSoldFinal.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cSoldVal.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Sold valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cSoldVal.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cSucursala.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Sucursala", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cSucursala.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cTotCred.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Total Credit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cTotCred.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cTotCredVal.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Total Credit Valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cTotCredVal.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cTotDeb.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Total Debit", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cTotDeb.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cTotDebVal.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Total Debit Valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cTotDebVal.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cValCredit.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Credit Valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cValCredit.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cValDebit.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Debit Valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cValDebit.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid1.cVenChelt.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Venituri/Chelt.", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid1.cVenChelt.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T., ; + SelectedBackColor = 0,64,128, ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label2' AS label WITH ; + Anchor = 8, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = (thisform.grid1.cTotDeb.header1.caption), ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 516, ; + Name = "Label2", ; + TabIndex = 42, ; + Top = 40, ; + Width = 45, ; + ZOrderSet = 38 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + Anchor = 8, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "TOTAL", ; + FontBold = .T., ; + FontName = "Times New Roman", ; + FontSize = 12, ; + Height = 22, ; + Left = 381, ; + Name = "Label3", ; + TabIndex = 34, ; + Top = 40, ; + Width = 55, ; + ZOrderSet = 31 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Anchor = 8, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = (thisform.grid1.cTotCred.header1.caption), ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 623, ; + Name = "Label4", ; + TabIndex = 43, ; + Top = 40, ; + Width = 49, ; + ZOrderSet = 39 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + Anchor = 8, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Sold", ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 762, ; + Name = "Label5", ; + TabIndex = 44, ; + Top = 40, ; + Width = 21, ; + ZOrderSet = 40 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + Anchor = 9, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = (thisform.grid1.cTotDebVal.header1.caption), ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 478, ; + Name = "Label6", ; + TabIndex = 31, ; + Top = 76, ; + Width = 2, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label8' AS label WITH ; + Anchor = 8, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = (thisform.grid1.cTotCredVal.header1.caption), ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 594, ; + Name = "Label8", ; + TabIndex = 46, ; + Top = 77, ; + Width = 78, ; + ZOrderSet = 42 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + Anchor = 8, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Sold Valuta", ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 733, ; + Name = "Label9", ; + TabIndex = 45, ; + Top = 77, ; + Width = 50, ; + ZOrderSet = 41 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Lb_simplu1' AS lb_simplu WITH ; + Anchor = 8, ; + Caption = "Valuta", ; + FontName = "Arial Narrow", ; + Left = 378, ; + Name = "Lb_simplu1", ; + TabIndex = 33, ; + Top = 76, ; + ZOrderSet = 30 + *< END OBJECT: ClassLib="..\comun\clase\lb.vcx" BaseClass="label" /> + + ADD OBJECT 'Lb_simplu2' AS lb_simplu WITH ; + Anchor = 10, ; + Caption = ' Pentru a vizualiza documentele salvate in baza de date, trebuie sa faceti click dreapta pe coloana "Nr.Doc." ( doar inregistrarile colorate au atasamente ).', ; + Height = 47, ; + Left = 13, ; + Name = "Lb_simplu2", ; + Top = 58, ; + Width = 320, ; + WordWrap = .T. + *< END OBJECT: ClassLib="..\comun\clase\lb.vcx" BaseClass="label" /> + + ADD OBJECT 'oMenuShortcut' AS menulib WITH ; + Left = 191, ; + Name = "oMenuShortcut", ; + TabIndex = 47, ; + Top = 10, ; + ZOrderSet = 44 + *< END OBJECT: ClassLib="..\comun\clase\utility.vcx" BaseClass="container" /> + + ADD OBJECT 'Shape2' AS shape WITH ; + Anchor = 8, ; + BackStyle = 0, ; + Height = 88, ; + Left = 376, ; + Name = "Shape2", ; + SpecialEffect = 0, ; + Top = 36, ; + Width = 411, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Text1' AS textbox WITH ; + Alignment = 1, ; + Anchor = 8, ; + ControlSource = "Thisform.ntotdebit", ; + FontName = "Arial Narrow", ; + Format = "r", ; + Height = 23, ; + InputMask = (get_mask(12,gnPC)), ; + Left = 453, ; + Name = "Text1", ; + ReadOnly = .T., ; + TabIndex = 36, ; + Top = 55, ; + Width = 108, ; + ZOrderSet = 32 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text2' AS textbox WITH ; + Alignment = 1, ; + Anchor = 8, ; + ControlSource = "Thisform.ntotcredit", ; + FontName = "Arial Narrow", ; + Format = "r", ; + Height = 23, ; + InputMask = (get_mask(12,gnPC)), ; + Left = 564, ; + Name = "Text2", ; + ReadOnly = .T., ; + TabIndex = 37, ; + Top = 55, ; + Width = 108, ; + ZOrderSet = 33 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text3' AS textbox WITH ; + Alignment = 1, ; + Anchor = 8, ; + ControlSource = "Thisform.ntotSold", ; + FontName = "Arial Narrow", ; + Format = "r", ; + Height = 23, ; + InputMask = (get_mask(12,gnPC)), ; + Left = 675, ; + Name = "Text3", ; + ReadOnly = .T., ; + TabIndex = 38, ; + Top = 55, ; + Width = 108, ; + ZOrderSet = 34 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text4' AS textbox WITH ; + Alignment = 1, ; + Anchor = 8, ; + FontName = "Arial Narrow", ; + Format = "r", ; + Height = 23, ; + InputMask = (get_mask(12,gnPval)), ; + Left = 453, ; + Name = "Text4", ; + ReadOnly = .T., ; + TabIndex = 39, ; + Top = 94, ; + Width = 108, ; + ZOrderSet = 35 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text5' AS textbox WITH ; + Alignment = 1, ; + Anchor = 8, ; + FontName = "Arial Narrow", ; + Format = "r", ; + Height = 23, ; + InputMask = (get_mask(12,gnPval)), ; + Left = 564, ; + Name = "Text5", ; + ReadOnly = .T., ; + TabIndex = 40, ; + Top = 94, ; + Width = 108, ; + ZOrderSet = 36 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text6' AS textbox WITH ; + Alignment = 1, ; + Anchor = 8, ; + FontName = "Arial Narrow", ; + Format = "r", ; + Height = 23, ; + InputMask = (get_mask(12,gnPval)), ; + Left = 675, ; + Name = "Text6", ; + ReadOnly = .T., ; + TabIndex = 41, ; + Top = 94, ; + Width = 108, ; + ZOrderSet = 37 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Activate + Thisform.WindowState=2 + + tw1=Thisform.Width + tl1=Thisform.Height + + tw2=Thisform.Width + tl2=Thisform.Height + + gw1=Thisform.grid1.Width + gl1=Thisform.grid1.Height + + Thisform.grid1.Width = Round(gw1*tw2/tw1,0) + Thisform.grid1.Height = Round(gl1*tl2/tl1,0) + + lnlung1 = Thisform._shape1.Width + Thisform._shape1.Width = Round(lnlung1*tw2/tw1,0) + lndif = Thisform._shape1.Width-lnlung1 + Thisform._shape2.Left = Thisform._shape2.Left+lndif + ** + + Thisform.Paint + Thisform.Refresh + + Set Safety Off + Select actcv + ENDPROC + + PROCEDURE actualizeaza_grid1 + Lparameters tcFiltru + Local lcFiltru,llCautareNoua + + If Empty(tcFiltru) + lcFiltru = poireg_parteneri.ca_baza1.cfiltru + llCautareNoua=.F. + Else + lcFiltru = tcFiltru + llCautareNoua=.T. + Endif + + + lcOrder= This.corderby + " " + This.Casc + + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + save_grid_tag(Thisform.grid1) + + *!* IF USED("actcv") + *!* USE IN actcv + *!* ENDIF + + poireg_parteneri.ca_baza1.cfiltru = lcFiltru + poireg_parteneri.ca_baza1.corder = lcOrder + poireg_parteneri.ca_baza1.afisare() + + *!* STRTOFILE(poireg_parteneri.ca_baza1.selectcmd,"c:\sele.txt") + + *!* USE DBF("v_ireg_parteneri") IN 0 AGAIN ALIAS actcv + + restore_grid_tag(Thisform.grid1) + Thisform.MousePointer= 0 + Thisform.LockScreen=.F. + + *!* If !Thisform.eactan + *!* Do nrord With "ACTJUR" + *!* *!* else + *!* *!* thisform.clb_tx_simplu1.visible=iif(thisform.ck_total.value=0,.F.,.T.) + *!* Endif + + *!* If Thisform.ck_perioada.Value=1 + *!* With Thisform.ck_perioada + *!* If .cvaloare1=Thisform.ck_perioada.cvaloare2 + *!* Thisform.lb_titlu_alb_b121.Caption=Substr(Thisform.lb_titlu_alb_b121.Caption,1,At("*",Thisform.lb_titlu_alb_b121.Caption,1))+; + *!* " "+.cvaloare1 + *!* Else + *!* Thisform.lb_titlu_alb_b121.Caption=Substr(Thisform.lb_titlu_alb_b121.Caption,1,At("*",Thisform.lb_titlu_alb_b121.Caption,1))+; + *!* " "+.cvaloare1+" - "+.cvaloare2 + *!* Endif + *!* Endwith + *!* Else + *!* Thisform.lb_titlu_alb_b121.Caption=Substr(Thisform.lb_titlu_alb_b121.Caption,1,At("*",Thisform.lb_titlu_alb_b121.Caption,1))+; + *!* " "+Padl(Alltrim(Str(gnluna)),2,"0")+"/"+Alltrim(Str(gnAn)) + *!* Endif + &&===========actualizeaza_totaluri + *!* Select actcv + *!* Sum (debit+precdeb) To Thisform.ntotdebit + *!* SUM (credit+preccred) TO thisform.ntotcredit + + *!* Sum (valdebit+precvaldeb) To Thisform.ndebitval + *!* SUM (valcredit+precvalcred) TO thisform.ncreditval + *!* IF tlActiv + *!* SUM ((precdeb + debit) - ( preccred + credit)) TO thisform.ntotsold + *!* SUM ((precvaldeb + valdebit) - ( precvalcred + valcredit)) TO thisform.ntotsoldval + *!* ELSE + *!* SUM ((preccred + credit) - (precdeb + debit)) TO thisform.ntotsold + *!* SUM (( precvalcred + valcredit) - (precvaldeb + valdebit)) TO thisform.ntotsoldval + *!* ENDIF + &&==================== + Thisform.cb_nom_valute1.initializare(llCautareNoua) + Thisform.actualizeaza_totaluri() + + Select actcv + *!* If Thisform.clb_tx_simplu1.Visible=.T. + *!* Sum suma To Thisform.nsuma + *!* Endif + *!* If Thisform.ck_sters.Visible=.T. + + *!* Endif + thisform.griD1.SetFocus + *!* Thisform.clb_tx_simplu1.text_simplu1.Refresh + + ENDPROC + + PROCEDURE actualizeaza_totaluri + LOCAL lcValuta,lcPoz + lcValuta=ALLTRIM(THISFORM.cb_nom_valute1.VALUE) + + SELECT actcv + lnPoz=IIF(RECCOUNT('actcv')>0,RECNO(),0) + + *!* SELECT * FROM actcv INTO TABLE c:\actcv_.DBF + SUM (debit+precdeb),(credit+preccred) TO THISFORM.ntotdebit,THISFORM.ntotcredit + IF TYPE('actcv.precvalcred')<>'U' AND TYPE('actcv.precvaldeb')<>'U' + SUM (valdebit+precvaldeb),(valcredit+precvalcred) TO THISFORM.ndebitval,THISFORM.ncreditval FOR nume_val=lcValuta + ENDIF + + IF THISFORM.lactiv + SUM ((precdeb + debit) - ( preccred + credit)) TO THISFORM.ntotsold + IF TYPE('actcv.precvalcred')<>'U' AND TYPE('actcv.precvaldeb')<>'U' + SUM ((precvaldeb + valdebit) - ( precvalcred + valcredit)) TO THISFORM.ntotsoldval FOR nume_val=lcValuta + ENDIF + ELSE + SUM ((preccred + credit) - (precdeb + debit)) TO THISFORM.ntotsold + IF TYPE('actcv.precvalcred')<>'U' AND TYPE('actcv.precvaldeb')<>'U' + SUM ((precvalcred + valcredit) - (precvaldeb + valdebit)) TO THISFORM.ntotsoldval FOR nume_val=lcValuta + ENDIF + ENDIF + + THISFORM.text1.REFRESH + THISFORM.text2.REFRESH + THISFORM.text3.REFRESH + THISFORM.text4.REFRESH + THISFORM.text5.REFRESH + THISFORM.text6.REFRESH + + IF RECCOUNT('actcv')>0 + SELECT actcv + GO lnPoz + ENDIF + + ENDPROC + + PROCEDURE butapend + If glLunaInchisa + RETURN + Endif + Local lcTitlu,lbMenu[4] + lcTitlu=Thisform.lb_titlu_alb_b121.Caption + + lbMenu="" + If Thisform.grid1.ReadOnly + *!* lbMenu[1]="\Alegeti partenerul ] + lcCont + [??lAdaugCorespondente=>1??cCont=>] + lcCont)) + IF !EMPTY(locauta.nume) + lnid_part=locauta.id_part + lcnume=ALLTRIM(locauta.nume) + ELSE + RETURN + ENDIF + + lcacont = [] + IF USED('crsacont') + USE IN crsacont + ENDIF + *!* lcSql=[select count(*) as aconturi from vplcont_analitic ]+; + *!* [where cont=']+ALLTRIM(THISFORM.CONT)+[' and an=]+ALLTRIM(STR(gnAn)) + lcSql=[select count(*) as aconturi from vplcont_analitic ]+; + [where cont=']+lcCont+[' and an=]+ALLTRIM(STR(gnAn)) + lnSucces = goExecutor.oExecute(lcSql,"crsacont") + IF lnSucces < 0 + lcTextEroare = goExecutor.cEroare + aMESSAGEBOX(lcTextEroare,0+48,"Eroare") + ENDIF + IF lnSucces > 0 AND crsacont.aconturi>0 + STORE "" TO locauta + *!* pcselect = ['select acont,explicatie FROM vplcont_analitic '+]+; + *!* ["where cont=']+ALLTRIM(THISFORM.CONT)+[' and an=]+ALLTRIM(STR(gnAn))+["] + pcselect = ['select acont,explicatie FROM vplcont_analitic '+]+; + ["where cont=']+lcCont+[' and an=]+ALLTRIM(STR(gnAn))+["] + pcfiltru = [1=2] + pcschema = [''] + pcorder = [acont] + pccoloane = [acont] + pcTitlu = [Alegeti contul analitic] + pcTitluColoane = [Acont,Explicatie] + locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane) + IF !EMPTY(locauta.acont) + lcacont=ALLTRIM(locauta.acont) + ELSE + IF gnButon=2 + RETURN + ELSE + lcacont="" + ENDIF + ENDIF + ENDIF + IF USED('crsacont') + USE IN crsacont + ENDIF + IF lnSucces > 0 + loValuta = caut_valuta() + lnIdValuta = IIF(!EMPTY(loValuta.id_valuta), loValuta.id_valuta, 0) + lcNumeValuta = IIF(!EMPTY(loValuta.nume_val), loValuta.nume_val, "") + *!* 17.10.2006 + *!* marius.mutu + IF EMPTY(loValuta.nume_val) OR EMPTY(loValuta.id_valuta) + loCauta = GetMonedaNationala() + lnIdValuta = loCauta.id_valuta + lcNumeValuta = ALLTRIM(locauta.nume_val) + ENDIF + ENDIF + IF lnSucces > 0 + loFdoc = caut_fdoc() + lnIdFdoc = IIF(!EMPTY(loFdoc.id_fdoc), loFdoc.id_fdoc, 0) + lcfdoc = IIF(!EMPTY(loFdoc.fel_document), loFdoc.fel_document, "") + ENDIF + IF lnSucces > 0 + loResp = caut_responsabil() + lnIdResp = IIF(!EMPTY(loResp.id_responsabil), loResp.id_responsabil, 0) + lcResp = IIF(!EMPTY(loResp.nume), loResp.nume, "") + ENDIF + + SELECT actcv + + APPEND BLANK + REPLACE CONT WITH lcCont && ALLTRIM(THISFORM.CONT) + REPLACE acont WITH lcacont + REPLACE id_ireg_part WITH 0 + REPLACE id_part WITH lnid_part + REPLACE nume WITH lcnume + REPLACE id_fdoc WITH 0 + REPLACE fdoc WITH lcfdoc + REPLACE id_fdoc WITH lnIdFdoc + REPLACE id_valuta WITH lnIdValuta + REPLACE id_responsabil WITH lnIdResp + REPLACE nresp WITH lcResp + REPLACE nume_val WITH lcNumeValuta + REPLACE id_responsabil WITH 0 + REPLACE id_lucrare WITH 0 + REPLACE id_fact WITH 0 + REPLACE id_act WITH 0 + REPLACE id_set WITH 0 + REPLACE id_venchelt WITH 0 + REPLACE cod WITH 0 + REPLACE id_sucursala WITH lnIdSucursala, sucursala WITH lcSucursala + + THISFORM.lmodificata=.T. + THISFORM.lvaluta=.F. + THISFORM.grid1.cfdoc.SETFOCUS() + *!* Else + *!* Thisform.grid1.SetFocus() + *!* Endif + + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru = "" + + *!* If m.nivel>1 + *!* lcFiltru = lcFiltru + [ AND ID_UTIL=]+ALLTRIM(STR(gnidutil))+[ ] + *!* ENDIF + + * nrdoc + *!* If Thisform.ck_nrdoc.Value=1 + *!* lcFiltru = lcFiltru + Thisform.ck_nrdoc.filtru + *!* Endif + *!* * responsabil + *!* If Thisform.ck_responsabil.Value=1 + *!* lcFiltru = lcFiltru + Thisform.ck_responsabil.filtru + *!* Endif + *!* * dataDoc + *!* If This.ck_dataDoc.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_dataDoc.filtru + *!* Endif + + *!* * datascad + *!* If This.ck_datascad.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_datascad.filtru + *!* Endif + + *!* * analitic + *!* If This.ck_analitic.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_analitic.filtru + *!* Endif + + *!* * cont + *!* If This.ck_cont.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_cont.filtru + *!* Endif + + *!* * firma + *!* If This.ck_firma.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_firma.filtru + *!* Endif + + *!* * venit_cheltuiala + *!* If This.ck_venchelt.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_venchelt.filtru + *!* ENDIF + + *!* * lucrare/comanda + *!* If This.ck_lucrare.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_lucrare.filtru + *!* ENDIF + + *!* * contract + *!* If This.ck_contract.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_contract.filtru + *!* Endif + + *!* * debit + *!* If Thisform.ck_debit.Value=1 + *!* lcFiltru = lcFiltru + Thisform.ck_debit.filtru + *!* Endif + + *!* * credit + *!* If Thisform.ck_credit.Value=1 + *!* lcFiltru = lcFiltru + Thisform.ck_credit.filtru + *!* Endif + + *!* * sold + *!* If This.ck_sold.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_sold.filtru + *!* Endif + + *!* * valuta + *!* If This.ck_valuta.Value = 1 + *!* lcFiltru = lcFiltru + Thisform.ck_valuta.filtru + *!* Endif + + *!* * explicatia + *!* If This.ck_explicatia.Value = 1 + *!* lcFiltru = lcFiltru + This.ck_explicatia.filtru + *!* ENDIF + + *!* * fel document + *!* If This.Ck_fel_doc.Value = 1 + *!* lcFiltru = lcFiltru + This.Ck_fel_doc.filtru + *!* ENDIF + + *!* *scadente + If This.Ck_scadente.Value = 1 + lcFiltru = lcFiltru + This.Ck_scadente.filtru + ENDIF + + *!* *explicatia4 + *!* IF this.ck_explicatia4.Value=1 + *!* lcFiltru = lcFiltru + this.ck_explicatia4.filtru + *!* ENDIF + + *ACHITATE + *!* If This.check3.Value = 1 + *!* If thisform.lActiv + *!* lcFiltru = lcFiltru + "and (i.precdeb + i.debit) - (i.preccred + i.credit) = 0" + *!* Else + *!* lcFiltru = lcFiltru + "and (i.preccred + i.credit) - (i.precdeb + i.debit) = 0" + *!* Endif + *!* Endif + + *!* *NEACHITATE + *!* If This.check4.Value = 1 + *!* If thisform.lActiv + *!* lcFiltru = lcFiltru + " and (i.precdeb + i.debit) - ( i.preccred + i.credit) <> 0" + *!* Else + *!* lcFiltru = lcFiltru + "and (i.preccred + i.credit) - (i.precdeb + i.debit) <> 0" + *!* Endif + *!* Endif + + *!* If This.check7.Value = 1 + *!* lcFiltru = lcFiltru + " and extract (year from i.datascad) =" + Alltrim(Str(gnAn)) + "and extract (month from i.datascad) = " + Alltrim(Str(gnLuna)) + *!* Endif + IF PEMSTATUS(thisform,"filtru_pretty",5) + else + thisform.AddProperty("filtru_pretty","") + endif + IF LEN(thisform.filtru_pretty)>0 + filtrutext=thisform.filtru_pretty + IF AT("AND",filtrutext)=1 + filtrutext=RIGHT(filtrutext,LEN(filtrutext)-4) + ENDIF + + lcFiltru=lcFiltru+" and ("+ALLTRIM(filtrutext)+")" + ENDIF + + If !Empty(lcFiltru) + lcFiltru = [i.cont in ('] + Alltrim(STRTRAN(Thisform.cont, [,], [','])) + [') ] + lcFiltru + Else + lcFiltru = [i.cont in ('] + Alltrim(STRTRAN(Thisform.cont, [,], [','])) + [') ] + Endif + + + + + + IF (this.filtru_pretty#"none") + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + Thisform.actualizeaza_grid1(lcFiltru) + Thisform.LockScreen=.F. + Thisform.MousePointer= 0 + + If Reccount('actcv')=0 + aMessagebox("Cautarea nu a intors rezultate!",64,"Info cautare") + ENDIF + ENDIF + thisform.but_start_criterii1.SetFocus + + ENDPROC + + PROCEDURE do_excel + Local lcAlias, lcFiltru, lcColumnList, lcHeaderList, lcSelect, lcOutput, lcFrom, lcWhere, lcOrder + lcAlias = this.grid1.RecordSource + lcFiltru = FILTER(lcAlias) + IF EMPTY(lcFiltru) + lcFiltru = '.T.' + ENDIF + + exista_excel=.T. + lcColumnList = '' + lcHeaderList = '' + lcSelect = '' + llSelect = .T. + lcType = 'CURSOR' + lcFrom = lcAlias + lcWhere = lcFiltru + lcOrder = 'nume' + lcOutput = 'crsIregPart' + + get_schema_grid(this.grid1,@lcColumnList, @lcHeaderList, @lcSelect, llSelect, lcType, lcFrom, lcWhere, lcOrder, lcOutput) + &lcSelect + IF USED(lcOutput) + DO export_xls WITH lcOutput IN oproceduri_comune.prg + USE IN (lcOutput) + ENDIF + ENDPROC + + PROCEDURE do_listare + Local lcRaport, x + Private pcTitlu, t1, t2, t3, t4 + Store "" To pcTitlu + lcRaport = "" + lcTitlu = "" + t1 = Thisform.grid1.cTotDeb.header1.Caption + t2 = Thisform.grid1.cTotCred.header1.Caption + + t3 = Thisform.grid1.cTotDebVal.header1.Caption + t4 = Thisform.grid1.cTotCredVal.header1.Caption + + *!* MESSAGEBOX('EACTIV = ' + TRANSFORM(EACTIV) + CHR(13) + t1 + " " + t2 + CHR(13) + t3 + " " + t4 + CHR(13) + iif(eActiv,t1,t2) + " " + iif(eActiv,t3,t4)) + x = xmenu("Lista facturi pe parteneri - lei;Lista facturi simpla;Lista facturi pe parteneri - lei,valuta;Lista facturi pe parteneri - valuta;Lista solduri facturi pe parteneri;Centralizator facturi emise in luna") + Private pcSubtitlu + If This.filtru_traducere()#"" + lctext=" si "+This.filtru_traducere() + Else + lctext="" + Endif + + pcSubtitlu = this.filtru_pretty_ro + lctext + + Do Case + Case x = 1 + + t1 = Thisform.grid1.cTotDeb.header1.Caption + t2 = Thisform.grid1.cCredit.header1.Caption + t3 = Thisform.grid1.cPrecCred.header1.Caption + t4 = Thisform.grid1.cTotCred.header1.Caption + lcTitlu = "pe parteneri" && Lista facturi pe parteneri - lei + lcRaport = "ireg_parteneri_rpt2lei" + Select * ; + FROM actcv With (Buffering = .T.) ; + ORDER By nume,dataact,nract ; + INTO Cursor curent_cursor NOFILTER + + + Case x = 2 + lcTitlu = "" && Lista facturi simpla + lcRaport = "ireg_parteneri_rpt1" + Select * ; + FROM actcv With (Buffering = .T.) ; + ORDER By dataact,nract ; + INTO Cursor curent_cursor NOFILTER + + Case x = 3 + lcTitlu = "pe parteneri" && Lista facturi pe parteneri - lei,valuta + lcRaport = "ireg_parteneri_rpt2" + Select * ; + FROM actcv With (Buffering = .T.) ; + ORDER By nume,dataact,nract ; + INTO Cursor curent_cursor NOFILTER + + Case x = 4 + lcTitlu = "pe parteneri - valuta" && Lista facturi pe parteneri - valuta + lcRaport = "ireg_parteneri_rpt3" + Select * ; + FROM actcv With (Buffering = .T.) ; + WHERE precvaldeb <> 0 Or precvalcred <> 0 Or valdebit <> 0 Or valcredit <> 0 ; + ORDER By nume,dataact,nract ; + INTO Cursor curent_cursor NOFILTER + + Case x = 5 + lcTitlu = "solduri pe parteneri" && Lista solduri facturi pe parteneri + lcRaport = "ireg_parteneri_rpt5" + Select nume, nume_val, Sum(precdeb) As precdeb, Sum(preccred) As preccred, Sum(precvaldeb) As precvaldeb, Sum(precvalcred) As precvalcred, ; + SUM(debit) As debit, Sum(credit) As credit, Sum(valdebit) As valdebit, Sum(valcredit) As valcredit ; + FROM actcv With (Buffering = .T.) ; + GROUP By nume, nume_val ; + ORDER By nume, nume_val ; + INTO Cursor curent_cursor NOFILTER + + Case x = 6 + lcTitlu = "centralizator" && Centralizator facturi emise in luna + lcRaport = "ireg_parteneri_rpt6" + Select nract, dataact, serie_act, nume, nume_val, Sum(precdeb) As precdeb, Sum(preccred) As preccred, Sum(precvaldeb) As precvaldeb, Sum(precvalcred) As precvalcred, ; + SUM(debit) As debit, Sum(credit) As credit, Sum(valdebit) As valdebit, Sum(valcredit) As valcredit ; + FROM actcv With (Buffering = .T.) ; + WHERE Year(DATAIREG) * 12 + Month(DATAIREG) = gnAn * 12 + gnLuna ; + GROUP By serie_act, nract, dataact, nume, nume_val ; + ORDER By dataact, nume, serie_act, nract, nume_val ; + INTO Cursor curent_cursor NOFILTER + + otherwise + RETURN + Endcase + + *!* If Empty(lcRaport) Or !Used('curent_cursor') + *!* Return + *!* Endif + + *!* If Reccount('curent_cursor') = 0 + *!* AMESSAGEBOX('Raportul nu contine rezultate',0+48,"Raport") + *!* Else + + pcTitlu = Thisform.lb_titlu_alb_b121.Caption + " " + lcTitlu + *!* titlu = ceretitlu_rap('Titlul Raportului', lcTitlu) + + *!* pcDataOra = get_ora(2) + + *!* Thisform.AlwaysOnTop=.F. + *!* Select curent_cursor + *!* Report Format &lcRaport To Printer Prompt Preview + *!* Thisform.AlwaysOnTop=.T. + *!* Endif + thisform.AlwaysOnTop = .F. + goExport.export2frx([curent_cursor],lcRaport,.T.) + thisform.AlwaysOnTop = .T. + If Used('curent_cursor') + Use In curent_cursor + Endif + RELEASE pcTitlu + + ENDPROC + + PROCEDURE do_modifica + Parameters tlIesire + *!* in contracte nu trebuie modificat + Return + + LOCAL llInsert, lcIdSucursala + lcIdSucursala = '' + llInsert = .F. + + Local lcFunctie,lcSql,lcMesaj,lcActiune,lcTitlu,llIesire + PRIVATE loRec + llIesire=tlIesire + If Empty(llIesire) + llIesire=.F. + Endif + Select actcv + Scatter Name loRec + nrlin=Recno() + lnid_part=loRec.id_part + + If loRec.id_ireg_part=0 + llInsert = .T. + lcMesaj=[Doriti sa adaugati aceasta inregistrare?] + lcActiune=[adaugata] + lcTitlu=[Adaugare] + ELSE + lcMesaj=[Doriti sa modificati aceasta inregistrare?] + lcActiune=[modificata] + lcTitlu=[Modificare] + Endif + + Thisform.grid1.SetAll("DynamicFontBold","IIF(RECNO()=nrlin,.T.,.F.)","Column") + Thisform.grid1.Refresh() + + If aMessagebox(lcMesaj,4+32+256,lcTitlu)==6 + Thisform.grid1.SetAll("DynamicFontBold",".F.","Column") + Thisform.grid1.Refresh() + + If Empty(loRec.dataact) And !Isnull(loRec.fdoc) + aMessagebox("Nu ati introdus data documentului!",0+48,"Atentie") + Thisform.leroare=.T. + Thisform.grid1.cDataAct.SetFocus() + Return + Endif + + *!* If Empty(loRec.datascad) And !Isnull(loRec.fdoc) + *!* Messagebox("Nu ati introdus data scadenta!",0+48,"Atentie") + *!* Thisform.leroare=.T. + *!* Thisform.grid1.column2.SetFocus() + *!* Return + *!* Endif + + If Empty(loRec.nract) And !Isnull(loRec.fdoc) + aMessagebox("Nu ati introdus numarul documentului!",0+48,"Atentie") + Thisform.leroare=.T. + Thisform.grid1.cNrAct.SetFocus() + Return + Endif + + If !Thisform.grid1.cNresp.Visible + AddProperty(loRec,'id_responsabil',Null) + Endif + + If loRec.id_valuta=0 And (loRec.valcredit>0 Or loRec.valdebit>0) + aMessagebox("Nu ati introdus numele valutei!",0+48,"Atentie") + Thisform.lvaluta=.T. + Thisform.leroare=.T. + Thisform.grid1.cNume_val.SetFocus() + Return + Endif + + If loRec.id_valuta>0 And loRec.Curs=0 + aMessagebox("Nu ati introdus cursul de schimb!",0+48,"Atentie") + Thisform.leroare=.T. + Thisform.grid1.cCurs.SetFocus() + Return + ENDIF + + + lnidjtva=VAL(TRANSFORM(loRec.id_jtva_coloana)) + lnproctva=lorec.proc_tva + lcIdSucursala = IIF(NVL(loRec.id_sucursala,0) = 0, 'NULL', ALLTRIM(STR(lorec.id_sucursala))) + + lcSql1=[begin pack_inregistrari.iregpartinsproc(]+NVL(Alltrim(Str(loRec.id_ireg_part)),'0')+[,]+Alltrim(Str(gnAn))+[,]+Alltrim(Str(gnLuna))+[,]+; + ALLTRIM(Str(loRec.id_part))+[,']+Alltrim(loRec.Cont)+[',']+Nvl(Alltrim(loRec.acont),'')+[',]+; + ALLTRIM(Str(loRec.Debit,21,4))+[,]+Alltrim(Str(loRec.credit,21,4))+[,]+Alltrim(Str(loRec.valdebit,21,4))+[,] + lcSql2=Alltrim(Str(loRec.valcredit,21,4))+[,]+Alltrim(Str(loRec.Curs,15,gnPCurs2))+[,]+Nvl(Alltrim(Str(loRec.id_fdoc)),'0')+[,]+; + [to_date(']+Nvl(Alltrim(Dtos(loRec.dataact)),'')+[','YYYY-MM-DD'),to_date(']+Nvl(Alltrim(Dtos(loRec.dataireg)),'')+[',]+; + ['YYYY-MM-DD'),to_date(']+Nvl(Alltrim(Dtos(loRec.datascad)),'')+[','YYYY-MM-DD'),]+Nvl(Alltrim(Str(loRec.nract)),'')+[,]+; + [']+NVL(ALLTRIM(loRec.serie_act),[])+[',] + lcSql3=Nvl(Alltrim(Str(loRec.id_responsabil)),'0')+[,]+Alltrim(Str(loRec.precdeb,21,4))+[,]+Alltrim(Str(loRec.preccred,21,4))+[,]+; + ALLTRIM(Str(loRec.precvaldeb,21,4))+[,]+ALLTRIM(Str(loRec.precvalcred,21,4))+[,]+NVL(Alltrim(Str(loRec.cod)),'0')+[,']+Nvl(Alltrim(loRec.explicatia),'')+[',] + lcSql4=Nvl(Alltrim(Str(loRec.id_act)),'0')+[,]+NVL(Alltrim(Str(loRec.id_lucrare)),'0')+[,]+Alltrim(Str(loRec.id_valuta))+[,]+; + NVL(ALLTRIM(Str(loRec.id_fact)),'0')+[,]+NVL(Alltrim(Str(loRec.id_set)),'0')+[,']+Nvl(Alltrim(loRec.explicatia4),'')+[',']+; + NVL(Alltrim(loRec.explicatia5),'')+[',]+Nvl(Alltrim(Str(loRec.id_venchelt)),'0')+[,] + ALLTRIM(STR(lnidjtva))+[,]+ALLTRIM(STR(lorec.proc_tva,7,2))+[,] + lcIdSucursala + [); end;] + + lnSucces = goExecutor.oExecute(lcSql1+lcSql2+lcSql3+lcSql4) + If lnSucces < 0 + lcTextEroare = goExecutor.cEroare + aMessagebox(lcTextEroare,0+48,"Eroare") + Else + aMessagebox("Inregistrarea a fost "+lcActiune+"!",0+64,lcTitlu) + ENDIF + + Select actcv + Locate For id_part=loRec.id_part And acont=loRec.acont And id_fdoc=loRec.id_fdoc And id_valuta=loRec.id_valuta + pnRec=Recno() + *!* IF llInsert + *!* REPLACE id_ireg_part WITH loRec.id_ireg_part, id_fact WITH loRec.id_fact + *!* ENDIF + Else + Thisform.grid1.SetAll("DynamicFontBold",".F.","Column") + Thisform.grid1.Refresh() + Endif + + If !llIesire + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + *Thisform.actualizeaza_grid1() + Thisform.LockScreen=.F. + Thisform.MousePointer= 0 + Endif + Thisform.lmodificata=.F. + Thisform.lvaluta=.F. + Thisform.leroare=.F. + ENDPROC + + PROCEDURE do_reface + *!* in contracte nu trebuie modificat + Return + + LOCAL lcCont,x + lcConturi = Alltrim(Thisform.ccont) + lcSursa = [IREG_PARTENERI] + lnLuna = gnLuna + lnAn = gnAn + + IF glLunaInchisa + AMESSAGEBOX('Luna este blocata. Nu se pot da refaceri.',0+48,'Refacere') + RETURN + ENDIF + x= xmenu('Refacere \ 0 + lcCont = GETWORDNUM(lcConturi, i, [,]) + lnSucces = refacere(lcSursa,lcLunar,lcCont,lnLuna,lnAn) && IN orefaceri.prg + ENDIF + ENDFOR + IF lnSucces > 0 + Thisform.actualizeaza_grid1() + + do inainte WITH "IREG_PARTENERI",lcCont in oinainte_de.prg + + this.LockScreen = .f. + this.griD1.SetFocus + aMESSAGEBOX('Refacerea s-a terminat!',0+64,"Info refacere") + ENDIF + + ENDPROC + + PROCEDURE do_renunt + gnButon = 2 + pnButon = 2 + Buton = 2 + pnIesire = 2 + If This.lmodificata + This.do_modifica(.T.) + Endif + If !This.leroare + This.Release + Endif + + ENDPROC + + PROCEDURE do_reset + With Thisform + For i=1 To .Objects.Count + If Upper(.Objects(i).BaseClass)='CHECKBOX' + .Objects(i).Value=0 + Endif + Endfor + ENDWITH + + + IF NOT PEMSTATUS(thisform,"filtru_pretty",5) + thisform.AddProperty("filtru_pretty") + ENDIF + + IF NOT PEMSTATUS(thisform,"filtru_pretty_ro",5) + thisform.AddProperty("filtru_pretty_ro") + ENDIF + + thisform.filtru_pretty="" + thisform.filtru_pretty_ro="" + thisform.but_start_criterii1.ToolTipText=thisform.filtru_pretty_ro + Thisform.but_start_criterii1.SetFocus + Thisform.Refresh + thisform.but_start_criterii1.pornit="nu" + thisform.do_cauta() + + + + ENDPROC + + PROCEDURE do_sterge + *!* in contracte nu trebuie modificat + Return + + Select actcv + Scatter Name loRec + nrlin=Recno() + + Thisform.grid1.SetAll("DynamicFontBold","IIF(RECNO()=nrlin,.T.,.F.)","Column") + Thisform.grid1.Refresh() + + IF loRec.id_ireg_part = 0 OR ISNULL(loRec.id_ireg_part) + aMESSAGEBOX("Aceasta inregistrare nu este salvata pe server. Repetati cautarea!",0+48,'Stergere') + RETURN + ENDIF + + If aMessagebox("Doriti sa stergeti aceasta inregistrare?",4+32+256,"Confirmare stergere")==6 + Thisform.grid1.SetAll("DynamicFontBold",".F.","Column") + Thisform.grid1.Refresh() + + lcSql=[begin PACK_INREGISTRARI.iregpartdelproc(] + Alltrim(Str(loRec.id_ireg_part))+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + If lnSucces < 0 + lcTextEroare = goExecutor.cEroare + aMessagebox(lcTextEroare,0+48,"Eroare") + Else + aMessagebox("Inregistrarea a fost stearsa!",0+64,"Info stergere") + Endif + + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + Thisform.actualizeaza_grid1() + Thisform.LockScreen=.F. + Thisform.MousePointer= 0 + + Select actcv + If Reccount()>0 + nrlin=Max(nrlin-1,1) + Go nrlin + Endif + Thisform.grid1.SetFocus() + Else + Thisform.grid1.SetAll("DynamicFontBold",".F.","Column") + Thisform.grid1.Refresh() + Endif + + ENDPROC + + PROCEDURE do_termin + gnButon = 1 + pnButon = 1 + Buton = 1 + pnIesire = 1 + IF THIS.lmodificata + THIS.do_modifica(.T.) + ENDIF + IF !THIS.leroare + THIS.RELEASE + ENDIF + THIS.BUT_STArt_criterii1.RESETstatus() + DODEFAULT() + + ENDPROC + + PROCEDURE filtre + STORE ".T." TO tfirma,TER,Tachitat,Tneachitat + sele actcv + + if Bfirma==.t. then + Tfirma="UPPER(LEFT(ACTCV.nume,LEN(M.nume)))==M.nume" + endif + + if Bachitat==.t. then + Tachitat='ACTCV.totctva=ACTCV.achitat and totctva#0' + endif + + if Bneachitat==.t. then + Tneachitat='ACTCV.totctva#ACTCV.achitat' + endif + ENDPROC + + PROCEDURE incaspl + Private pnlunanan,pcselect,pcfiltru,pcschema,pcorder,llAfisare,poact + Local lnTotsum,pcTitlu + Store "" To poact,pctitlu + Store .F. To llAfisare + Store 0 To pnlunanan,lnTotsum + + pnlunanan = gnAn*12+gnLuna + *Thisform.blocbuton1.terminat1.Enabled = .F. + Thisform.AlwaysOnTop = .F. + + *!* pcschema=['ID_ACT N(20),LUNA N(2),AN N(4),COD N(20),DATAIREG D,NRACT N(14),DATAACT D,'+]+; + *!* ['EXPLICATIA C(100),SCD C(4),ASCD C(4),SCC C(4),ASCC C(4),SUMA N(19,2),PERECHED N(14),'+]+; + *!* ['PERECHEC N(14),SUMA_VAL N(19,2),NUME_VAL C(5),CURS N(8,2),DATASCAD D,NEIMPOZAB N(19,2),'+]+; + *!* ['NNIR N(10),ID_UTIL N(5),UTIL C(30),DATAORA T,ID_UTILS N(5),UTILS C(30),DATAORAS T,'+]+; + *!* ['ID_RESPONSABIL N(5),NRESP C(30),ID_VENCHELT N(5),DST_CHLT C(100),ID_LUCRARE N(5),NRORD C(30),ID_SECTIE N(5),'+]+; + *!* ['SECTIE C(30),PROC_TVA N(5,2),ID_SET N(20),ID_FACT N(20),ID_PARTD N(10),PARTD C(50),ID_PARTC N(10),'+]+; + *!* ['PARTC C(50),ID_SUCURSALA N(5),SUCURSALA C(50),ID_FDOC N(5),FDOC C(30),'+]+; + *!* ['EXPLICATIA4 C(100),EXPLICATIA5 C(100),ID_GESTD N(5),GESTD C(50),ID_GESTC N(5),GESTC C(50)'] + pcschema = [''] + pcselect = ['select partD,dataact,nract,dataireg,suma,perecheC,util,dataora,fdoc,scc,scd,partC,explicatia '+]+; + ['from ]+gcS+[.vact where 2=2'] + + Select actcv + Do Case + Case Thisform.lActiv && activ + pcfiltru = [id_partC=]+Alltrim(STR(id_part))+[ and extract(year from dataireg)*12+extract(month from dataireg)<=]+Alltrim(Str(pnlunanan))+[ ]+; + [ and id_factc = ] + ALLTRIM(STR(id_fact))+[ and scc=']+Alltrim(Thisform.Cont)+[']+[ and NVL(ascc,'xxx')=']+NVL(ALLTRIM(acont),'xxx')+['] + pcTitlu = "INCASARI LA FACTURA NR. "+Alltrim(Str(nract)) + pnachitat = credit+preccred + Otherwise && pasiv + pcfiltru = [id_partD=]+Alltrim(STR(id_part))+[ and extract(year from dataireg)*12+extract(month from dataireg)<=]+Alltrim(Str(pnlunanan))+[ ]+; + [ and id_factd = ] + ALLTRIM(STR(id_fact))+[ and scd=']+Alltrim(Thisform.Cont)+[']+[ and NVL(ascd,'xxx')=']+NVL(ALLTRIM(acont),'xxx')+['] + pcTitlu = "PLATI LA FACTURA NR. "+Alltrim(Str(nract)) + pnachitat = debit + precdeb + Endcase + + pcorder = [dataact,nract] + gencursor("poact","acn2",pcselect,pcfiltru,pcschema,pcorder,llAfisare) + poact.ca_baza1.afisare() + + GO top + ORC = Createobj("AFincpl") + ORC.lb_titlu_alb_b121.Caption = pcTitlu + ORC.ali = "acn2" + ORC.grid1.column6.Visible = .T. + ORC.Show(1) + + pcTitlu = "" + Thisform.AlwaysOnTop = .T. + *Thisform.blocbuton1.terminat1.Enabled = .T. + If Used('acn2') + Use In acn2 + Endif + Release ORC,poact + ****************************************************** + + ENDPROC + + PROCEDURE Init + DoDefault() + *!* modificare v 2.0.11 + Thisform.grid1.cNrAct.DynamicBackColor = [Iif(nr<>0,Rgb(173,248,183),Rgb(255,255,255))] + Thisform.grid1.cNrAct.SetAll("BackColor",[Iif(nr<>0,Rgb(173,248,183),Rgb(255,255,255))],"Text") + *!* modificare v 2.0.11 ^ + ENDPROC + + PROCEDURE initializare + THISFORM.but_start_criterii1.ENABLED = !THISFORM.but_start_criterii1.ENABLED + THISFORM.but_reset_criterii1.ENABLED = !THISFORM.but_reset_criterii1.ENABLED + THISFORM.cmDINCASPL.ENABLED = !THISFORM.cmDINCASPL.ENABLED + THISFORM.comMAND1.ENABLED = !THISFORM.comMAND1.ENABLED + THISFORM.commAND2.ENABLED = !THISFORM.commAND2.ENABLED + THISFORM.commAND3.ENABLED = !THISFORM.commAND3.ENABLED + WITH THISFORM.grid1 + .READONLY = !.READONLY + .cExplicatieTVA.Combo1.readonly=!.READONLY + .cTotDeb.READONLY = .T. + .cTotCred.READONLY = .T. + .cSoldFinal.READONLY = .T. + .cTotDebVal.READONLY = .T. + .cTotCredVal.READONLY = .T. + .cSoldVal.READONLY = .T. + .cFDoc.READONLY = .T. + .cNume.READONLY = .T. + .cNume_val.READONLY = .T. + .cNresp.READONLY = .T. + .cNrord.READONLY = .T. + .cProcentTVA.readonly= .T. + ENDWITH + SELECT actcv + THISFORM.grid1.REFRESH + THISFORM.grid1.SETFOCUS() + + + + ENDPROC + + PROCEDURE ist_deb_cred + Private pnlunanan,lul,pcselect,pcschema,pcfiltru,pcorder,llAfisare,poacn1,poacn2,pcdatacrt,pcnume + PRIVATE nl,an,pcluna,pcanul + Store 0 To pnlunanan + Store .F. To llAfisare + Store "" To poacn1,poacn2 + pcdatacrt=Alltrim(Str(gnAn))+Padl(Alltrim(Str(gnLuna)),2,'0')+[01] && prima zi a lunii + + *Thisform.blocbuton1.terminat1.Enabled=.F. + Thisform.AlwaysOnTop= .F. + + pcanul='00' + pcluna='00' + Select calendar + OSE=Crea('SELELUNA') + OSE.Show(1) + pnlunanan=gnAn*12+gnLuna + pnlunaanales=Val(pcanul)*12+Val(pcluna) + Select actcv + pcnume=nume + pnid_part=id_part + *!* pcschema=['ID_ACT N(20),LUNA N(2),AN N(4),COD N(20),DATAIREG D,NRACT N(14),DATAACT D,'+]+; + *!* ['EXPLICATIA C(100),SCD C(4),ASCD C(4),SCC C(4),ASCC C(4),SUMA N(19,2),PERECHED N(14),'+]+; + *!* ['PERECHEC N(14),SUMA_VAL N(19,2),NUME_VAL C(5),CURS N(8,2),DATASCAD D,NEIMPOZAB N(19,2),'+]+; + *!* ['NNIR N(10),ID_UTIL N(5),UTIL C(30),DATAORA T,ID_UTILS N(5),UTILS C(30),DATAORAS T,'+]+; + *!* ['ID_RESPONSABIL N(5),NRESP C(30),ID_VENCHELT N(5),DST_CHLT C(100),ID_LUCRARE N(5),NRORD C(30),ID_SECTIE N(5),'+]+; + *!* ['SECTIE C(30),PROC_TVA N(5,2),ID_SET N(20),ID_FACT N(20),ID_PARTD N(10),PARTD C(50),ID_PARTC N(10),'+]+; + *!* ['PARTC C(50),ID_SUCURSALA N(5),SUCURSALA C(50),ID_FDOC N(5),FDOC C(30),'+]+; + *!* ['EXPLICATIA4 C(100),EXPLICATIA5 C(100),ID_GESTD N(5),GESTD C(50),ID_GESTC N(5),GESTC C(50)'] + pcschema=[''] + pcselect=['select * from ]+gcS+[.vact where 2=2'] + pcorder=[dataact,serie_act,nract] + pcfiltru=[scd=']+ALLTRIM(thisform.cont)+[' and id_partD=]+ALLTRIM(STR(pnid_part))+[ ]+; + [and extract(year from dataact)*12+extract(month from dataact) ]+; + [between ]+Alltrim(Str(pnlunaanales))+[ and ]+Alltrim(Str(pnlunanan)) + gencursor("poacn1","acn1",pcselect,pcfiltru,pcschema,pcorder,llAfisare) + + pcfiltru=[scc=']+ALLTRIM(thisform.cont)+[' and id_partC=]+ALLTRIM(STR(pnid_part))+[ ]+; + [and extract(year from dataact)*12+extract(month from dataact) ]+; + [between ]+Alltrim(Str(pnlunaanales))+[ and ]+Alltrim(Str(pnlunanan)) + gencursor("poacn2","acn2",pcselect,pcfiltru,pcschema,pcorder,llAfisare) + + poacn1.ca_baza1.afisare() + poacn2.ca_baza1.afisare() + + ORC=Createobj("frm_debsicred") + orc.lb_titlu_alb_b121.caption="SITUATIE ANALITICA - ISTORIC DEBIT CREDIT " + ORC.Show(1) + + If Used('acn1') + Use In acn1 + Endif + If Used('acn2') + Use In acn2 + Endif + + *Thisform.blocbuton1.terminat1.Enabled=.T. + Thisform.AlwaysOnTop= .T. + RELEASE orc,poacn1,poacn2 + + ENDPROC + + PROCEDURE KeyPress + LPARAMETERS nKeyCode, nShiftAltCtrl + LOCAL lbviz + lbviz=THIS.bvizualizare + DO CASE + CASE (nKeyCode=13 AND nShiftAltCtrl=2) OR (nKeyCode=4 AND nShiftAltCtrl=2) + If glLunaInchisa OR this.grID1.ReadOnly + RETURN + Endif + NODEFAULT + OTHERWISE + DODEFAULT(nKeyCode, nShiftAltCtrl) + ENDCASE + + ENDPROC + + PROCEDURE notacontab + If Reccount('actcv')>0 + Private pcselect,pcfiltru,pcschema,pcorder,poact + Local lcTip,llTest + Store .F. To llTest + Store "" To poact + *Thisform.blocbuton1.terminat1.Enabled=.F. + Thisform.AlwaysOnTop=.F. + *!* lunanan=gnLuna+gnAn*12 + Select actcv + + SCATTER NAME oireg + IF EMPTY(oireg.id_fact) + pcfiltru = [dataact=to_date(']+Dtos(oireg.dataact)+[','YYYY-MM-DD') and nract=]+ALLTRIM(STR(oireg.nract))+; + [ and ((id_partd=]+ALLTRIM(STR(oireg.id_part))+[ and ascd=']+NVL(ALLTRIM(oireg.acont),'')+; + [') or (id_partc=]+ALLTRIM(STR(oireg.id_part))+[ and ascc=']+NVL(ALLTRIM(oireg.acont),'')+['))] + ELSE + pcfiltru = [id_fact=]+ALLTRIM(STR(oireg.id_fact)) + ENDIF + pcschema=['DATAIREG D,DATAACT D,SERIE_ACT C(10),NRACT N(14),PARTD C(50),PARTC C(50),EXPLICATIA C(100),'+]+; + ['SUMA N(19,2),SCD C(4),ASCD C(4),SCC C(4), ASCC C(4),FDOC C(30),LUNA N(2),AN N(4),COD N(20)'] + pcselect=['select dataireg,dataact,serie_act,nract,partd,partc,explicatia,suma,scd,ascd,scc,ascc,fdoc,luna,an,cod '+]+; + ['from ]+gcS+[.vact where 2=2'] + pcorder=[dataact,serie_act,nract] + llAfisare=.F. + gencursor('poact','ACN1',pcselect,pcfiltru,pcschema,pcorder,llAfisare) + poact.ca_baza1.afisare() + Go Top + ORC=CREATEOBJECT("frm_debcred") + orc.lb_titlu_alb_b121.caption="NOTA CONTABILA" + orc.lb_titlu1.caption=" "+UPPER(ALLTRIM(oireg.nume))+" " + ORC.Show(1) + Release poact,ORC + *Thisform.blocbuton1.terminat1.Enabled=.T. + Thisform.AlwaysOnTop=.T. + Else + aMessagebox("Nu aveti date in cautare!",48,"Atentie") + Thisform.ck_nrdoc.SetFocus() + Endif + RELEASE oireg + + + ENDPROC + + PROCEDURE plati + THISFORM.CMDTERMIN1.ENABLED=.F. + SCATTER FIELDS EXCEPT nl,an memv + SELE ACT + * DO NRORD WITH "ACT" + Set filter to nume=m.nume and pereche=m.nract + DO NRORD WITH "ACT" + go top + ORC=CREATEOBJ("AFDEBCRED") + ORC.LABELTITLU.CAPTION="Plati" + ORC.SHOW(1) + + THISFORM.CMDTERMIN1.ENABLED=.T. + + + ENDPROC + + PROCEDURE salariati + + + If Reccount('actcv')>0 + Private pcselect,pcfiltru,pcschema,pcorder,postat + Local lcTip,llTest + Store .F. To llTest + Store "" To postat + *Thisform.blocbuton1.terminat1.Enabled=.F. + Thisform.AlwaysOnTop=.F. + *!* lunanan=gnLuna+gnAn*12 + Select actcv + PRIVATE oireg + SCATTER NAME oireg + + IF oireg.id_part = gnID_PARTDRNERIDLIC &&lichidare + pcschema= ['id_stat i,an n(4),luna n(2),NUME C(50),PRENUME C(50),SECTIE C(30),FORMATIE C(64),MARCA n(10),lichidare n(16), bifa n(1),SUMALICNERID n(16)'] + + pcselect=[select a.id_stat,a.an,a.luna,a.nume,a.prenume,a.sectie,a.formatia,a.marca,a.lichidare,ROUND(a.ACHITLICNERID,0) as bifa,a.SUMALICNERID from sal_vstattot a where 1=2] + pcfiltru = [ id_fact_lic = ] +ALLTRIM(STR(oireg.id_fact)) + ELSE &&avans + pcschema= ['id_stat i,an n(4),luna n(2),NUME C(50),PRENUME C(50),SECTIE C(30),FORMATIE C(64),MARCA n(10),lichidare n(16), bifa n(1),SUMALICNERID n(16)'] + + pcselect=[select a.id_stat,a.an,a.luna,a.nume,a.prenume,a.sectie,a.formatia,a.marca,a.avans as lichidare,ROUND(a.ACHITAVNERID,0) as bifa,a.SUMAAVNERID as SUMALICNERID from sal_vstattot a where 1=2] + pcfiltru = [ id_fact_av = ] +ALLTRIM(STR(oireg.id_fact)) + ENDIF + + + + pcorder=[a.sectie,a.nume,A.PRENUME] + llAfiseaza=.F. + gencursor('postat','crsState',pcselect,pcfiltru,pcschema,pcorder,llAfiseaza) + postat.ca_baza1.afisare() + + Select crsState + ofrmSelect = CREATEOBJECT('frm_alege_neridicati') + IF oireg.id_part = gnID_PARTDRNERIDLIC &&lichidare + ofrmSelect.noptiune = 1&& pentru lichidare neridicata + ELSE + ofrmSelect.noptiune = 4&& pentru avans neridicat + ENDIF + ofrmSelect.show(1) + + RELEASE oireg + USE IN crsState + RELEASE ofrmSelect + Thisform.AlwaysOnTop=.T. + + Else + aMessagebox("Nu aveti date in cautare!",48,"Atentie") + Thisform.ck_nrdoc.SetFocus() + Endif + RELEASE oireg + + ENDPROC + + PROCEDURE But_excel1.Click + DODEFAULT() + *!* Local i,xlsheet,XLApp,tmpsheet + *!* exista_excel=.T. + *!* p1='' + *!* p2='' + *!* With Thisform.grid1 + *!* For nCol=1 To .ColumnCount + *!* nColumn=.Columns(nCol).ColumnOrder + *!* p1=p1+.Columns(nCol).ControlSource+',' + *!* For lnobjcol=1 To .Columns(nCol).Objects.Count + *!* If Upper(.Columns(nCol).Objects(lnobjcol).BaseClass)='HEADER' + *!* p2=p2+Strtran(.Columns(nCol).Objects(lnobjcol).Caption,Chr(32),'_')+',' + *!* Exit + *!* Endif + *!* Endfor + *!* Endfor + *!* p1=Substr(p1,1,Len(p1)-1) + *!* p2=Substr(p2,1,Len(p2)-1) + *!* Endwith + *!* On Error Do exportare With Thisform.grid1.RecordSource,p1,p2 + *!* tmpsheet = Getobject('','excel.sheet') + *!* On Error + + *!* If exista_excel + *!* Wait Window "Se transmit datele catre Excel..." Nowait + + *!* XLApp = tmpsheet.Application + + *!* XLApp.workbooks.Close() + *!* XLApp.workbooks.Add() + *!* poExcel = XLApp.ActiveSheet + + *!* Go Top + *!* poExcel.Cells(1,1).Font.Size=16 + *!* poExcel.Cells(1,1).Font.Bold=.T. + *!* poExcel.Cells(1,1)=Thisform.lb_titlu_alb_b121.Caption+" Luna "+Alltrim(Str(gnLuna))+"/"+Alltrim(Str(gnAn)) + *!* nRows = 3 + *!* With Thisform.grid1 + *!* For nCol = 1 To .ColumnCount + *!* nColumn = .Columns(nCol).ColumnOrder + *!* poExcel.Columns(nColumn).ColumnWidth = .Columns(nCol).Width/7.5 + *!* For lnobjcol=1 To .Columns(nCol).Objects.Count + *!* If Upper(.Columns(nCol).Objects(lnobjcol).BaseClass)='HEADER' + *!* poExcel.Cells(nRows,nColumn) = .Columns(nCol).Objects(lnobjcol).Caption + *!* Exit + *!* Endif + *!* Endfor + *!* poExcel.Cells(nRows,nColumn).Font.Bold = .T. + *!* poExcel.Cells(nRows,nColumn).Interior.ColorIndex = 16 + *!* Endfor + *!* Scan + *!* nRows = nRows + 1 + *!* For nCol = 1 To .ColumnCount + *!* nColumn = .Columns(nCol).ColumnOrder + *!* If At('CHECK',Upper(.Columns(nCol).CurrentControl))>0 + *!* poExcel.Cells(nRows,nColumn)=Iif(Eval(.Columns(nCol).ControlSource)==0,'NU','DA') + *!* Else + *!* poExcel.Cells(nRows,nColumn) = Iif(Empty(Eval(.Columns(nCol).ControlSource)),'',Eval(.Columns(nCol).ControlSource)) + *!* Endif + *!* Endfor + *!* Endscan + *!* Endwith + + *!* XLApp.Visible = .T. + *!* Endif + ENDPROC + + PROCEDURE But_start_criterii1.loadcriterii + Parameters tacriterii + External Array tacriterii + #Define crlf Chr(13)+Chr(10) + lcStringCriterii = "Nr Document\i.nract\N\none\" + crlf + ; + "Serie Document\i.serie_act\T\none\" + crlf + ; + "Data document\i.dataact\D\none\" + crlf + ; + "Data scadenta\i.datascad\D\none\"+ crlf + ; + "Fel Document\i.fdoc\T\id_fdoc\nom_feldoc" + crlf + ; + "Lucrare\i.nrord\T\id_lucrare\nom_lucrare"+ crlf + ; + "Nume firma\i.nume\T\ID_PART\nom_parteneri"+ crlf + ; + "Contract\i.contract\T\none\"+ crlf + ; + "Debit\i.Debit\N|get_mask(12,gnPc)\none\"+ crlf + ; + "Credit\i.credit\N|get_mask(12,gnPc)\none\"+ crlf + If plactiv + lcStringCriterii = lcStringCriterii + "Sold\precdeb+debit-credit-preccred\N|get_mask(12,gnPc)\none\"+ crlf + Else + lcStringCriterii = lcStringCriterii + "Sold\credit+preccred-precdeb-debit\N|get_mask(12,gnPc)\none\"+ crlf + Endif + lcStringCriterii = lcStringCriterii + ; + "Cont\i.cont\T\none\"+ crlf + ; + "Analitic\i.acont\T\none\"+ crlf + ; + "Valuta\i.nume_val\T\id_valuta\nom_valuta"+ crlf + ; + "Explicatia\i.explicatia\T\none\" + crlf + ; + "Venit/Cheltuieli\i.venChelt\T\ID_VENCHELT\nom_venchel" + crlf + ; + "Explicatia 4\i.explicatia4\T\none\" + crlf + ; + "Cont creditor\i.nresp\T\none\" + crlf + ; + "Achitate\nofield\E\" + If Thisform.lActiv + lcStringCriterii = lcStringCriterii + "(i.precdeb + i.debit) - (i.preccred + i.credit) = 0" + Else + lcStringCriterii = lcStringCriterii + "(i.preccred + i.credit) - (i.precdeb + i.debit) = 0" + Endif + lcStringCriterii = lcStringCriterii + "\" + crlf + ; + "Neachitate\nofield\E\" + If Thisform.lActiv + lcStringCriterii = lcStringCriterii + "(i.precdeb + i.debit) - ( i.preccred + i.credit) <> 0" + Else + lcStringCriterii = lcStringCriterii + "(i.preccred + i.credit) - (i.precdeb + i.debit) <> 0" + Endif + && aleg sucursale doar daca sunt pe mama + If glEMama + lcStringCriterii = lcStringCriterii + "\" + crlf + "Sucursala\sucursala\T\ID_SUCURSALA\nom_sucursala" + Endif + DoDefault() + + ENDPROC + + PROCEDURE Cb_nom_valute1.Init + thisform.label6.Caption='Total Debit Valuta' + thisform.label8.caption='Total Credit Valuta' + thisform.label9.Caption='Sold Valuta' + this.Enabled=.F. + ENDPROC + + PROCEDURE Cb_nom_valute1.initializare + Lparameters tlCautareNoua + Local lcValuta,lnmaxinreg + If Used('crsnumeval') + Use In crsnumeval + Endif + Select Distinct nume_val,Count(*) As nrinreg From actcv Where id_valuta>0 Group By nume_val Order By nume_val Into Cursor crsnumeval + lnValute = _tally + + If tlCautareNoua + Select crsnumeval + Calculate Max(nrinreg) To lnmaxinreg + Locate For nrinreg=lnmaxinreg + lcValuta=IIF(lnValute = 0,'Valuta',NUME_VAL) + Else + lcValuta=IIF(lnValute = 0,'Valuta',THIS.Value) + Endif + + IF EMPTY(lcValuta) OR ISNULL(lcValuta) + lcValuta = 'Valuta' + ENDIF + + This.RowSourceType= 2 + This.RowSource="crsnumeval" + This.Value=lcValuta + This.BoundTo=.T. + If Reccount('crsnumeval')>1 + This.Enabled=.T. + Endif + Thisform.label6.Caption='Total Debit '+lcValuta + Thisform.label8.Caption='Total Credit '+lcValuta + Thisform.label9.Caption='Sold '+lcValuta + ENDPROC + + PROCEDURE Cb_nom_valute1.InteractiveChange + lcValuta=Iif(Empty(This.Value),'Valuta',Alltrim(This.Value)) + Thisform.label6.Caption='Total Debit '+lcValuta + Thisform.label8.Caption='Total Credit '+lcValuta + Thisform.label9.Caption='Sold '+lcValuta + Thisform.actualizeaza_totaluri() + ENDPROC + + PROCEDURE Ck_scadente.InteractiveChange + lccondScad = [1=1] + If This.Value = 1 + Private pddataref,pddatascad_max,pnnrluni + Store 0 To pnnrluni + pddataref = Date() + pddatascad_max = pddataref + + ofrmscad = Createobject('frm_facturi_scadente') + ofrmscad.txt_dataref.ControlSource = [pddataref] + ofrmscad.txt_datamax.ControlSource = [pddatascad_max] + ofrmscad.Show(1) + + If gnButon = 1 + lccondScad = [(i.datascad < to_date('] + Dtos(pddatascad_max) + [','yyyymmdd'))] + This.Tag=" si data scadenta mai mica decat "+Transform(pddatascad_max) + Endif + Endif + If This.Value=0 + This.filtru ="" + This.cTraducere="" + this.Tag="" + Else + This.filtru = [ and ] + lccondScad + This.cTraducere=This.Tag + Endif + thisform.do_cauta() + Thisform.but_start_criterii1.refreshstatus + + + + ENDPROC + + PROCEDURE cmdIncasPl.Click + thisform.incaspl + ENDPROC + + PROCEDURE Command1.Click + thisform.notacontab + ENDPROC + + PROCEDURE Command2.Click + SCAT fiel except nl,an MEMV + thisform.istoric + ENDPROC + + PROCEDURE Command3.Click + thisform.ist_deb_cred + ENDPROC + + PROCEDURE grid1.AfterRowColChange + Lparameters nColIndex + If Thisform.leroare + Nodefault + Return + Endif + Local lnluna + Select actcv + lnluna=luna + If Thisform.lmodificata + *!* Thisform.lmodificare_totaluri=.T. + Thisform.actualizeaza_totaluri() + *!* If lnluna=0 + *!* Thisform.lmodificare_totaluri=.F. + *!* Endif + Thisform.grid1.Refresh + Endif + ENDPROC + + PROCEDURE grid1.BeforeRowColChange + Lparameters nColIndex + *!* If !Thisform.lmodificare_totaluri + Local lnCol + Private pnRec,pnCol + If Thisform.grid1.ReadOnly=.F. And Thisform.coldvalue!=Thisform.cnewvalue + Thisform.lmodificata=.T. + Endif + If (This.RowColChange= 1 Or This.RowColChange= 3) And Thisform.lmodificata + For i=1 To This.ColumnCount + If This.Columns(i).ColumnOrder=nColIndex + lcColoana="thisform.grid1."+This.Columns(i).Name + Exit + Endif + Endfor + oColoana=&lcColoana + If Thisform.coldvalue!=Thisform.cnewvalue And !oColoana.ReadOnly + If PEMSTATUS(oColoana,"text1",5) + lValue=oColoana.text1.Value + lcNumeColoana=Substr(oColoana.ControlSource,At('.',oColoana.ControlSource)+1) + If Type('oColoana.text1.value')='D' And !oColoana.text1.Valid() + Nodefault + Return + Endif + Select actcv + Replace (lcNumeColoana) With lValue + Endif + Endif + + Thisform.coldvalue="" + Thisform.cnewvalue="" + pnRec=Recno() + Thisform.do_modifica() + If Thisform.leroare + Nodefault + Return + Endif + *!* Thisform.lmodificare_totaluri=.F. + DoDefault() + Endif + *!* Else + *!* *!* Nodefault + *!* Thisform.lmodificare_totaluri=.F. + *!* Endif + + ENDPROC + + PROCEDURE grid1.cAcont.Text1.GotFocus + If This.ReadOnly = .F. + Thisform.coldvalue = Alltrim(This.Value) + Thisform.cnewvalue = Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cAcont.Text1.InteractiveChange + If This.ReadOnly = .F. + Thisform.cnewvalue = Alltrim(This.Value) + Endif + ENDPROC + + PROCEDURE grid1.cCod.Text1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=Alltrim(Str(This.Value)) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cCod.Text1.InteractiveChange + If !This.ReadOnly + Thisform.cnewvalue=Alltrim(Str(This.Value)) + Endif + + ENDPROC + + PROCEDURE grid1.cCredit.Text1.GotFocus + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.coldvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cCredit.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cCurs.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cCurs.Text1.GotFocus + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.coldvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cCurs.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cCurs.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cDataAct.Header1.DblClick + thisform.corderby = "dataact" + ENDPROC + + PROCEDURE grid1.cDataAct.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cDataAct.Text1.GotFocus + If This.ReadOnly=.F. + Thisform.coldvalue=Alltrim(Dtoc(This.Value)) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cDataAct.Text1.InteractiveChange + If This.ReadOnly=.F. + Thisform.cnewvalue=Dtoc(This.Value) + Endif + + ENDPROC + + PROCEDURE grid1.cDataAct.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cDataAct.Text1.Valid + If This.ReadOnly=.F. And !Isnull(fdoc) + If (Empty(This.Value) Or Isnull(This.Value)) + aMessagebox("Introduceti data documentului!",0+48,"Atentie") + Return .F. + Else + If (Month(This.Value)+Year(This.Value)*12>gnLuna+gnAn*12) + aMessagebox("Data documentului trebuie sa fie anterioara sau din luna "+Alltrim(Str(gnLuna))+"/"+Alltrim(Str(gnAn))+"!",0+48,"Atentie") + Thisform.lmodificata=.F. + Return .F. + Endif + Endif + Endif + Return .T. + + ENDPROC + + PROCEDURE grid1.cDataireg.Text1.GotFocus + If This.ReadOnly=.F. + Thisform.coldvalue=NVL(Alltrim(Dtoc(This.Value)),'*') + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cDataireg.Text1.InteractiveChange + If This.ReadOnly=.F. + Thisform.cnewvalue=NVL(Dtoc(This.Value),'*') + Endif + ENDPROC + + PROCEDURE grid1.cDataireg.Text1.Valid + If This.ReadOnly=.F. And !Isnull(fdoc) + If (Empty(This.Value) Or Isnull(This.Value)) + aMessagebox("Introduceti data inregistrarii!",0+48,"Atentie") + Return .F. + Else + Do Case + Case This.ValuegnLuna+gnAn*12) + aMessagebox("Data inregistrarii trebuie sa fie din luna "+Alltrim(Str(gnLuna))+"/"+Alltrim(Str(gnAn))+"!",0+48,"Atentie") + Thisform.lmodificata=.F. + Return .F. + Endcase + Endif + Endif + Return .T. + ENDPROC + + PROCEDURE grid1.cDataScad.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cDataScad.Text1.GotFocus + If This.ReadOnly=.F. + Thisform.coldvalue=Alltrim(Dtoc(This.Value)) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cDataScad.Text1.InteractiveChange + If This.ReadOnly=.F. + Thisform.cnewvalue=Dtoc(This.Value) + Endif + ENDPROC + + PROCEDURE grid1.cDataScad.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cDataScad.Text1.Valid + *!* (Empty(This.Value) And !Empty(dataact)) Or (Isnull(This.Value) And !Isnull(dataact)) + *!* Messagebox("Introduceti data scadenta!",0+48,"Atentie") + *!* Return .F. + *!* Else + If This.ReadOnly=.F. And !Isnull(fdoc) + If !Empty(This.Value) And !Empty(dataact) And This.Value0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cDebit.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cExplicatia.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cExplicatia.Text1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=Nvl(Alltrim(This.Value),'*') + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cExplicatia.Text1.InteractiveChange + If This.ReadOnly=.F. + Thisform.cnewvalue=NVL(Alltrim(This.Value),'*') + Endif + ENDPROC + + PROCEDURE grid1.cExplicatia.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cExplicatia4.Text1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=NVL(Alltrim(This.Value),'*') + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cExplicatia4.Text1.InteractiveChange + If !This.ReadOnly + Thisform.cnewvalue=NVL(Alltrim(This.Value),'*') + Endif + ENDPROC + + PROCEDURE grid1.cExplicatia5.Text1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=NVL(Alltrim(This.Value),'*') + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cExplicatia5.Text1.InteractiveChange + If !This.ReadOnly + Thisform.cnewvalue=NVL(Alltrim(This.Value),'*') + Endif + ENDPROC + + PROCEDURE grid1.cExplicatieTVA.combo1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=ALLTRIM(STR(actcv.id_jtva_coloana)) + Thisform.cnewvalue=Thisform.coldvalue + ENDIF + + ENDPROC + + PROCEDURE grid1.cExplicatieTVA.combo1.InteractiveChange + If !This.ReadOnly + Thisform.cnewvalue=ALLTRIM(STR(actcv.id_jtva_coloana)) + Endif + + ENDPROC + + PROCEDURE grid1.cExplicatieTVA.combo1.Valid + replace actcv.id_jtva_coloana WITH jtva_temp.id_jtva_coloana + replace actcv.proc_tva WITH ROUND((jtva_temp.cota_tva+100)/100,2) + + ENDPROC + + PROCEDURE grid1.cfdoc.Text1.DblClick + If !Thisform.grid1.ReadOnly + Nodefault + Local locauta,lcOldValue,lcNewValue + lcOldValue=Nvl(Alltrim(fdoc),'') + Select actcv + Store "" To locauta + pcselect = ['select p.fel_document,p.id_fdoc FROM ] + Alltrim(gcS) + [.vnom_fdoc p where 2=2'] + pcfiltru = [1=2] + pcschema = [''] + pcorder = [fel_document] + pccoloane = [fel_document] + pcTitlu = [Alegeti felul documentului] + pcTitluColoane = [Fel document] + lnRec=Recno() + locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane) + If !Empty(locauta.fel_document) + Select actcv + Go lnRec + Replace id_fdoc With locauta.id_fdoc + Replace fdoc With Alltrim(locauta.fel_document) + lcNewValue=Nvl(Alltrim(fdoc),'') + Else + lcNewValue=lcOldValue + Endif + This.SetFocus() + Thisform.coldvalue=lcOldValue + Thisform.cnewvalue=lcNewValue + Release locauta + For i=1 To Thisform.grid1.ColumnCount + If Thisform.grid1.Columns(i).ColumnOrder=This.Parent.ColumnOrder+1 + Exit + Endif + Endfor + Thisform.grid1.Columns(i).SetFocus() + Else + DoDefault() + Endif + + ENDPROC + + PROCEDURE grid1.cfdoc.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cId_fact.Text1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=Alltrim(Str(This.Value)) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cId_fact.Text1.InteractiveChange + If !This.ReadOnly + Thisform.cnewvalue=Alltrim(Str(This.Value)) + Endif + + ENDPROC + + PROCEDURE grid1.cId_set.Text1.GotFocus + If !This.ReadOnly + Thisform.coldvalue=Alltrim(Str(This.Value)) + Thisform.cnewvalue=Thisform.coldvalue + Endif + + ENDPROC + + PROCEDURE grid1.cId_set.Text1.InteractiveChange + If !This.ReadOnly + Thisform.cnewvalue=Alltrim(Str(This.Value)) + Endif + ENDPROC + + PROCEDURE grid1.cNrAct.Header1.DblClick + thisform.corderby = "nract" + ENDPROC + + PROCEDURE grid1.cNrAct.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cNrAct.Text1.GotFocus + *!* modificare v 2.0.11 + If nr<> 0 + This.BackColor = Rgb(173,248,183) + EndIf + *!* modificare v 2.0.11 ^ + If This.ReadOnly=.F. + Thisform.coldvalue=Alltrim(Str(This.Value)) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cNrAct.Text1.InteractiveChange + If This.ReadOnly=.F. + Thisform.cnewvalue=Alltrim(Str(This.Value)) + Endif + ENDPROC + + PROCEDURE grid1.cNrAct.Text1.LostFocus + *!* modificare v 2.0.11 + If nr<> 0 + This.BackColor = Rgb(255,255,255) + EndIf + *!* modificare v 2.0.11 ^ + ENDPROC + + PROCEDURE grid1.cNrAct.Text1.RightClick + Select (Thisform.grID1.RecordSource) + If nr<> 0 + arata_meniu_at_vanz(cod,serie_act,nract,Thisform.grID1.RecordSource+[.]+Substr(This.Parent.ControlSource,At([.],This.Parent.ControlSource,1)+1)) + Else + Do editscurt.mpr + Endif + + ENDPROC + + PROCEDURE grid1.cnresp.Text1.DblClick + If !Thisform.grid1.ReadOnly + Local locauta,lcCol,lcOldValue,lcNewValue + Select actcv + lcOldValue=Nvl(Alltrim(nresp),'') + Store "" To locauta + pcselect = ['select p.nume, p.functie, p.id_responsabil FROM ] + gcs + [.vnom_responsabili p '+]+; + ['where 2=2'] + pcfiltru = [1=2] + pcschema = [''] + pcorder = [p.nume] + pccoloane = [nume,functie] + pcTitlu = [Alegeti numele] + pcTitluColoane = [Responsabil,Functie] + lnRec=Recno() + locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane,"") + If !Empty(locauta.nume) + Select actcv + Go lnRec + Replace id_responsabil With locauta.id_responsabil + Replace nresp With Alltrim(locauta.nume) + lcNewValue=Nvl(Alltrim(nresp),'') + Else + lcNewValue=lcOldValue + Endif + This.SetFocus() + Thisform.coldvalue=lcOldValue + Thisform.cnewvalue=lcNewValue + Release locauta + For i=1 To Thisform.grid1.ColumnCount + If Thisform.grid1.Columns(i).ColumnOrder=This.Parent.ColumnOrder+1 + Exit + Endif + Endfor + Thisform.grid1.Columns(i).SetFocus() + Else + DoDefault() + Endif + + ENDPROC + + PROCEDURE grid1.cNrord.Text1.DblClick + If !Thisform.grid1.ReadOnly + Local locauta,lcOldValue,lcNewValue + Select actcv + lcOldValue=Nvl(Alltrim(nrord),'') + Store "" To locauta + pcselect = ['select p.nrord,p.id_lucrare FROM ] + gcs + [.vnom_lucrari p where 2=2'] + pcfiltru = [1=2] + pcschema = [''] + pcorder = [nrord] + pccoloane = [nrord] + pcTitlu = [Alegeti lucrarea/contractul] + pcTitluColoane = [Lucrare/Contract] + lnRec=Recno() + locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane,"") + If !Empty(locauta.nrord) + Select actcv + Go lnRec + Replace id_lucrare With locauta.id_lucrare + Replace nrord With locauta.nrord + lcNewValue=Nvl(Alltrim(nrord),'') + Else + lcNewValue=lcOldValue + Endif + This.SetFocus() + Thisform.coldvalue=lcOldValue + Thisform.cnewvalue=lcNewValue + For i=1 To Thisform.grid1.ColumnCount + If Thisform.grid1.Columns(i).ColumnOrder=This.Parent.ColumnOrder+1 + Exit + Endif + Endfor + Thisform.grid1.Columns(i).SetFocus() + Else + DoDefault() + Endif + + ENDPROC + + PROCEDURE grid1.cNume.Header1.DblClick + thisform.corderby = "nume" + ENDPROC + + PROCEDURE grid1.cNume.Text1.DblClick + LOCAL lcCont + + IF !THISFORM.grid1.READONLY + NODEFAULT + LOCAL locauta,lcOldValue,lcNewValue + lcOldValue=NVL(ALLTRIM(nume),'') + SELECT actcv + STORE "" TO locauta + lnRec = RECNO() + + lcCont = ALLTRIM(actcv.CONT) + locauta = CautPartenerContabilitate(GetHash([cTitlu=>Alegeti partenerul ] + lcCont + [??lAdaugCorespondente=>1??cCont=>] + lcCont)) + + IF !EMPTY(locauta.nume) + SELECT actcv + GO lnRec + REPLACE id_part WITH locauta.id_part + REPLACE nume WITH ALLTRIM(locauta.nume) + lcNewValue=NVL(ALLTRIM(nume),'') + ELSE + lcNewValue=lcOldValue + ENDIF + THIS.SETFOCUS() + THISFORM.coldvalue=lcOldValue + THISFORM.cnewvalue=lcNewValue + RELEASE locauta + FOR i=1 TO THISFORM.grid1.COLUMNCOUNT + IF THISFORM.grid1.COLUMNS(i).COLUMNORDER=THIS.PARENT.COLUMNORDER+1 + EXIT + ENDIF + ENDFOR + THISFORM.grid1.COLUMNS(i).SETFOCUS() + ELSE + DODEFAULT() + ENDIF + + ENDPROC + + PROCEDURE grid1.cNume.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cNume_val.Text1.DblClick + If !Thisform.grid1.ReadOnly + Local locauta,lcOldValue,lcNewValue + Select actcv + lcOldValue=Nvl(Alltrim(nume_val),'') + Store "" To locauta + pcselect = ['select p.nume_val,p.id_valuta FROM ] + gcs + [.vnom_valute p where 2=2'] + pcfiltru = [1=2] + pcschema = [''] + pcorder = [nume_val] + pccoloane = [nume_val] + pcTitlu = [Alegeti valuta] + pcTitluColoane = [Valuta] + lnRec=Recno() + locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane,"") + If !Empty(locauta.nume_val) + Select actcv + Go lnRec + Replace id_valuta With locauta.id_valuta + Replace nume_val With locauta.nume_val + lcNewValue=Nvl(Alltrim(nume_val),'') + Thisform.lvaluta=.F. + thisform.actualizeaza_totaluri() + Else + lcNewValue=lcOldValue + Endif + This.SetFocus() + Thisform.coldvalue=lcOldValue + Thisform.cnewvalue=lcNewValue + Release locauta + For i=1 To Thisform.grid1.ColumnCount + If Thisform.grid1.Columns(i).ColumnOrder=This.Parent.ColumnOrder+1 + Exit + Endif + Endfor + Thisform.grid1.Columns(i).SetFocus() + Else + DoDefault() + Endif + ENDPROC + + PROCEDURE grid1.cNume_val.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cPrecCred.Text1.GotFocus + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.coldvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cPrecCred.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cPrecDeb.Text1.GotFocus + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.coldvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cPrecDeb.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cSoldFinal.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cSoldFinal.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cTotDeb.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cTotDeb.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cTotDebVal.Text1.DblClick + thisform.butdrept + ENDPROC + + PROCEDURE grid1.cTotDebVal.Text1.RightClick + do editscurt.mpr + ENDPROC + + PROCEDURE grid1.cValCredit.Text1.GotFocus + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.coldvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cValCredit.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cValCredit.Text1.Valid + IF this.Value>0 + thisform.lvaluta=.T. + ENDIF + ENDPROC + + PROCEDURE grid1.cValDebit.Text1.GotFocus + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.coldvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Thisform.cnewvalue=Thisform.coldvalue + Endif + ENDPROC + + PROCEDURE grid1.cValDebit.Text1.InteractiveChange + If This.ReadOnly=.F. + lcMask=Strtran(This.Parent.InputMask,' ','') + lnNrZec=At(Thisform.cseparator,lcMask,1) + Thisform.cnewvalue=Alltrim(Str(This.Value,Len(lcMask),Iif(lnNrZec>0,Len(lcMask)-lnNrZec,0))) + Endif + ENDPROC + + PROCEDURE grid1.cValDebit.Text1.Valid + IF this.Value>0 + thisform.lvaluta=.T. + ENDIF + ENDPROC + + PROCEDURE grid1.cVenChelt.Text1.DblClick + If !Thisform.grid1.ReadOnly + Local locauta,lcOldValue,lcNewValue + Select actcv + lcOldValue=Nvl(Alltrim(venchelt),'') + Store "" To locauta + pcselect = ["select v.explicatie,(case v.tip_venchelt when 1 then 'C' else 'V' end) as tip,v.id_venchelt FROM "+] +; + ["]+ Alltrim(gcs) + [.vnom_venchel v where 2=2"] + pcfiltru = [1=2] + pcschema = [''] + pcorder = [explicatie] + pccoloane = [explicatie,tip] + pcTitlu = [Alegeti venitul\cheltuiala] + pcTitluColoane = [Explicatie,Tip] + lnRec=Recno() + locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane,"") + If !Empty(locauta.explicatie) + Select actcv + Go lnRec + Replace id_venchelt With locauta.id_venchelt + Replace venchelt With locauta.explicatie + lcNewValue=Nvl(Alltrim(venchelt),'') + Else + lcNewValue=lcOldValue + Endif + This.SetFocus() + Thisform.coldvalue=lcOldValue + Thisform.cnewvalue=lcNewValue + Release locauta + For i=1 To Thisform.grid1.ColumnCount + If Thisform.grid1.Columns(i).ColumnOrder=This.Parent.ColumnOrder+1 + Exit + Endif + Endfor + Thisform.grid1.Columns(i).SetFocus() + Else + DoDefault() + Endif + ENDPROC + + PROCEDURE grid1.Init + *!* this.SetAll("DynamicForeColor", "IIF(abs(totctva-achitat)<1000,RGB(0,0,0),iif(totctva (preccred+credit)),RGB(255,0,0),RGB(0,0,255)))", "Column") + *!* Endif + ENDPROC + + PROCEDURE Text1.Refresh + THIS.FORECOLOR=IIF(thisform.ntotdebit >=0, RGB(0,0,0), RGB(255,0,0)) + this.Value = thisform.ntotdebit + ENDPROC + + PROCEDURE Text2.Refresh + THIS.FORECOLOR=IIF(thisform.ntotcredit >=0, RGB(0,0,0), RGB(255,0,0)) + this.Value = thisform.ntotcredit + ENDPROC + + PROCEDURE Text3.Refresh + THIS.FORECOLOR=IIF(thisform.ntotsold >=0, RGB(0,0,0), RGB(255,0,0)) + this.Value = thisform.ntotsold + ENDPROC + + PROCEDURE Text4.Refresh + THIS.FORECOLOR=IIF(thisform.ndebitval >=0, RGB(0,0,0), RGB(255,0,0)) + this.Value = thisform.ndebitval + ENDPROC + + PROCEDURE Text5.Refresh + THIS.FORECOLOR=IIF(thisform.ncreditval >=0, RGB(0,0,0), RGB(255,0,0)) + this.Value = thisform.ncreditval + ENDPROC + + PROCEDURE Text6.Refresh + THIS.FORECOLOR=IIF(thisform.ntotsoldval >=0, RGB(0,0,0), RGB(255,0,0)) + this.Value = thisform.ntotsoldval + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_ireg_parteneri_old AS frm_ireg_parteneri OF "..\comun\clase\oparteneri.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="GRID1.Column36.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="GRID1.Column36.Text1" UniqueID="" Timestamp="" /> + + * + DoCreate = .T. + Name = "frm_ireg_parteneri" + Label6.Name = "Label6" + SHAPE2.Name = "SHAPE2" + Shape1.Name = "Shape1" + _shape1.Name = "_shape1" + Gridsort1.Name = "Gridsort1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + GRID1.cAcont.Header1.Name = "Header1" + GRID1.cAcont.Name = "cAcont" + GRID1.cAcont.Text1.Name = "Text1" + GRID1.CCOD.ColumnOrder = 33 + GRID1.CCOD.Header1.Name = "Header1" + GRID1.CCOD.Name = "CCOD" + GRID1.CCOD.Text1.Name = "Text1" + GRID1.cCredit.ColumnOrder = 21 + GRID1.cCredit.Header1.Name = "Header1" + GRID1.cCredit.Name = "cCredit" + GRID1.cCredit.Text1.Name = "Text1" + GRID1.cCurs.ColumnOrder = 25 + GRID1.cCurs.Header1.Name = "Header1" + GRID1.cCurs.Name = "cCurs" + GRID1.cCurs.Text1.Name = "Text1" + GRID1.cDataAct.Header1.Name = "Header1" + GRID1.cDataAct.Name = "cDataAct" + GRID1.cDataAct.Text1.Name = "Text1" + GRID1.cDataireg.Header1.Name = "Header1" + GRID1.cDataireg.Name = "cDataireg" + GRID1.cDataireg.Text1.Name = "Text1" + GRID1.cDataScad.Header1.Name = "Header1" + GRID1.cDataScad.Name = "cDataScad" + GRID1.cDataScad.Text1.Name = "Text1" + GRID1.cDebit.ColumnOrder = 20 + GRID1.cDebit.Header1.Name = "Header1" + GRID1.cDebit.Name = "cDebit" + GRID1.cDebit.Text1.Name = "Text1" + GRID1.cExplicatia.ColumnOrder = 17 + GRID1.cExplicatia.Header1.Name = "Header1" + GRID1.cExplicatia.Name = "cExplicatia" + GRID1.cExplicatia.Text1.Name = "Text1" + GRID1.cExplicatia4.ColumnOrder = 30 + GRID1.cExplicatia4.Header1.Name = "Header1" + GRID1.cExplicatia4.Name = "cExplicatia4" + GRID1.cExplicatia4.Text1.Name = "Text1" + GRID1.cExplicatia5.ColumnOrder = 31 + GRID1.cExplicatia5.Header1.Name = "Header1" + GRID1.cExplicatia5.Name = "cExplicatia5" + GRID1.cExplicatia5.Text1.Name = "Text1" + GRID1.cfdoc.Header1.Name = "Header1" + GRID1.cfdoc.Name = "cfdoc" + GRID1.cfdoc.Text1.Name = "Text1" + GRID1.cId_fact.ColumnOrder = 34 + GRID1.cId_fact.Header1.Name = "Header1" + GRID1.cId_fact.Name = "cId_fact" + GRID1.cId_fact.Text1.Name = "Text1" + GRID1.cId_part.ColumnOrder = 36 + GRID1.cId_part.Header1.Name = "Header1" + GRID1.cId_part.Name = "cId_part" + GRID1.cId_part.Text1.Name = "Text1" + GRID1.cId_set.ColumnOrder = 35 + GRID1.cId_set.Header1.Name = "Header1" + GRID1.cId_set.Name = "cId_set" + GRID1.cId_set.Text1.Name = "Text1" + GRID1.cNrAct.Header1.Name = "Header1" + GRID1.cNrAct.Name = "cNrAct" + GRID1.cNrAct.Text1.Name = "Text1" + GRID1.cnresp.ColumnOrder = 19 + GRID1.cnresp.Header1.Name = "Header1" + GRID1.cnresp.Name = "cnresp" + GRID1.cnresp.Text1.Name = "Text1" + GRID1.cNrord.ColumnOrder = 18 + GRID1.cNrord.Header1.Name = "Header1" + GRID1.cNrord.Name = "cNrord" + GRID1.cNrord.Text1.Name = "Text1" + GRID1.CNUME.Header1.Name = "Header1" + GRID1.CNUME.Name = "CNUME" + GRID1.CNUME.Text1.Name = "Text1" + GRID1.cNume_val.ColumnOrder = 24 + GRID1.cNume_val.Header1.Name = "Header1" + GRID1.cNume_val.Name = "cNume_val" + GRID1.cNume_val.Text1.Name = "Text1" + GRID1.COLUMN32.Header1.Name = "Header1" + GRID1.COLUMN32.Name = "COLUMN32" + GRID1.COLUMN32.Text1.Name = "Text1" + GRID1.COLUMN35.ColumnOrder = 9 + GRID1.COLUMN35.Header1.Name = "Header1" + GRID1.COLUMN35.Name = "COLUMN35" + GRID1.COLUMN35.Text1.Name = "Text1" + GRID1.COLUMN35.Width = 101 + GRID1.Column36.ColumnOrder = 10 + GRID1.Column36.ControlSource = "rate_acoperite" + GRID1.Column36.Name = "Column36" + GRID1.Column36.Width = 98 + GRID1.ColumnCount = 36 + GRID1.cPrecCred.ColumnOrder = 27 + GRID1.cPrecCred.Header1.Name = "Header1" + GRID1.cPrecCred.Name = "cPrecCred" + GRID1.cPrecCred.Text1.Name = "Text1" + GRID1.cPrecDeb.ColumnOrder = 26 + GRID1.cPrecDeb.Header1.Name = "Header1" + GRID1.cPrecDeb.Name = "cPrecDeb" + GRID1.cPrecDeb.Text1.Name = "Text1" + GRID1.cPrecValCred.ColumnOrder = 29 + GRID1.cPrecValCred.Header1.Name = "Header1" + GRID1.cPrecValCred.Name = "cPrecValCred" + GRID1.cPrecValCred.Text1.Name = "Text1" + GRID1.cPrecValDeb.ColumnOrder = 28 + GRID1.cPrecValDeb.Header1.Name = "Header1" + GRID1.cPrecValDeb.Name = "cPrecValDeb" + GRID1.cPrecValDeb.Text1.Name = "Text1" + GRID1.cSoldFinal.ColumnOrder = 13 + GRID1.cSoldFinal.Header1.Name = "Header1" + GRID1.cSoldFinal.Name = "cSoldFinal" + GRID1.cSoldFinal.Text1.Name = "Text1" + GRID1.cSoldVal.ColumnOrder = 16 + GRID1.cSoldVal.Header1.Name = "Header1" + GRID1.cSoldVal.Name = "cSoldVal" + GRID1.cSoldVal.Text1.Name = "Text1" + GRID1.cTotCred.ColumnOrder = 12 + GRID1.cTotCred.Header1.Name = "Header1" + GRID1.cTotCred.Name = "cTotCred" + GRID1.cTotCred.Text1.Name = "Text1" + GRID1.cTotCredVal.ColumnOrder = 15 + GRID1.cTotCredVal.Header1.Name = "Header1" + GRID1.cTotCredVal.Name = "cTotCredVal" + GRID1.cTotCredVal.Text1.Name = "Text1" + GRID1.cTotDeb.ColumnOrder = 11 + GRID1.cTotDeb.Header1.Name = "Header1" + GRID1.cTotDeb.Name = "cTotDeb" + GRID1.cTotDeb.Text1.Name = "Text1" + GRID1.CTOTDEBVAL.ColumnOrder = 14 + GRID1.CTOTDEBVAL.Header1.Name = "Header1" + GRID1.CTOTDEBVAL.Name = "CTOTDEBVAL" + GRID1.CTOTDEBVAL.Text1.Name = "Text1" + GRID1.cValCredit.ColumnOrder = 23 + GRID1.cValCredit.Header1.Name = "Header1" + GRID1.cValCredit.Name = "cValCredit" + GRID1.cValCredit.Text1.Name = "Text1" + GRID1.cValDebit.ColumnOrder = 22 + GRID1.cValDebit.Header1.Name = "Header1" + GRID1.cValDebit.Name = "cValDebit" + GRID1.cValDebit.Text1.Name = "Text1" + GRID1.cVenChelt.ColumnOrder = 32 + GRID1.cVenChelt.Header1.Name = "Header1" + GRID1.cVenChelt.Name = "cVenChelt" + GRID1.cVenChelt.Text1.Name = "Text1" + GRID1.Name = "GRID1" + GRID1.Panel = 1 + But_reface1.lvizibil = .F. + But_reface1.Name = "But_reface1" + But_modifica1.lvizibil = .F. + But_modifica1.Name = "But_modifica1" + But_listare3.Name = "But_listare3" + But_excel1.Name = "But_excel1" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Ck_firma.Alignment = 0 + Ck_firma.Name = "Ck_firma" + Ck_fel_doc.Alignment = 0 + Ck_fel_doc.Name = "Ck_fel_doc" + Ck_cont.Alignment = 0 + Ck_cont.Name = "Ck_cont" + Ck_analitic.Alignment = 0 + Ck_analitic.Name = "Ck_analitic" + Ck_datascad.Alignment = 0 + Ck_datascad.Name = "Ck_datascad" + Ck_datadoc.Alignment = 0 + Ck_datadoc.Name = "Ck_datadoc" + Ck_nrdoc.Alignment = 0 + Ck_nrdoc.Name = "Ck_nrdoc" + ck_debit.Alignment = 0 + ck_debit.Name = "ck_debit" + ck_credit.Alignment = 0 + ck_credit.Name = "ck_credit" + ck_sold.Alignment = 0 + ck_sold.Name = "ck_sold" + Ck_explicatia4.Alignment = 0 + Ck_explicatia4.Name = "Ck_explicatia4" + Ck_lucrare.Alignment = 0 + Ck_lucrare.Name = "Ck_lucrare" + Ck_valuta.Alignment = 0 + Ck_valuta.Name = "Ck_valuta" + Ck_explicatia.Alignment = 0 + Ck_explicatia.Name = "Ck_explicatia" + Ck_responsabil.Alignment = 0 + Ck_responsabil.Name = "Ck_responsabil" + Check3.Alignment = 0 + Check3.Name = "Check3" + Check4.Alignment = 0 + Check4.Name = "Check4" + CMD_CAUTA1.Name = "CMD_CAUTA1" + CMD_RESET1.Name = "CMD_RESET1" + LB_SIMPLU1.Name = "LB_SIMPLU1" + Label3.Name = "Label3" + Text1.Name = "Text1" + Text2.Name = "Text2" + Text3.Name = "Text3" + Text4.Name = "Text4" + Text5.Name = "Text5" + Text6.Name = "Text6" + Label2.Name = "Label2" + Label4.Name = "Label4" + Label5.Name = "Label5" + Label9.Name = "Label9" + Label8.Name = "Label8" + Cb_nom_valute1.Name = "Cb_nom_valute1" + oMenuShortcut.Name = "oMenuShortcut" + Command1.Name = "Command1" + cmdIncasPl.Name = "cmdIncasPl" + Command2.Name = "Command2" + Ck_venchelt.Alignment = 0 + Ck_venchelt.Name = "Ck_venchelt" + Command3.Name = "Command3" + Ck_scadente.Alignment = 0 + Ck_scadente.Name = "Ck_scadente" + Ck_contract.Alignment = 0 + Ck_contract.Name = "Ck_contract" + But_listare1.Name = "But_listare1" + But_listare2.Name = "But_listare2" + * + + ADD OBJECT 'GRID1.Column36.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Rate acoperite", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'GRID1.Column36.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE do_cauta + && am suprascris metoda do_cauta ca sa scot din lcfiltru conditia de an, luna + + LOCAL lcFiltru + lcFiltru = "" + + *!* If m.nivel>1 + *!* lcFiltru = lcFiltru + [ AND ID_UTIL=]+ALLTRIM(STR(gnidutil))+[ ] + *!* ENDIF + + * nrdoc + IF THISFORM.ck_nrdoc.VALUE=1 + lcFiltru = lcFiltru + THISFORM.ck_nrdoc.filtru + ENDIF + * responsabil + IF THISFORM.ck_responsabil.VALUE=1 + lcFiltru = lcFiltru + THISFORM.ck_responsabil.filtru + ENDIF + * dataDoc + IF THIS.ck_dataDoc.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_dataDoc.filtru + ENDIF + + * datascad + IF THIS.ck_datascad.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_datascad.filtru + ENDIF + + * analitic + IF THIS.ck_analitic.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_analitic.filtru + ENDIF + + * cont + IF THIS.ck_cont.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_cont.filtru + ENDIF + + * firma + IF THIS.ck_firma.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_firma.filtru + ENDIF + + * venit_cheltuiala + IF THIS.ck_venchelt.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_venchelt.filtru + ENDIF + + * lucrare/comanda + IF THIS.ck_lucrare.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_lucrare.filtru + ENDIF + + * contract + IF THIS.ck_contract.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_contract.filtru + ENDIF + + * debit + IF THISFORM.ck_debit.VALUE=1 + lcFiltru = lcFiltru + THISFORM.ck_debit.filtru + ENDIF + + * credit + IF THISFORM.ck_credit.VALUE=1 + lcFiltru = lcFiltru + THISFORM.ck_credit.filtru + ENDIF + + * sold + IF THIS.ck_sold.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_sold.filtru + ENDIF + + * valuta + IF THIS.ck_valuta.VALUE = 1 + lcFiltru = lcFiltru + THISFORM.ck_valuta.filtru + ENDIF + + * explicatia + IF THIS.ck_explicatia.VALUE = 1 + lcFiltru = lcFiltru + THIS.ck_explicatia.filtru + ENDIF + + * fel document + IF THIS.Ck_fel_doc.VALUE = 1 + lcFiltru = lcFiltru + THIS.Ck_fel_doc.filtru + ENDIF + + *scadente + IF THIS.Ck_scadente.VALUE = 1 + lcFiltru = lcFiltru + THIS.Ck_scadente.filtru + ENDIF + + *explicatia4 + IF THIS.ck_explicatia4.VALUE=1 + lcFiltru = lcFiltru + THIS.ck_explicatia4.filtru + ENDIF + + *ACHITATE + IF THIS.check3.VALUE = 1 + IF THISFORM.lActiv + lcFiltru = lcFiltru + "and (i.precdeb + i.debit) - (i.preccred + i.credit) = 0" + ELSE + lcFiltru = lcFiltru + "and (i.preccred + i.credit) - (i.precdeb + i.debit) = 0" + ENDIF + ENDIF + + *NEACHITATE + IF THIS.check4.VALUE = 1 + IF THISFORM.lActiv + lcFiltru = lcFiltru + " and (i.precdeb + i.debit) - ( i.preccred + i.credit) <> 0" + ELSE + lcFiltru = lcFiltru + "and (i.preccred + i.credit) - (i.precdeb + i.debit) <> 0" + ENDIF + ENDIF + + *!* If This.check7.Value = 1 + *!* lcFiltru = lcFiltru + " and extract (year from i.datascad) =" + Alltrim(Str(gnAn)) + "and extract (month from i.datascad) = " + Alltrim(Str(gnLuna)) + *!* Endif + + *!* If !Empty(lcFiltru) + *!* lcFiltru = [i.cont in ('] + Alltrim(STRTRAN(Thisform.cont, [,], [','])) + [') and i.luna = ] + Alltrim(Str(gnLuna)) + [ and i.an = ] + Alltrim(Str(gnAn)) + lcFiltru + *!* Else + *!* lcFiltru = [i.cont in ('] + Alltrim(STRTRAN(Thisform.cont, [,], [','])) + [') and i.luna = ] + Alltrim(Str(gnLuna)) + [ and i.an = ] + Alltrim(Str(gnAn)) + *!* Endif + + IF !EMPTY(lcFiltru) + lcFiltru = [i.cont in ('] + ALLTRIM(STRTRAN(THISFORM.CONT, [,], [','])) + [') ] + lcFiltru + ELSE + lcFiltru = [i.cont in ('] + ALLTRIM(STRTRAN(THISFORM.CONT, [,], [','])) + [') ] + ENDIF + + + THISFORM.MOUSEPOINTER= 11 + THISFORM.LOCKSCREEN=.T. + THISFORM.actualizeaza_grid1(lcFiltru) + THISFORM.LOCKSCREEN=.F. + THISFORM.MOUSEPOINTER= 0 + + IF RECCOUNT('actcv')=0 + MESSAGEBOX("Cautarea nu a intors rezultate!",0+48,"Info cautare") + THISFORM.ck_nrdoc.SETFOCUS() + ELSE + THISFORM.grid1.SETFOCUS() + ENDIF + + ENDPROC + + PROCEDURE Init + DODEFAULT() + this.but_modifica1.Visible = .F. + this.but_reface1.Visible = .F. + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_multiplica_rate AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtNrRate" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtFrecventa" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtDataI" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValRata" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtNume_val" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Optiongroup1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtDen_rata" UniqueID="" Timestamp="" /> + + * + BorderStyle = 1 + DoCreate = .T. + Height = 292 + Name = "frm_multiplica_rate" + Width = 419 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 696 + _shape2.Height = 29 + _shape2.Left = 355 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 64 + Lb_titlu_alb_b121.Caption = "Adãugare rate" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 9 + BUT_TERMIN1.Left = 388 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 7 + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 113 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 5 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 357, ; + Name = "But_renunt1", ; + TabIndex = 8, ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Command2' AS commandbutton WITH ; + Caption = "", ; + FontName = "Arial Narrow", ; + Height = 25, ; + Left = 225, ; + Name = "Command2", ; + Picture = ..\grafice\find.bmp, ; + TabIndex = 6, ; + Top = 173, ; + Width = 28 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Label1' AS label WITH ; + BackStyle = 0, ; + Caption = "Nr rate", ; + Height = 17, ; + Left = 12, ; + Name = "Label1", ; + TabIndex = 10, ; + Top = 47, ; + Width = 40 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Frecvenþa", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 12, ; + Name = "Label2", ; + TabIndex = 11, ; + Top = 72, ; + Width = 55 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data de început", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 12, ; + Name = "Label3", ; + TabIndex = 12, ; + Top = 98, ; + Width = 88 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare ratã", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 12, ; + Name = "Label4", ; + TabIndex = 14, ; + Top = 124, ; + Width = 68 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valuta", ; + Height = 17, ; + Left = 12, ; + Name = "Label5", ; + TabIndex = 15, ; + Top = 177, ; + Width = 36 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Denumire ratã", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 12, ; + Name = "Label6", ; + TabIndex = 13, ; + Top = 150, ; + Width = 81 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label7' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Pentru luna", ; + Height = 17, ; + Left = 12, ; + Name = "Label7", ; + TabIndex = 16, ; + Top = 202, ; + Width = 65 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Optiongroup1' AS optiongroup WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + ButtonCount = 4, ; + ControlSource = "pnPtLuna", ; + Height = 84, ; + Left = 120, ; + Name = "Optiongroup1", ; + TabIndex = 18, ; + Top = 202, ; + Value = 1, ; + Width = 168, ; + Option1.AutoSize = .T., ; + Option1.BackStyle = 0, ; + Option1.Caption = "", ; + Option1.Height = 17, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 5, ; + Option1.Value = 1, ; + Option1.Width = 98, ; + Option2.AutoSize = .T., ; + Option2.BackStyle = 0, ; + Option2.Caption = "luna în care se factureazã", ; + Option2.FontCharSet = 238, ; + Option2.Height = 17, ; + Option2.Left = 5, ; + Option2.Name = "Option2", ; + Option2.Top = 24, ; + Option2.Width = 158, ; + Option3.AutoSize = .T., ; + Option3.BackStyle = 0, ; + Option3.Caption = "luna precedentã", ; + Option3.FontCharSet = 238, ; + Option3.Height = 17, ; + Option3.Left = 5, ; + Option3.Name = "Option3", ; + Option3.Top = 43, ; + Option3.Width = 107, ; + Option4.AutoSize = .T., ; + Option4.BackStyle = 0, ; + Option4.Caption = "luna urmãtoare", ; + Option4.FontCharSet = 238, ; + Option4.Height = 17, ; + Option4.Left = 5, ; + Option4.Name = "Option4", ; + Option4.Top = 62, ; + Option4.Width = 102 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'txtDataI' AS textbox WITH ; + ControlSource = "pdDataI", ; + Format = "k", ; + Height = 23, ; + Left = 120, ; + Name = "txtDataI", ; + TabIndex = 3, ; + Top = 95, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtDen_rata' AS textbox WITH ; + ControlSource = "pcDen_rata", ; + Format = "k", ; + Height = 23, ; + Left = 120, ; + Name = "txtDen_rata", ; + TabIndex = 5, ; + Top = 147, ; + Width = 288 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtFrecventa' AS textbox WITH ; + ControlSource = "pnFrecventa", ; + Height = 23, ; + Left = 120, ; + Name = "txtFrecventa", ; + ReadOnly = .T., ; + TabIndex = 2, ; + Top = 69, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtNrRate' AS textbox WITH ; + ControlSource = "pnNrRate", ; + Format = "rk", ; + Height = 23, ; + Left = 120, ; + Name = "txtNrRate", ; + TabIndex = 1, ; + Top = 44, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtNume_val' AS textbox WITH ; + ControlSource = "pcNume_val", ; + Format = "k", ; + Height = 23, ; + Left = 120, ; + Name = "txtNume_val", ; + ReadOnly = .T., ; + TabIndex = 17, ; + Top = 174, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValRata' AS textbox WITH ; + ControlSource = "pnValRata", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(14,gnPc)), ; + Left = 120, ; + Name = "txtValRata", ; + TabIndex = 4, ; + Top = 121, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE inainte_de_do_termin + IF EMPTY(pdDataI) OR ISNULL(pdDataI) + AMESSAGEBOX('Nu ati completat data de inceput',0+48,'Atentie') + thisform.txtDataI.SetFocus() + RETURN .F. + ENDIF + ENDPROC + + PROCEDURE Command2.Click + locauta = caut_valuta() + If buton=2 + Return + Endif + + pnid_valuta = locauta.id_valuta + pcnume_val = locauta.nume_val + Thisform.txtNume_val.Refresh + *!* modificare v 2.0.46 + With Thisform.txtValRata + .InputMask =get_mask(14,Iif(locauta.moneda_nationala = 1,gnPc,gnPVal)) + .Refresh() + Endwith + Thisform.txtValRata.Refresh() + *!* modificare v 2.0.46 ^ + + ENDPROC + + PROCEDURE Optiongroup1.Valid + pnPtLuna = this.Value + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_politica_preturi AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grd_articole" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cArticol.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cArticol.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cUM.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cUM.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cPret.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cPret.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cValuta.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.cValuta.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_articole.Column5.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Combo1" UniqueID="" Timestamp="" /> + + * + *m: do_alege_politica_pret + *p: cpolitica_pret + *p: nid_politica_pret + * + + * + BorderStyle = 1 + cpolitica_pret = + DoCreate = .T. + Height = 541 + Name = "frm_politica_preturi" + nid_politica_pret = 0 + Width = 473 + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 480 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 413 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 59 + Lb_titlu_alb_b121.Caption = "Politici de preþuri" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 443 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 264 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 7 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Anchor = 9, ; + Left = 413, ; + Name = "But_renunt1", ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Combo1' AS combobox WITH ; + ColumnCount = 3, ; + ColumnLines = .F., ; + ColumnWidths = "200,65,65", ; + Height = 24, ; + Left = 116, ; + Name = "Combo1", ; + RowSource = "crsPoliticiGrup.nume_lista_preturi,nume_val,datai,datas,id_politica", ; + RowSourceType = 2, ; + Top = 40, ; + Width = 292 + *< END OBJECT: BaseClass="combobox" /> + + ADD OBJECT 'grd_articole' AS _grdrow WITH ; + ColumnCount = 5, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 458, ; + Left = 13, ; + Name = "grd_articole", ; + Panel = 1, ; + RecordSource = "cPol_pret_art", ; + TabIndex = 10, ; + Top = 70, ; + Width = 446, ; + Column1.ColumnOrder = 2, ; + Column1.ControlSource = "nume_articol", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "cArticol", ; + Column1.Width = 225, ; + Column2.ColumnOrder = 3, ; + Column2.ControlSource = "um", ; + Column2.FontName = "Arial Narrow", ; + Column2.Name = "cUM", ; + Column2.Width = 39, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "pretftva", ; + Column3.FontName = "Arial Narrow", ; + Column3.InputMask = (get_mask(14,gnPPretV)), ; + Column3.Name = "cPret", ; + Column3.Width = 72, ; + Column4.ColumnOrder = 5, ; + Column4.ControlSource = "nume_val", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "cValuta", ; + Column4.Width = 38, ; + Column5.ColumnOrder = 1, ; + Column5.ControlSource = "ales", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "Column5", ; + Column5.Sparse = .F., ; + Column5.Width = 36 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grd_articole.cArticol.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Articol", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_articole.cArticol.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_articole.Column5.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Height = 17, ; + Left = 13, ; + Name = "Check1", ; + Top = 19, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'grd_articole.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Ales", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_articole.cPret.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Pret", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_articole.cPret.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_articole.cUM.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "UM", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_articole.cUM.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_articole.cValuta.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_articole.cValuta.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Politica de preþuri", ; + FontCharSet = 238, ; + Height = 17, ; + Left = 10, ; + Name = "Label1", ; + Top = 43, ; + Width = 97 + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Combo1.InteractiveChange + Thisform.grd_articole.salveaza_grid() + + If Used('cPol_pret_art') + Use In cPol_pret_art + Endif + + Private poPol_pret_art + Store '' To poPol_pret_art + + lcSchema1 = [] + lcSelect1 = [select ppa.*, 0 as ales from vcrm_politici_pret_art ppa] + lcOrder1 = [] + lcgroup = [] + lcFiltru1 = [2=2] + lcFiltruOriginal = [ppa.id_pol=]+Alltrim(Str(crsPoliticiGrup.id_politica)) + llModParam = .T. + llAfiseaza = .F. + + gencursor('poPol_pret_art','cPol_pret_art', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poPol_pret_art.ca_baza1.afisare() + + Release poPol_pret_art + *!* modificare v 2.0.46 + This.Parent.grd_articole.cPret.InputMask = get_mask(14,Iif(crsPoliticiGrup.moneda_nationala=1,gnPPretV,gnPVal)) + *!* modificare v 2.0.46 ^ + Thisform.grd_articole.incarca_grid() + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_ratedefacturat AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_txDatai" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_txDataf" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtPartener" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="img_cautare" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_excel1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtDenumire_tip" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_image1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lbPerioada" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_facturate" UniqueID="" Timestamp="" /> + + * + *m: do_alege_partener + *m: do_alege_tip_ctr + *p: dataf + *p: datai + *p: nid_part + *p: nid_tip_ctr + * + + * + BorderStyle = 1 + dataf = {} + datai = {} + DoCreate = .T. + Height = 183 + Name = "frm_ratedefacturat" + nid_part = 0 + nid_tip_ctr = 0 + Width = 313 + _shape1.Height = 29 + _shape1.Left = -2 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 559 + _shape2.Height = 29 + _shape2.Left = 221 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 93 + Lb_titlu_alb_b121.Caption = "Rate de facturat" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 9 + BUT_TERMIN1.Left = 283 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 7 + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 130 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 2 + * + + ADD OBJECT '_image1' AS _image WITH ; + Anchor = 9, ; + Height = 20, ; + Left = 271, ; + Name = "_image1", ; + Picture = ..\..\roaproductie\comun\grafice\alege.bmp, ; + Stretch = 1, ; + Top = 127, ; + Width = 20 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="image" /> + + ADD OBJECT '_txDataf' AS _textbox WITH ; + ControlSource = "thisform.dataf", ; + DisabledForeColor = 0,0,0, ; + FontName = "Arial Narrow", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Format = "k", ; + Height = 22, ; + Left = 116, ; + Name = "_txDataf", ; + TabIndex = 2, ; + Top = 58, ; + Width = 72, ; + ZOrderSet = 8 + *< END OBJECT: ClassLib="..\..\roagest\comun\clase\_baza.vcx" BaseClass="textbox" /> + + ADD OBJECT '_txDatai' AS _textbox WITH ; + ControlSource = "thisform.datai", ; + DisabledForeColor = 0,0,0, ; + FontName = "Arial Narrow", ; + FontSize = 10, ; + ForeColor = 0,0,0, ; + Format = "k", ; + Height = 22, ; + Left = 32, ; + Name = "_txDatai", ; + TabIndex = 1, ; + Top = 58, ; + Width = 72, ; + ZOrderSet = 8 + *< END OBJECT: ClassLib="..\..\roagest\comun\clase\_baza.vcx" BaseClass="textbox" /> + + ADD OBJECT 'But_excel1' AS but_excel WITH ; + Anchor = 9, ; + Left = 222, ; + Name = "But_excel1", ; + TabIndex = 8, ; + Top = 1 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 253, ; + Name = "But_listare1", ; + TabIndex = 6, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'ck_facturate' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Inclusiv ratele facturate", ; + Height = 17, ; + Left = 17, ; + Name = "ck_facturate", ; + TabIndex = 5, ; + Top = 161, ; + Width = 143 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'img_cautare' AS _image WITH ; + Anchor = 9, ; + Height = 20, ; + Left = 271, ; + Name = "img_cautare", ; + Picture = ..\..\roaproductie\comun\grafice\alege.bmp, ; + Stretch = 1, ; + Top = 100, ; + Width = 20 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="image" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Partener", ; + Height = 17, ; + Left = 17, ; + Name = "Label1", ; + TabIndex = 11, ; + Top = 102, ; + Width = 49 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Tip contract", ; + Height = 17, ; + Left = 17, ; + Name = "Label2", ; + TabIndex = 12, ; + Top = 129, ; + Width = 65 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lbPerioada' AS label WITH ; + Alignment = 2, ; + BackColor = 255,255,255, ; + Caption = "Perioada", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + FontSize = 10, ; + Height = 17, ; + Left = 25, ; + Name = "lbPerioada", ; + TabIndex = 10, ; + Top = 38, ; + Width = 63, ; + ZOrderSet = 16 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape3' AS shape WITH ; + BackStyle = 0, ; + Height = 39, ; + Left = 17, ; + Name = "Shape3", ; + Top = 48, ; + Width = 278, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'txtDenumire_tip' AS textbox WITH ; + Anchor = 11, ; + Format = "k", ; + Height = 23, ; + Left = 98, ; + Name = "txtDenumire_tip", ; + TabIndex = 4, ; + Top = 126, ; + Value = , ; + Width = 168 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtPartener' AS textbox WITH ; + Anchor = 11, ; + Format = "k", ; + Height = 23, ; + Left = 98, ; + Name = "txtPartener", ; + TabIndex = 3, ; + Top = 99, ; + Value = , ; + Width = 168 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE do_alege_partener + LOCAL lcIdTipPart, lcTitlu + STORE '' TO lcIdTipPart, lcTitlu + + DO CASE + CASE gnParametru_prog = 1 && contracte clienti + lcIdTipPart = [-1] + lcTitlu = 'Clienti' + CASE gnParametru_prog = 2 && contracte furnizori + lcIdTipPart = [-2] + lcTitlu = 'Furnizori' + ENDCASE + + loCauta = caut_partener(lcIdTipPart, lcTitlu) + *!* IF buton = 2 + *!* RETURN + *!* ENDIF + + IF EMPTY(loCauta.id_part) + THISFORM.nid_part = 0 + THISFORM.txtPartener.VALUE = '' + ELSE + THISFORM.nid_part = loCauta.id_part + THISFORM.txtPartener.VALUE = loCauta.denumire + ENDIF + + THISFORM.txtPartener.REFRESH + + + ENDPROC + + PROCEDURE do_alege_tip_ctr + LOCAL lcselect, lcfiltru, lcschema, lcorder, lccoloane, lcTitlu, lcTitluColoane, lcFiltruOriginal, lcNumeProc + lcselect = [select id_tip_ctr, denumire_tip FROM vtipuri_contracte] + lcfiltru = [1=2] + lcschema = [] + lcorder = [denumire_tip] + lccoloane = [denumire_tip] + lcTitlu = [Alegeti tipul de contract] + lcTitluColoane = [Tip contract] + DO CASE + CASE gnParametru_prog=1 + lcFiltruOriginal = [substr(tata,2,6)='CLIENT'] + CASE gnParametru_prog=2 + lcFiltruOriginal = [substr(tata,2,6)='FURNIZ'] + OTHERWISE + lcFiltruOriginal = [] + ENDCASE + lcNumeProc = "" + locauta = cauta_alfa(lcselect, lcfiltru, lcschema, lcorder, lccoloane, lcTitlu, lcTitluColoane, lcNumeProc, .F., lcFiltruOriginal) + + *!* IF buton=2 + *!* RETURN + *!* ENDIF + + IF EMPTY(loCauta.id_tip_ctr) + THISFORM.nid_tip_ctr = 0 + thisform.txtDenumire_tip.Value = '' + ELSE + THISFORM.nid_tip_ctr = loCauta.id_tip_ctr + THISFORM.txtDenumire_tip.Value = loCauta.denumire + ENDIF + + THISFORM.txtDenumire_tip.REFRESH + + + ENDPROC + + PROCEDURE inainte_de_do_listare + PRIVATE pcDataOra, pcTitlu, pcPerioada, pcDenumire, pcDenumire_tip, pcInclusivFacturate + pcDataOra = get_ora(2) + pcTitlu = 'Rate de facturat' + + LOCAL ldDataI, ldDataF, lcId_part, lcId_tip_ctr + + IF EMPTY(THISFORM.datai) + AMESSAGEBOX('Completati data de inceput',0+48,'Atentie!') + THISFORM._txDatai.SETFOCUS() + RETURN + ELSE + ldDataI = THISFORM.datai + ENDIF + + IF EMPTY(THISFORM.dataf) + AMESSAGEBOX('Completati data de sfarsit',0+48,'Atentie!') + THISFORM._txDataf.SETFOCUS() + RETURN + ELSE + ldDataF = THISFORM.dataf + ENDIF + + pcPerioada = DTOC(ldDataI)+ ' - ' +DTOC(ldDataF) + pcDenumire = NVL(THISFORM.txtPartener.VALUE,'') + pcDenumire_tip = NVL(THISFORM.txtDenumire_tip.VALUE,'') + + pcFacturate = ALLTRIM(STR(THISFORM.ck_facturate.VALUE)) && 1 + IF THISFORM.ck_facturate.VALUE = 0 + pcInclusivFacturate = '' + ELSE + pcInclusivFacturate = '' + ENDIF + + + lcId_part = IIF(EMPTY(THISFORM.nId_part),[NULL],ALLTRIM(STR(THISFORM.nId_part))) + lcId_tip_ctr = IIF(EMPTY(THISFORM.nId_tip_ctr),[NULL],ALLTRIM(STR(THISFORM.nId_tip_ctr))) + + lcSel = [{call pack_crm.rateDeFacturat(to_date(']+DTOS(ldDataI)+ [','YYYYMMDD'), to_date('] + DTOS(ldDataF)+[','YYYYMMDD'),]+; + lcId_part + [,] + lcId_tip_ctr + [,] + pcFacturate + [)}] + + lcCursor = 'cRateDeFacturat' + lnSucces = goExecutor.oExecute(lcSel, lcCursor) + IF lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + RETURN + ENDIF + + THISFORM.ALWAYSONTOP = .F. + + DO CASE + CASE gnParametru_prog = 1 + SELECT rf.* ; + FROM cRateDeFacturat rf ; + LEFT JOIN cContracte c ON c.id_ctr = rf.id_ctr ; + WHERE UPPER(SUBSTR(c.tata,2,6)) = 'CLIENT' ; + ORDER BY rf.data_rata, rf.denumire, rf.den_rata ; + INTO CURSOR cRateDeFacturat2 + CASE gnParametru_prog = 2 + SELECT rf.* ; + FROM cRateDeFacturat rf ; + LEFT JOIN cContracte c ON c.id_ctr = rf.id_ctr ; + ORDER BY rf.data_rata, rf.denumire, rf.den_rata ; + WHERE UPPER(SUBSTR(c.tata,2,6)) = 'FURNIZ' INTO CURSOR cRateDeFacturat2 + ENDCASE + + *!* modificare v 2.0.34 + goExport.export2frx([cRateDeFacturat2],[ratedefacturat]) + *!* SELECT cRateDeFacturat2 + *!* REPORT FORM ratedefacturat TO PRINTER PROMPT PREVIEW + *!* modificare v 2.0.34 ^ + + THISFORM.ALWAYSONTOP = .T. + + IF USED('cRateDeFacturat') + USE IN cRateDeFacturat + ENDIF + + IF USED('cRateDeFacturat2') + USE IN cRateDeFacturat2 + ENDIF + ENDPROC + + PROCEDURE Init + DODEFAULT() + + lcData1 = '01/'+ALLTRIM(STR(gnLuna))+'/'+ALLTRIM(STR(gnAn)) + thisform.datai = CTOD(lcData1) + thisform.dataf = ULTIMAZI(STR(gnAn), STR(gnLuna)) + ENDPROC + + PROCEDURE img_cautare.Click + thisform.do_alege_partener() + ENDPROC + + PROCEDURE Label1.Init + IIF(gnParametru_prog = 1,this.Caption="Client",IIF(gnParametru_prog = 2,this.Caption="Furnizor",'')) + ENDPROC + + PROCEDURE txtDenumire_tip.GotFocus + thisform.do_alege_tip_ctr() + ENDPROC + + PROCEDURE txtPartener.GotFocus + thisform.do_alege_partener() + ENDPROC + + PROCEDURE _image1.Click + thisform.do_alege_tip_ctr() + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_restdefacturat AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Ck_data_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="optIncetat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nr_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="ck_group_respons" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="optInactiv" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_restDeFacturat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nume" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_responsabil" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_valuta" UniqueID="" Timestamp="" /> + + * + DoCreate = .T. + Height = 138 + Name = "frm_restdefacturat" + Width = 421 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 444 + _shape2.Height = 29 + _shape2.Left = 360 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 62 + Lb_titlu_alb_b121.Caption = "Rest de facturat" + Lb_titlu_alb_b121.Left = 6 + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Height = 27 + BUT_TERMIN1.Left = 391 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + Gridsort1.Left = 144 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 8 + * + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Left = 360, ; + Name = "But_listare1", ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Ck_data_ctr' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = c.data, ; + Caption = "Data ctr.", ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_data_ctr", ; + TabIndex = 3, ; + tip = D, ; + Top = 93, ; + ZOrderSet = 4 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'ck_group_respons' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Grupare pe responsabili", ; + FontName = "Arial Narrow", ; + Left = 294, ; + Name = "ck_group_respons", ; + Top = 115 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nr_ctr' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = c.numar_aa, ; + Caption = "Nr. ctr.", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_nr_ctr", ; + TabIndex = 2, ; + Top = 75, ; + ZOrderSet = 15 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nume' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = c.denumire, ; + Caption = "Partener", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_nume", ; + TabIndex = 1, ; + Top = 57, ; + ZOrderSet = 14 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_responsabil' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = c.responsabil, ; + Caption = "Responsabil", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 80, ; + Name = "Ck_responsabil", ; + TabIndex = 1, ; + Top = 57, ; + ZOrderSet = 14 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_restDeFacturat' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Rest de facturat <> 0", ; + FontBold = .T., ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_restDeFacturat", ; + Top = 36 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_valuta' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = c.nume_val, ; + Caption = "Valuta", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 80, ; + Name = "Ck_valuta", ; + TabIndex = 1, ; + Top = 75, ; + ZOrderSet = 14 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'optInactiv' AS optiongroup WITH ; + Anchor = 3, ; + BackStyle = 0, ; + ButtonCount = 3, ; + Height = 49, ; + Left = 304, ; + Name = "optInactiv", ; + TabIndex = 12, ; + Top = 59, ; + Value = 1, ; + Width = 111, ; + ZOrderSet = 11, ; + Option1.BackStyle = 0, ; + Option1.Caption = "Contractele active", ; + Option1.FontName = "Arial Narrow", ; + Option1.Height = 18, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 1, ; + Option1.Value = 1, ; + Option1.Width = 126, ; + Option2.BackStyle = 0, ; + Option2.Caption = "Contractele inactive", ; + Option2.FontName = "Arial Narrow", ; + Option2.Height = 18, ; + Option2.Left = 5, ; + Option2.Name = "Option2", ; + Option2.Top = 15, ; + Option2.Width = 99, ; + Option3.BackStyle = 0, ; + Option3.Caption = "Toate contractele", ; + Option3.FontName = "Arial Narrow", ; + Option3.Height = 18, ; + Option3.Left = 5, ; + Option3.Name = "Option3", ; + Option3.Top = 29, ; + Option3.Width = 100 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'optIncetat' AS optiongroup WITH ; + Anchor = 3, ; + BackStyle = 0, ; + ButtonCount = 3, ; + Height = 49, ; + Left = 162, ; + Name = "optIncetat", ; + TabIndex = 11, ; + Top = 59, ; + Value = 1, ; + Width = 134, ; + ZOrderSet = 5, ; + Option1.BackStyle = 0, ; + Option1.Caption = "Contractele în desfãºurare", ; + Option1.FontCharSet = 238, ; + Option1.FontName = "Arial Narrow", ; + Option1.Height = 18, ; + Option1.Left = 4, ; + Option1.Name = "Option1", ; + Option1.Top = 1, ; + Option1.Value = 1, ; + Option1.Width = 126, ; + Option2.BackStyle = 0, ; + Option2.Caption = "Contractele încetate", ; + Option2.FontCharSet = 238, ; + Option2.FontName = "Arial Narrow", ; + Option2.Height = 18, ; + Option2.Left = 4, ; + Option2.Name = "Option2", ; + Option2.Top = 15, ; + Option2.Width = 99, ; + Option3.BackStyle = 0, ; + Option3.Caption = "Toate contractele", ; + Option3.FontName = "Arial Narrow", ; + Option3.Height = 18, ; + Option3.Left = 4, ; + Option3.Name = "Option3", ; + Option3.Top = 29, ; + Option3.Width = 87 + *< END OBJECT: BaseClass="optiongroup" /> + + PROCEDURE inainte_de_do_listare + Private pcFiltru, pnGroupResponsabil + Store '' To pcFiltru + Store 0 To pnGroupResponsabil + + Local lcCondSucursala + Store '' To lcCondSucursala + + If This.ck_nume.Value = 1 + pcFiltru = pcFiltru + This.ck_nume.filtru + Endif + + If This.ck_nr_ctr.Value = 1 + pcFiltru = pcFiltru + This.ck_nr_ctr.filtru + Endif + + If This.ck_data_ctr.Value = 1 + pcFiltru = pcFiltru + This.ck_data_ctr.filtru + Endif + + If This.ck_responsabil.Value = 1 + pcFiltru = pcFiltru + This.ck_responsabil.filtru + Endif + + If This.ck_valuta.Value = 1 + pcFiltru = pcFiltru + This.ck_valuta.filtru + Endif + + If This.ck_restDeFacturat.Value=1 + pcFiltru = pcFiltru + [ and round(sel2.valrata, 2) - round(sel2.valfact, 2) <> 0 ] + Endif + + Do Case + Case This.optIncetat.Value = 1 + pcFiltru = pcFiltru + [ and c.incetat = 0] + Case This.optIncetat.Value = 2 + pcFiltru = pcFiltru + [ and c.incetat = 1] + Case This.optIncetat.Value = 3 + pcFiltru = pcFiltru + [ and (c.incetat = 0 or c.incetat = 1)] + Endcase + + Do Case + Case This.optInactiv.Value = 1 && active + pcFiltru = pcFiltru + [ and c.inactiv = 0] + Case This.optInactiv.Value = 2 && inactive + pcFiltru = pcFiltru + [ and c.inactiv = 1] + Case This.optInactiv.Value = 3 && toate + pcFiltru = pcFiltru + [ and (c.inactiv = 0 or c.inactiv = 1)] + Endcase + + lcCondSucursala = Iif(!Isnull(gnIdSucursala), ' AND id_sucursala = ' + Alltrim(Str(gnIdSucursala)), '') + + If gnParametru_prog=1 + pcFiltru = pcFiltru + [ and substr(c.tata,2,6)='CLIENT'] + lcCondSucursala + Else + pcFiltru = pcFiltru + [ and substr(c.tata,2,6)='FURNIZ'] + lcCondSucursala + Endif + + + If !Empty(pcFiltru) + pcFiltru = Substr(pcFiltru,6) + Else + pcFiltru = [1=1] + Endif + + If Thisform.ck_group_respons.Value = 1 + pnGroupResponsabil = 1 + pcGroup1 = 'crsrestdefacturat.id_responsabil' + Else + pnGroupResponsabil = 0 + pcGroup1 = '1=1' + Endif + + *--- + + lcSel = [{call pack_crm.restdefacturat(?pcFiltru, ?pnGroupResponsabil)}] + lcCursor = 'crsRestDeFacturat' + If goExecutor.oExecuta(lcSel, lcCursor) + Thisform.AlwaysOnTop = .F. + goExport.export2frx(lcCursor,[rCtrRestDeFact]) + Thisform.AlwaysOnTop = .T. + Use In (lcCursor) + Endif + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_restdefacturat_mic AS frm_termin_renunt OF "..\comun\clase\_frm_child.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="ck_group_respons" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_restDeFacturat" UniqueID="" Timestamp="" /> + + * + BorderStyle = 1 + DoCreate = .T. + Height = 69 + Name = "frm_restdefacturat_mic" + Width = 375 + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Caption = "Rest de facturat" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Left = 156 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 7 + BUT_RENUNT1.Name = "BUT_RENUNT1" + * + + ADD OBJECT 'ck_group_respons' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Grupare pe responsabili", ; + ControlSource = "pnGroupResponsabil", ; + FontName = "Arial Narrow", ; + Left = 240, ; + Name = "ck_group_respons", ; + Top = 39 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_restDeFacturat' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Rest de facturat <> 0", ; + ControlSource = "pnRestDeFacturat", ; + FontBold = .T., ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_restDeFacturat", ; + Top = 41 + *< END OBJECT: ClassLib="..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + +ENDDEFINE + +DEFINE CLASS frm_selectie_nou AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Clb_categ_ctr" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_selectie1" UniqueID="" Timestamp="" /> + + * + *p: cnumevechi + *p: nid + *p: nnivelmodificare && - 1 daca utilizatorul are voie sa modifice toate datele ; 0 daca are voie sa modifice doar nr. de telefon + *p: orec + * + + * + BorderStyle = 1 + cnumevechi = + DoCreate = .T. + Height = 83 + Name = "frm_selectie_nou" + nnivelmodificare = -1 + Width = 358 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 744 + _shape2.Height = 29 + _shape2.Left = 291 + _shape2.Name = "_shape2" + _shape2.Top = -1 + _shape2.Width = 69 + Lb_titlu_alb_b121.Caption = "PROCEDURà SELECÞIE" + Lb_titlu_alb_b121.FontBold = .T. + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 5 + BUT_TERMIN1.Height = 27 + BUT_TERMIN1.Left = 328 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 3 + BUT_TERMIN1.Top = 0 + BUT_TERMIN1.Width = 30 + Gridsort1.Left = 240 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 5 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Height = 27, ; + Left = 296, ; + Name = "But_renunt1", ; + TabIndex = 4, ; + Top = 0, ; + Width = 30 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_categ_ctr' AS clb_tx_simplu WITH ; + Height = 29, ; + Left = 15, ; + Name = "Clb_categ_ctr", ; + TabIndex = 1, ; + Top = 40, ; + Width = 328, ; + Text_simplu1.ControlSource = "porec.selectie", ; + Text_simplu1.Left = 136, ; + Text_simplu1.Name = "Text_simplu1", ; + Text_simplu1.Top = 3, ; + Lb_simplu1.Caption = "Procedurã selecþie", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_selectie1' AS cus_odata_selectie WITH ; + Left = 210, ; + Name = "Cus_odata_selectie1", ; + Top = 1 + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + Local PLRETURN + lccontrol = Upper(This.ActiveControl.BaseClass ) + If Inlist(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval = This.ActiveControl.ControlSource + &lcval = Thisform.ActiveControl.Value + ENDIF + + Do Case + Case Empty(porec.selectie) + amessagebox('Nu ati completat denumirea procedurii de selectie!',0+48,"Atentie") + this.clb_selectie.text_simplu1.SetFocus() + PLRETURN = .F. + + OTHERWISE + PLRETURN = This.cus_odata_selectie1.salvare(This.OREC, This.NID) + + ENDCASE + + Return PLRETURN + + ENDPROC + + PROCEDURE Init + LPARAMETERS toRec, tnId, tcActiune + + DODEFAULT() + + THIS.orec = toRec + THIS.nid = tnId + THIS.cus_odata_selectie1.cactiune = tcActiune + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_selectii AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="clb_selectie" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_selectii" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_selectii.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_selectii.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_selectii.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_selectii.Column2.Text1" UniqueID="" Timestamp="" /> + + * + *m: do_adauga2 + *m: do_modifica2 + *m: do_sterge2 + * + + * + BorderStyle = 1 + cgridsortlist = grd_selectii + DoCreate = .T. + Height = 466 + Name = "frm_selectii" + Width = 711 + WindowState = 2 + _shape1.Anchor = 10 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 744 + _shape1.ZOrderSet = 2 + _shape2.Anchor = 8 + _shape2.Height = 29 + _shape2.Left = 577 + _shape2.Name = "_shape2" + _shape2.Top = -1 + _shape2.Width = 136 + _shape2.ZOrderSet = 3 + Lb_titlu_alb_b121.Caption = "PROCEDURI SELECÞIE" + Lb_titlu_alb_b121.FontBold = .T. + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 11 + Lb_titlu_alb_b121.ZOrderSet = 4 + BUT_TERMIN1.Anchor = 8 + BUT_TERMIN1.Left = 680 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 6 + BUT_TERMIN1.Top = 0 + BUT_TERMIN1.ZOrderSet = 5 + Gridsort1.Left = 240 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 12 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Anchor = 8, ; + Left = 615, ; + Name = "But_modifica1", ; + TabIndex = 8, ; + Top = 0 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 8, ; + Left = 581, ; + Name = "But_nou1", ; + TabIndex = 7, ; + Top = 0 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 8, ; + Left = 648, ; + Name = "But_sterge1", ; + TabIndex = 9, ; + Top = 0 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'clb_selectie' AS clb_tx_simplu WITH ; + Anchor = 0, ; + Left = 9, ; + Name = "clb_selectie", ; + TabIndex = 1, ; + Top = 37, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Denumire", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 0, ; + Left = 330, ; + Name = "Cmd_cauta1", ; + TabIndex = 4, ; + Top = 36 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 0, ; + Left = 418, ; + Name = "Cmd_reset1", ; + TabIndex = 10, ; + Top = 36 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grd_selectii' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 2, ; + DeleteMark = .F., ; + Height = 383, ; + Left = 9, ; + Name = "grd_selectii", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordMark = .F., ; + RecordSource = "cSelectii", ; + Top = 73, ; + Width = 687, ; + Column1.ControlSource = "", ; + Column1.Name = "Column1", ; + Column1.ReadOnly = .T., ; + Column1.Width = 69, ; + Column2.ControlSource = "", ; + Column2.Name = "Column2", ; + Column2.ReadOnly = .T., ; + Column2.Width = 198 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grd_selectii.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Id selectie", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_selectii.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_selectii.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Procedura selectie", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_selectii.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + Lparameters lcFiltru + If Empty(lcFiltru) + lcFiltru = poSelectii.ca_baza1.cfiltru + Endif + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + save_grid_tag(Thisform.grd_selectii) + poSelectii.ca_baza1.cfiltru = lcFiltru + poSelectii.ca_baza1.afisare() + restore_grid_tag(Thisform.grd_selectii) + Thisform.LockScreen = .F. + Thisform.MousePointer = 0 + + ENDPROC + + PROCEDURE do_adauga + Private pniesire + pniesire=0 + Select cSelectii + Scatter Name loRec Blank + + Do Adauga_Modifica_Inregistrare With "selectie",loRec,,"INSERT" + If pniesire=1 + This.actualizeaza_grid1() + Select cSelectii + Locate For selectie = loRec.selectie + Thisform.grd_selectii.SetFocus() + Endif + + ENDPROC + + PROCEDURE do_adauga2 + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + Store '' To lcFiltru + lcFiltru=[2=2] + lcSelectie = Strtran(Upper(Alltrim(This.clB_SELECTIE.text_simplu1.Value)),['],['']) + + If !Empty(lcSelectie) + lcFiltru = lcFiltru + [ and selectie like '] + lcSelectie + [%'] + Endif + + Thisform.actualizeaza_grid1(lcFiltru) + + If Reccount('cSelectii')>0 + Select cSelectii + Go Top + Thisform.grd_selectii.SetFocus() + Else + aMessagebox("Cautarea nu a intors rezultate!",0+64,"Info cautare") + Thisform.clB_SELECTIE.SetFocus() + Endif + + ENDPROC + + PROCEDURE do_modifica + If Reccount('cSelectii')>0 + Private pniesire + pniesire = 0 + Select cSelectii + Scatter Name loRec + + Do Adauga_Modifica_Inregistrare With "selectie",loRec,loRec.id_selectie,"UPDATE" + If pniesire = 1 + This.actualizeaza_grid1() + Endif + Endif + ENDPROC + + PROCEDURE do_modifica2 + ENDPROC + + PROCEDURE do_reset + thisform.clb_selectie.TEXT_SIMPLU1.Value = '' + Thisform.Refresh + Thisform.clb_selectie.TEXT_SIMPLU1.SetFocus() + + ENDPROC + + PROCEDURE do_sterge + If Reccount('cSelectii')>0 + Select cSelectii + Scatter Name loRec + Do STERGE_INREGISTRARE With "selectie",loRec.id_selectie + This.actualizeaza_grid1() + Endif + + ENDPROC + + PROCEDURE do_sterge2 + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_viz_facturi_ AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column6.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column6.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column7.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column7.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column8.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column8.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column9.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column9.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column10.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column10.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column11.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column11.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column12.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column12.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column13.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column13.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column14.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column14.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column15.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_facturi.Column15.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nume" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_nr_fact" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_data_fact" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listfactura1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValftva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValtva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValctva" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_listare1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_perioada" UniqueID="" Timestamp="" /> + + * + *m: afisactual + *m: do_listfact + *p: lproforme + *p: nvalctva + *p: nvalftva + *p: nvaltva + * + + * + cgridsortlist = grid_facturi + DoCreate = .T. + Height = 554 + lproforme = .F. + Name = "frm_viz_facturi_" + nvalctva = 0 + nvalftva = 0 + nvaltva = 0 + Width = 771 + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 780 + _shape1.ZOrderSet = 1 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 650 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 121 + _shape2.ZOrderSet = 2 + Lb_titlu_alb_b121.Caption = "Facturi" + Lb_titlu_alb_b121.Left = 9 + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.Top = 6 + Lb_titlu_alb_b121.ZOrderSet = 3 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 740 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + BUT_TERMIN1.ZOrderSet = 4 + Gridsort1.Left = 120 + Gridsort1.Name = "Gridsort1" + Gridsort1.Top = 4 + * + + ADD OBJECT 'But_listare1' AS but_listare WITH ; + Anchor = 9, ; + Left = 651, ; + Name = "But_listare1", ; + ToolTipText = "Listare selectie (CTRL+P)", ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_listfactura1' AS but_listfactura WITH ; + Anchor = 9, ; + Left = 681, ; + Name = "But_listfactura1", ; + ToolTipText = "Listare factura", ; + Top = 1, ; + Visible = .T., ; + ZOrderSet = 12 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + Left = 711, ; + Name = "But_sterge1", ; + Top = 1, ; + Visible = .T., ; + ZOrderSet = 11 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Ck_data_fact' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = data_fact, ; + Caption = "Data fact.", ; + FontName = "Arial Narrow", ; + Left = 119, ; + Name = "Ck_data_fact", ; + TabIndex = 1, ; + tip = D, ; + Top = 38, ; + ZOrderSet = 8 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nr_fact' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = nr_fact, ; + Caption = "Nr. fact.", ; + FontName = "Arial Narrow", ; + Left = 60, ; + mask = (replicate('9',12)), ; + Name = "Ck_nr_fact", ; + TabIndex = 4, ; + Top = 38, ; + ZOrderSet = 7 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_nume' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = nume, ; + Caption = "Client", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 9, ; + Name = "Ck_nume", ; + TabIndex = 5, ; + Top = 38, ; + ZOrderSet = 6 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_perioada' AS ck_filtru_luna WITH ; + Alignment = 0, ; + Anchor = 33, ; + camp_nume = luna+an*12, ; + Caption = "Perioada", ; + FontName = "Arial Narrow", ; + Left = 392, ; + luna = , ; + Name = "Ck_perioada", ; + TabIndex = 30, ; + Top = 38 + *< END OBJECT: ClassLib="..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 504, ; + Name = "Cmd_cauta1", ; + TabIndex = 34, ; + Top = 34, ; + ZOrderSet = 9 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Left = 600, ; + Name = "Cmd_reset1", ; + TabIndex = 45, ; + Top = 34, ; + ZOrderSet = 10 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_facturi' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 15, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 431, ; + Left = 9, ; + Name = "grid_facturi", ; + Panel = 1, ; + RecordMark = .F., ; + RecordSource = "tFacturi", ; + Top = 68, ; + Width = 744, ; + ZOrderSet = 5, ; + Column1.ControlSource = "recno()", ; + Column1.FontName = "Arial Narrow", ; + Column1.Format = "rk", ; + Column1.InputMask = "999999999999999", ; + Column1.Name = "Column1", ; + Column1.Width = 44, ; + Column2.ControlSource = "nr_fact", ; + Column2.FontName = "Arial Narrow", ; + Column2.Format = "rk", ; + Column2.InputMask = "9999999999", ; + Column2.Name = "Column2", ; + Column2.Width = 54, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "nr_ctr", ; + Column3.FontName = "Arial Narrow", ; + Column3.Format = "rk", ; + Column3.InputMask = "999999", ; + Column3.Name = "Column3", ; + Column3.Width = 71, ; + Column4.ColumnOrder = 3, ; + Column4.ControlSource = "nume", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "Column4", ; + Column4.Width = 100, ; + Column5.ControlSource = "data_fact", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "Column5", ; + Column5.Width = 72, ; + Column6.ControlSource = "data_scad", ; + Column6.FontName = "Arial Narrow", ; + Column6.Name = "Column6", ; + Column6.Width = 69, ; + Column7.ControlSource = "valftva", ; + Column7.FontName = "Arial Narrow", ; + Column7.Format = "rk", ; + Column7.InputMask = (get_mask(15,gnPA)), ; + Column7.Name = "Column7", ; + Column7.Width = 100, ; + Column8.ControlSource = "valtva", ; + Column8.FontName = "Arial Narrow", ; + Column8.Format = "rk", ; + Column8.InputMask = (get_mask(15,gnPA)), ; + Column8.Name = "Column8", ; + Column8.Width = 89, ; + Column9.ControlSource = "valctva", ; + Column9.FontName = "Arial Narrow", ; + Column9.Format = "rk", ; + Column9.InputMask = (get_mask(15,gnPA)), ; + Column9.Name = "Column9", ; + Column10.ControlSource = "nume_val", ; + Column10.FontName = "Arial Narrow", ; + Column10.Name = "Column10", ; + Column10.Width = 62, ; + Column11.ControlSource = "curs", ; + Column11.FontName = "Arial Narrow", ; + Column11.Format = "rk", ; + Column11.InputMask = (get_mask(8,gnPCurs)), ; + Column11.Name = "Column11", ; + Column11.Width = 43, ; + Column12.ControlSource = "valval", ; + Column12.FontName = "Arial Narrow", ; + Column12.Format = "rk", ; + Column12.InputMask = (get_mask(15,gnPA)), ; + Column12.Name = "Column12", ; + Column12.Width = 121, ; + Column13.ControlSource = "tvaval", ; + Column13.FontName = "Arial Narrow", ; + Column13.Format = "rk", ; + Column13.InputMask = (get_mask(15,gnPA)), ; + Column13.Name = "Column13", ; + Column13.Width = 99, ; + Column14.ControlSource = "totval", ; + Column14.FontName = "Arial Narrow", ; + Column14.Format = "rk", ; + Column14.InputMask = (get_mask(15,gnPA)), ; + Column14.Name = "Column14", ; + Column14.Width = 103, ; + Column15.ControlSource = "cod", ; + Column15.FontName = "Arial Narrow", ; + Column15.Name = "Column15", ; + Column15.Width = 59 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_facturi.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. crt.", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column10.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column10.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column11.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Curs", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column11.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column12.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta fara TVA", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column12.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column13.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta TVA", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column13.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column14.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare valuta totala", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column14.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column15.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cod", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column15.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. factura", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. contract", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data facturii", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column6.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data scadentei", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column6.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column7.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare lei fara TVA", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column7.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column8.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare lei TVA", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column8.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_facturi.Column9.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare lei totala", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_facturi.Column9.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare lei fãrã TVA", ; + FontCharSet = 238, ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 439, ; + Name = "Label1", ; + Top = 504, ; + Width = 86, ; + ZOrderSet = 13 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare lei TVA", ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 568, ; + Name = "Label2", ; + Top = 504, ; + Width = 68, ; + ZOrderSet = 14 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Valoare lei cu TVA", ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 663, ; + Name = "Label3", ; + Top = 504, ; + Width = 84, ; + ZOrderSet = 15 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Anchor = 12, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Total sume", ; + FontBold = .T., ; + FontName = "Arial Narrow", ; + Height = 18, ; + Left = 358, ; + Name = "Label4", ; + Top = 522, ; + Width = 54, ; + ZOrderSet = 19 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape1' AS shape WITH ; + Anchor = 12, ; + BackStyle = 0, ; + Height = 43, ; + Left = 354, ; + Name = "Shape1", ; + SpecialEffect = 0, ; + Style = 0, ; + Top = 504, ; + Width = 399, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'txtValctva' AS textbox WITH ; + Anchor = 12, ; + ControlSource = "thisform.nValctva", ; + FontName = "Arial Narrow", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(15,gnPA)), ; + Left = 639, ; + Name = "txtValctva", ; + Top = 520, ; + Width = 108, ; + ZOrderSet = 18 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValftva' AS textbox WITH ; + Anchor = 12, ; + ControlSource = "thisform.nValftva", ; + FontName = "Arial Narrow", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(15,gnPA)), ; + Left = 417, ; + Name = "txtValftva", ; + Top = 520, ; + Width = 108, ; + ZOrderSet = 16 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValtva' AS textbox WITH ; + Anchor = 12, ; + ControlSource = "thisform.nValtva", ; + FontName = "Arial Narrow", ; + Format = "rk", ; + Height = 23, ; + InputMask = (get_mask(15,gnPA)), ; + Left = 528, ; + Name = "txtValtva", ; + Top = 520, ; + Width = 108, ; + ZOrderSet = 17 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Activate + THISFORM.WindowState = 2 + ENDPROC + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru = pcFiltru + IF EMPTY(lcFiltru) + lcFiltru = pofacturi.ca_baza1.cfiltru + ENDIF + + *lcOrder = This.corderby + " " + This.Casc + + save_grid_tag(thisform.grid_facturi) + pofacturi.ca_baza1.cfiltru = lcFiltru + *pofacturi.ca_baza1.corder = lcOrder + pofacturi.ca_baza1.afisare() + restore_grid_tag(thisform.grid_facturi) + + If Thisform.ck_perioada.Value=1 + With Thisform.ck_perioada + If .cvaloare1=Thisform.ck_perioada.cvaloare2 + Thisform.lb_titlu_alb_b121.Caption=Substr(Thisform.lb_titlu_alb_b121.Caption,1,At("*",Thisform.lb_titlu_alb_b121.Caption,1))+; + " "+.cvaloare1 + Else + Thisform.lb_titlu_alb_b121.Caption=Substr(Thisform.lb_titlu_alb_b121.Caption,1,At("*",Thisform.lb_titlu_alb_b121.Caption,1))+; + " "+.cvaloare1+" - "+.cvaloare2 + Endif + Endwith + Else + Thisform.lb_titlu_alb_b121.Caption=Substr(Thisform.lb_titlu_alb_b121.Caption,1,At("*",Thisform.lb_titlu_alb_b121.Caption,1))+; + " "+Padl(Alltrim(Str(gnluna)),2,"0")+"/"+Alltrim(Str(gnAn)) + ENDIF + + IF RECCOUNT('tFacturi')>0 + thisform.grid_facturi.SetFocus() + ENDIF + + ENDPROC + + PROCEDURE afisactual + LOCAL lcTabel + lcTabel = thisform.grid_facturi.RecordSource + SELECT (lcTabel) + CALCULATE SUM(NVL(valftva,0)), SUM(NVL(valtva,0)), SUM(NVL(valctva,0)) TO thisform.nValftva, thisform.nValtva, thisform.nValctva + + thisform.txtValftva.Refresh + thisform.txtValtva.Refresh + thisform.txtValctva.Refresh + ENDPROC + + PROCEDURE do_cauta + LOCAL lcFiltru + lcFiltru = "" + + If This.ck_nume.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_nume.filtru + ENDIF + IF this.ck_nr_fact.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_nr_fact.filtru + ENDIF + IF this.ck_data_fact.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_data_fact.filtru + ENDIF + + * perioada + If thisform.ck_perioada.Value=1 + lcFiltru = lcFiltru + thisform.ck_perioada.filtru + ELSE + lcFiltru = lcFiltru + [ AND LUNA=]+ALLTRIM(STR(gnluna))+[ AND AN=]+ALLTRIM(STR(gnan)) + ENDIF + + lcFiltru = SUBSTR(lcFiltru,6) + *!* If llIstoric + *!* this.lb_titlu_alb_b121.Caption = "Istoric facturi" + *!* Else + *!* this.lb_titlu_alb_b121.Caption = "Facturi" + *!* Endif + + Thisform.actualizeaza_grid1(lcFiltru) + thisform.afisactual + Thisform.grid_facturi.SetFocus() + + ENDPROC + + PROCEDURE do_listfact + *!* Thisform.AlwaysOnTop=.F. + + *!* Local lcTabel, lnid_Fact + *!* lcTabel = Thisform.grid_facturi.RecordSource + *!* Select (lcTabel) + *!* If This.lProforme + *!* If !Eof() + *!* lnid_proforma = id_proforma + *!* Do listfactura With lnid_proforma, This.lProforme In oproceduri_roacontracte.prg + *!* Endif + *!* Else + *!* If !Eof() + *!* lnid_Fact = id_fact + *!* Do listfactura With lnid_Fact In oproceduri_roacontracte.prg + *!* Endif + *!* Endif + + *!* Thisform.AlwaysOnTop=.T. + + ENDPROC + + PROCEDURE do_reset + thisform.ck_nume.Value = 0 + thisform.ck_nr_fact.Value = 0 + thisform.ck_data_fact.Value = 0 + WITH thisform.ck_perioada + .filtru=[ AND LUNA=]+ALLTRIM(STR(gnluna))+[ AND AN=]+ALLTRIM(STR(gnan)) + .luna=PADL(ALLTRIM(STR(gnLuna)),2,'0')+"/"+ALLTRIM(STR(gnAn)) + .cvaloare1=.luna + .cvaloare2=.luna + .value = 1 + ENDWITH + + thisform.Refresh() + + + ENDPROC + + PROCEDURE inainte_de_do_listare + thisform.AlwaysOnTop = .F. + PRIVATE pcDataOra, pcTitlu + pcDataOra = get_ora(2) + pcTitlu = "Facturi" + + LOCAL lcTabel + lcTabel = thisform.grid_facturi.RecordSource + + SELECT (lcTabel) + REPORT FORM rFacturi TO PRINTER PROMPT PREVIEW + thisform.AlwaysOnTop = .T. + ENDPROC + + PROCEDURE inainte_de_do_sterge + Local lcTabel + lcTabel = Thisform.grid_facturi.RecordSource + + Select (lcTabel) + If This.lProforme + lnRaspuns = amessage('Doriti sa stergeti proforma?',4+32,_Screen.Caption) + If lnRaspuns = 7 && 7 = No ; 6 = Yes + Return + ENDIF + + lnId_proforma = id_proforma + lcSel = [{call pack_crm.sterg_proforma(']+gcS+[',]+Alltrim(Str(lnId_proforma))+[,]+Alltrim(Str(gnIdUtil))+[)}] + lnSucces = goExecutor.oExecute(lcSel) + If lnSucces < 0 + Messagebox('Call pack_crm.sterg_proforma' + Chr(13) + goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Else + lnId_fact = id_fact + lnAn = an + lnLuna = luna + + ***--------- + Private poActactan + Store '' To poActactan + + Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza + lcSchema1 = [''] + lcSelect1 = [select * from ] + gcS + [.act fe where 1=2] + lcOrder1 = [] + lcFiltru1 = [id_fact=]+Alltrim(Str(lnId_fact))+[ and an=]+Alltrim(Str(lnAn))+ [ and luna=]+Alltrim(Str(lnLuna)) + llAfiseaza = .F. + gencursor('poActactan','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) + poActactan.ca_baza1.afisare() + + Select * From cIntermediar Into Cursor actactan Readwrite + Release poActactan + ***--------- + + lnRaspuns = amessage('Doriti sa stergeti factura?',4+32,_Screen.Caption) + If lnRaspuns = 7 && 7 = No ; 6 = Yes + Return + Endif + + llRul = .F. + Select actactan + lnSucces = OSCRIE_IN_FISIERE(2,.F.,llRul) + + lcSel = [{call pack_crm.sterg_factura(']+gcS+[',]+Alltrim(Str(lnId_fact))+[,]+Alltrim(Str(gnIdUtil))+[)}] + lnSucces = goExecutor.oExecute(lcSel) + If lnSucces < 0 + Messagebox('Call pack_crm.sterg_factura' + Chr(13) + goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Endif + + thisform.afisactual + Thisform.actualizeaza_grid1() + + ENDPROC + + PROCEDURE Init + PARAMETERS tlProforme + DODEFAULT() + + this.lProforme = tlProforme + + IF this.lProforme + this.lb_titlu_alb_b121.Caption = "PROFORME * "+PADL(ALLTRIM(STR(gnLuna)),2,'0')+"/"+ALLTRIM(STR(gnAn)) + else + this.lb_titlu_alb_b121.Caption = "FACTURI * "+PADL(ALLTRIM(STR(gnLuna)),2,'0')+"/"+ALLTRIM(STR(gnAn)) + ENDIF + ENDPROC + + PROCEDURE Show + Lparameters nStyle + + With This.ck_perioada + .filtru=[ AND LUNA=]+Alltrim(Str(gnluna))+[ AND AN=]+Alltrim(Str(gnan)) + .luna=Padl(Alltrim(Str(gnluna)),2,'0')+"/"+Alltrim(Str(gnan)) + .cvaloare1=.luna + .cvaloare2=.luna + .Value = 1 + Endwith + + ENDPROC + +ENDDEFINE + +DEFINE CLASS text AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Image1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + + * + BorderStyle = 3 + DoCreate = .T. + Height = 91 + Name = "text" + Width = 372 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 342 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 31 + Lb_titlu_alb_b121.Caption = "" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + * + + ADD OBJECT 'Image1' AS image WITH ; + Height = 32, ; + Left = 12, ; + Name = "Image1", ; + Picture = ..\grafice\exclam1.ico, ; + Top = 40, ; + Width = 32 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'Label2' AS label WITH ; + Alignment = 2, ; + BackStyle = 0, ; + Caption = "Label2", ; + Height = 17, ; + Left = 60, ; + Name = "Label2", ; + Top = 40, ; + Width = 299 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + Alignment = 2, ; + BackStyle = 0, ; + Caption = "Label3", ; + Height = 17, ; + Left = 60, ; + Name = "Label3", ; + Top = 65, ; + Width = 299 + *< END OBJECT: BaseClass="label" /> + +ENDDEFINE diff --git a/Clase/oOptiuni.vc2 b/Clase/oOptiuni.vc2 new file mode 100644 index 0000000..576093a --- /dev/null +++ b/Clase/oOptiuni.vc2 @@ -0,0 +1,1456 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="ooptiuni.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS cus_odata_cote AS _cusodatabase OF "..\libs\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + #INCLUDE "..\..\program files\microsoft visual foxpro 8\foxpro.h" + * + *p: cschema + * + + * + cschema = + Name = "cus_odata_cote" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + lcs = this.cschema + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + IF INLIST(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + + ENDIF + + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcnume = Nvl(STRTRAN(Alltrim(Upper(toRec.descriere)),['],['']),"") + lcLuna = ALLTRIM(STR(toRec.luna)) + lcAn = ALLTRIM(STR(toRec.an)) + lcProcent = ALLTRIM(STR(toRec.procent)) + lcproc = ALLTRIM(STR(toRec.proc_tva,5,2)) + + Endif + + + Do Case + Case lcActiune = "INSERT" + + lcSql = [INSERT INTO ] + lcS + [.cote_tva (descriere,procent,proc_tva,an,luna) VALUES ('] +; + lcnume + [',] + lcProcent + [,] + lcproc + [,] + lcan + [,] + lcluna + [)] + + Case lcActiune = "UPDATE" + + lcSql = [UPDATE ] + lcS + [.cote_tva SET descriere = '] + lcnume + ; + [', procent = ] + lcprocent + [,proc_tva = ] + lcproc + [, an = ] + lcan + [, luna = ] + lcluna +; + [ where id_proc_tva = ] + lcId + + + Case lcActiune = "DELETE" + + lcSql = [delete from ] + lcS + [.cote_tva where id_proc_tva=] + lcId + + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_exceptii AS _cusodatabase OF "..\libs\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + #INCLUDE "..\..\program files\microsoft visual foxpro 8\foxpro.h" + * + *p: cschema + * + + * + cschema = + Name = "cus_odata_exceptii" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + lcs = this.cschema + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + IF INLIST(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + + ENDIF + + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcCont = Nvl(STRTRAN(Alltrim(Upper(toRec.cont)),['],['']),"") + lcContC = Nvl(STRTRAN(Alltrim(Upper(toRec.cont_c)),['],['']),"") + lcDebit = ALLTRIM(STR(toRec.debit)) + lcInvers = '1' + + Endif + + + Do Case + Case lcActiune = "INSERT" + + lcSql = [INSERT INTO ] + lcS + [.exceptii_ireg (cont,cont_c,debit,invers) VALUES ('] +; + lcCont + [','] + lcContC + [',] + lcDebit + [,] + lcInvers + [)] + + Case lcActiune = "UPDATE" + + lcSql = [UPDATE ] + lcS + [.exceptii_ireg SET cont = '] + lccont + ; + [', cont_c = '] + lcContC + [',debit = ] + lcDebit + [, invers = ] + lcInvers +; + [ where id_exceptii = ] + lcId + + + Case lcActiune = "DELETE" + + lcSql = [delete from ] + lcS + [.exceptii_ireg where id_exceptii = ] + lcId + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_optiuni AS _cusodatabase OF "..\libs\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + #INCLUDE "..\..\program files\microsoft visual foxpro 8\foxpro.h" + * + *p: cschema + * + + * + cschema = + Name = "cus_odata_optiuni" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + lcs = this.cschema + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + IF INLIST(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + + ENDIF + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + Endif + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcnume = Nvl(STRTRAN(Alltrim(Upper(toRec.varname)),['],['']),"") + lctip = Nvl(STRTRAN(Alltrim(Upper(toRec.vartype)),['],['']),"") + lcval = Nvl(STRTRAN(Alltrim(Upper(toRec.varvalue)),['],['']),"") + lcdesc = Nvl(STRTRAN(Alltrim(Upper(toRec.vardesc)),['],['']),"") + + + Endif + + + Do Case + Case lcActiune = "INSERT" + + lcSql = [INSERT INTO ] + lcS + [.optiuni (varname,vartype,varvalue,vardesc) VALUES ('] +; + lcnume + [','] + lctip + [','] + lcval + [','] + lcdesc + [')] + + Case lcActiune = "UPDATE" + + lcSql = [UPDATE ] + lcS + [.optiuni SET varname = '] + lcnume + ; + [', vartype = '] + lctip + [',varvalue = '] + lcval + [', vardesc = '] + lcdesc + ; + [' where id_optiuni = ] + lcId + + Case lcActiune = "DELETE" + + lcSql = [delete from ] + lcS + [.optiuni where id_optiuni=] + lcId + + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_cote_nou AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_cote1" UniqueID="" Timestamp="" /> + + * + *p: cschema + *p: nid + *p: orec + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 165 + Name = "frm_cote_nou" + Width = 314 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 252 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 76 + Lb_titlu_alb_b121.Caption = "Cote tva" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 7 + BUT_TERMIN1.Left = 283 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 5 + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 253, ; + Name = "But_renunt1", ; + TabIndex = 6, ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 1, ; + Top = 44, ; + Text_simplu1.ControlSource = "porec.descriere", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Descriere", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu2' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu2", ; + TabIndex = 2, ; + Top = 72, ; + Text_simplu1.ControlSource = "porec.procent", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Procent", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu3' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu3", ; + TabIndex = 3, ; + Top = 100, ; + Text_simplu1.ControlSource = "porec.luna", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Luna", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu6' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu6", ; + TabIndex = 4, ; + Top = 128, ; + Text_simplu1.ControlSource = "porec.an", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "An", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_cote1' AS cus_odata_cote WITH ; + Left = 120, ; + Name = "Cus_odata_cote1", ; + Top = 26 + *< END OBJECT: ClassLib="ooptiuni.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + LOCAL PLRETURN + + lccontrol = UPPER(this.ActiveControl.BaseClass ) + IF INLIST(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.Activecontrol.controlsource + &lcval=thisform.ActiveControl.value + ENDIF + + + Do Case + Case Empty(porec.descriere) + Messagebox('Nu ati completat descrierea cotei de tva!',0+48,"Atentie") + This.clb_tx_simplu1.SetFocus() + plreturn=.F. + + *!* Case Empty(porec.procent) + *!* Messagebox('Nu ati completat procentul de tva!',0+48,"Atentie") + *!* This.clb_tx_simplu2.SetFocus() + *!* plreturn=.F. + + Case Empty(porec.luna) + Messagebox('Nu ati completat luna!',0+48,"Atentie") + This.clb_tx_simplu3.SetFocus() + plreturn=.F. + + Case Empty(porec.an) + Messagebox('Nu ati completat anul!',0+48,"Atentie") + This.clb_tx_simplu6.SetFocus() + plreturn=.F. + + OTHERWISE + this.cus_odata_cote1.cschema=this.cschema + PLRETURN=This.cus_odata_cote1.salvare(This.OREC,This.NID) + ENDCASE + + Return PLRETURN + + ENDPROC + + PROCEDURE Init + LPARAMETERS toRec, tnId, tcActiune + + DODEFAULT() + + this.orec= toRec + this.nid = tnId + this.cus_odata_cote1.cactiune = tcActiune + ENDPROC + + PROCEDURE Clb_tx_simplu2.Text_simplu1.Valid + + porec.proc_tva = (100+this.value)/100 + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_cote_tva AS _frmbase OF "..\libs\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_cot" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_cot.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_nom_cot" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + + * + *p: cschema + * + + * + BorderStyle = 1 + cschema = CONTAFIN_ORACLE + DoCreate = .T. + Height = 351 + Name = "frm_cote_tva" + Width = 524 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 522 + _shape2.Height = 29 + _shape2.Left = 402 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 120 + Lb_titlu_alb_b121.Caption = "COTE TVA" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Left = 494 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Left = 434, ; + Name = "But_modifica1", ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Left = 403, ; + Name = "But_nou1", ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Left = 463, ; + Name = "But_sterge1", ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Left = 299, ; + Name = "Cmd_cauta1", ; + TabIndex = 2, ; + Top = 52 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_cot' AS _grid WITH ; + ColumnCount = 4, ; + DeleteMark = .F., ; + Height = 264, ; + Left = 5, ; + Name = "grid_cot", ; + Panel = 1, ; + RecordSource = "v_cote_tva", ; + RowHeight = 23, ; + Top = 84, ; + Width = 513, ; + Column1.ControlSource = "descriere", ; + Column1.Name = "Column1", ; + Column1.Width = 305, ; + Column2.ControlSource = "procent", ; + Column2.Name = "Column2", ; + Column2.Width = 66, ; + Column3.ControlSource = "luna", ; + Column3.Name = "Column3", ; + Column3.Width = 43, ; + Column4.ControlSource = "an", ; + Column4.Name = "Column4", ; + Column4.Width = 64 + *< END OBJECT: ClassLib="..\libs\_baza.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_cot.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Descriere", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_cot.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_cot.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Procent %", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_cot.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_cot.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Luna", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_cot.Column3.Text1' AS textbox WITH ; + Height = 23, ; + Left = 31, ; + Name = "Text1", ; + Top = 35, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_cot.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "An", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_cot.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'lb_nom_cot' AS clb_tx_simplu WITH ; + Left = 8, ; + Name = "lb_nom_cot", ; + TabIndex = 1, ; + Top = 52, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Nume", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru=pcFiltru + IF EMPTY(lcFiltru) + lcFiltru=pcot.ca_baza1.cfiltru + ENDIF + save_grid_tag(thisform.grid_cot) + pcot.ca_baza1.cfiltru=lcFiltru + pcot.ca_baza1.afisare() + restore_grid_tag(thisform.grid_cot) + IF RECCOUNT('v_cote_tva')>0 + thisform.grid_cot.SetFocus() + ELSE + thisform.lb_nom_cot.SetFocus() + ENDIF + + ENDPROC + + PROCEDURE do_adauga + SELECT v_cote_tva + SCATTER NAME loRec BLANK + PRIVATE lcot,poRec + lcot='' + poRec = loRec + DO Adauga_Modifica_Inregistrare WITH "cote",loRec,,"INSERT",.t.,'lcot' + lcot.cschema = this.cschema + lcot.show(1) + RELEASE lcot,poRec + this.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru=[] + lcNume = STRTRAN(Upper(Alltrim(This.lb_nom_cot.text_simplu1.value)),['],['']) + If !Empty(lcNume) + lcFiltru=[descriere like ']+lcNume+[%' and an=]+pcAn + ELSE + lcFiltru = [an=]+pcAn + Endif + This.MousePointer= 11 + This.LockScreen=.T. + Thisform.actualizeaza_grid1(lcFiltru) + IF RECCOUNT()=0 + MESSAGEBOX("Cautarea nu a intors rezultate!",0+64,"Info cautare") + ENDIF + This.LockScreen=.F. + This.MousePointer= 0 + ENDPROC + + PROCEDURE do_modifica + Select v_cote_tva + Scatter Name loRec + PRIVATE lcot,poRec + lcot = '' + poRec = loRec + Do Adauga_Modifica_Inregistrare With "cote",loRec,loRec.Id_proc_tva,"UPDATE",.t.,'lcot' + lcot.cschema = this.cschema + lcot.show(1) + RELEASE lcot,poRec + thisform.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_sterge + SELECT v_cote_tva + SCATTER NAME lorec MEMO + PRIVATE lcot + lcot = '' + Do STERGE_INREGISTRARE With "cote",loRec.id_proc_tva,.t.,'lcot' + lcot.cschema = this.cschema + lcot.salvare(,loRec.id_proc_tva) + RELEASE lcot + + this.actualizeaza_grid1() + + + ENDPROC + + PROCEDURE Unload + IF USED('v_cote_tva') + USE IN v_cote_tva + ENDIF + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_exceptii_ireg AS _frmbase OF "..\libs\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_ex" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_ex.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_nom_ex" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + + * + *p: cschema + * + + * + BorderStyle = 1 + cschema = CONTAFIN_ORACLE + DoCreate = .T. + Height = 351 + Name = "frm_exceptii_ireg" + Width = 463 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 466 + _shape2.Height = 29 + _shape2.Left = 346 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 120 + Lb_titlu_alb_b121.Caption = "EXCEPTII" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Left = 433 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Left = 373, ; + Name = "But_modifica1", ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Left = 342, ; + Name = "But_nou1", ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Left = 402, ; + Name = "But_sterge1", ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Left = 299, ; + Name = "Cmd_cauta1", ; + TabIndex = 2, ; + Top = 52 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_ex' AS _grid WITH ; + ColumnCount = 5, ; + DeleteMark = .F., ; + Height = 264, ; + Left = 4, ; + Name = "grid_ex", ; + Panel = 1, ; + RecordSource = "v_exceptii_ireg", ; + RowHeight = 23, ; + Top = 84, ; + Width = 456, ; + Column1.ControlSource = "cont", ; + Column1.Name = "Column1", ; + Column1.Width = 124, ; + Column2.ControlSource = "cont_c", ; + Column2.Name = "Column2", ; + Column2.Width = 119, ; + Column3.ControlSource = "iif(debit=0,'DEBIT','CREDIT')", ; + Column3.Name = "Column3", ; + Column3.Width = 179, ; + Column4.ControlSource = "invers", ; + Column4.Name = "Column4", ; + Column4.Visible = .F., ; + Column4.Width = 59, ; + Column5.ControlSource = "id_set", ; + Column5.Name = "Column5", ; + Column5.Visible = .F., ; + Column5.Width = 70 + *< END OBJECT: ClassLib="..\libs\_baza.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_ex.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cont", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_ex.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_ex.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cont_corespondent", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_ex.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_ex.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Pozitie cont", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_ex.Column3.Text1' AS textbox WITH ; + Height = 23, ; + Left = 31, ; + Name = "Text1", ; + Top = 35, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_ex.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Invers", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_ex.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + Visible = .F. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_ex.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Id_set", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_ex.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + Visible = .F. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'lb_nom_ex' AS clb_tx_simplu WITH ; + Left = 8, ; + Name = "lb_nom_ex", ; + TabIndex = 1, ; + Top = 52, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Cont", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru=pcFiltru + IF EMPTY(lcFiltru) + lcFiltru=pex.ca_baza1.cfiltru + ENDIF + save_grid_tag(thisform.grid_ex) + pex.ca_baza1.cfiltru=lcFiltru + pex.ca_baza1.afisare() + restore_grid_tag(thisform.grid_ex) + IF RECCOUNT('v_exceptii_ireg')>0 + thisform.grid_ex.SetFocus() + ELSE + thisform.lb_nom_ex.SetFocus() + ENDIF + + ENDPROC + + PROCEDURE do_adauga + SELECT v_exceptii_ireg + SCATTER NAME loRec BLANK + PRIVATE lex,poRec + + lex='' + poRec = loRec + DO Adauga_Modifica_Inregistrare WITH "exceptii",loRec,,"INSERT",.t.,'lex' + lex.cschema = this.cschema + lex.show(1) + RELEASE lex,poRec + this.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru=[] + lcNume = STRTRAN(Upper(Alltrim(This.lb_nom_ex.text_simplu1.value)),['],['']) + If !Empty(lcNume) + lcFiltru=[cont like ']+lcNume+[%'] + ELSE + lcFiltru = [2=2] + Endif + This.MousePointer= 11 + This.LockScreen=.T. + Thisform.actualizeaza_grid1(lcFiltru) + IF RECCOUNT()=0 + MESSAGEBOX("Cautarea nu a intors rezultate!",0+64,"Info cautare") + ENDIF + This.LockScreen=.F. + This.MousePointer= 0 + ENDPROC + + PROCEDURE do_modifica + Select v_exceptii_ireg + Scatter Name loRec + PRIVATE lex,poRec + lex = '' + poRec = loRec + Do Adauga_Modifica_Inregistrare With "exceptii",loRec,loRec.Id_exceptii,"UPDATE",.t.,'lex' + lex.cschema = this.cschema + lex.show(1) + RELEASE lex,poRec + thisform.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_sterge + SELECT v_exceptii_ireg + SCATTER NAME lorec MEMO + PRIVATE lex + lex = '' + Do STERGE_INREGISTRARE With "exceptii",loRec.id_exceptii,.t.,'lex' + lex.cschema = this.cschema + lex.salvare(,loRec.id_exceptii) + RELEASE lex + + this.actualizeaza_grid1() + + + ENDPROC + + PROCEDURE Unload + IF USED('v_exceptii_ireg') + USE IN v_exceptii_ireg + ENDIF + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_exceptii_nou AS _frmbase OF "..\libs\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_exceptii1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cb_tx_simplu1" UniqueID="" Timestamp="" /> + + * + *p: cschema + *p: nid + *p: orec + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 133 + Name = "frm_exceptii_nou" + Width = 314 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 252 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 76 + Lb_titlu_alb_b121.Caption = "Exceptii" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 6 + BUT_TERMIN1.Left = 283 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 4 + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 253, ; + Name = "But_renunt1", ; + TabIndex = 5, ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cb_tx_simplu1' AS cb_tx_simplu WITH ; + Height = 29, ; + Left = 15, ; + Name = "Cb_tx_simplu1", ; + TabIndex = 3, ; + Top = 102, ; + Width = 290, ; + _cbbase1.BoundTo = .T., ; + _cbbase1.Name = "_cbbase1", ; + _cbbase1.RowSource = "DEBIT,CREDIT", ; + _cbbase1.RowSourceType = 1, ; + _lbbase1.Caption = "Pozitie", ; + _lbbase1.Name = "_lbbase1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 1, ; + Top = 44, ; + Text_simplu1.ControlSource = "porec.cont", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Cont", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu2' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu2", ; + TabIndex = 2, ; + Top = 72, ; + Text_simplu1.ControlSource = "porec.cont_c", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Corespondent", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_exceptii1' AS cus_odata_exceptii WITH ; + Left = 168, ; + Name = "Cus_odata_exceptii1", ; + Top = 33 + *< END OBJECT: ClassLib="ooptiuni.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + LOCAL PLRETURN + + porec.debit = IIF(this.cb_tx_simplu1._CBBASE1.Value="DEBIT",0,1) + lccontrol = UPPER(this.ActiveControl.BaseClass ) + IF INLIST(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.Activecontrol.controlsource + &lcval=thisform.ActiveControl.value + ENDIF + + + Do Case + Case Empty(porec.cont) + Messagebox('Nu ati completat contul!',0+48,"Atentie") + This.clb_tx_simplu1.SetFocus() + plreturn=.F. + + Case Empty(porec.cont_c) + Messagebox('Nu ati completat contul corespondent!',0+48,"Atentie") + This.clb_tx_simplu2.SetFocus() + plreturn=.F. + + *!* Case Empty(porec.debit) + *!* Messagebox('Nu ati completat pozitia contului!',0+48,"Atentie") + *!* This.clb_tx_simplu3.SetFocus() + *!* plreturn=.F. + + OTHERWISE + + lcCont = ALLTRIM(porec.cont) + lcContC = ALLTRIM(porec.cont_c) + lcSql = [select * from ] + gcS + [.plcont where cont=]+lcCont + lcCursor = [cur_cont] + lnSucces = goExecutor.oExecute(lcSql,lcCursor) + goExecutor.oReset() &&Verific contu in plcont + + IF RECCOUNT('cur_cont')=0 + MESSAGEBOX('Contul '+lcCont+' nu este definit in planul de conturi!',0,'Eroare') + PLRETURN=.f. + USE IN cur_cont + RETURN PLRETURN + ENDIF + IF USED('cur_cont') + USE IN cur_cont + ENDIF + + lcSql = [select * from ] + gcS + [.plcont where cont=]+lcContC + lcCursor = [cur_cont_c] + lnSucces = goExecutor.oExecute(lcSql,lcCursor) + goExecutor.oReset() &&Verific contul corespondent + IF RECCOUNT('cur_cont_c')=0 + MESSAGEBOX('Contul '+lcContC+' nu este definit in planul de conturi!',0,'Eroare') + PLRETURN=.f. + USE IN cur_cont_c + RETURN PLRETURN + ENDIF + IF USED('cur_cont_c') + USE IN cur_cont_c + ENDIF + this.cus_odata_exceptii1.cschema=this.cschema + PLRETURN=This.cus_odata_exceptii1.salvare(This.OREC,This.NID) + ENDCASE + + Return PLRETURN + + ENDPROC + + PROCEDURE Init + LPARAMETERS toRec, tnId, tcActiune + + DODEFAULT() + IF porec.debit=0 + this.cb_tx_simplu1._cBBASE1.DisplayValue='DEBIT' + ELSE + this.cb_tx_simplu1._cBBASE1.DisplayValue='CREDIT' + ENDIF + this.orec= toRec + this.nid = tnId + this.cus_odata_exceptii1.cactiune = tcActiune + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_optiuni AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_opt" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column3.Edit1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_opt.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_nom_opt" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + + * + *p: cschema + * + + * + BorderStyle = 1 + cschema = CONTAFIN_ORACLE + DoCreate = .T. + Height = 351 + Name = "frm_optiuni" + Width = 524 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 522 + _shape2.Height = 29 + _shape2.Left = 402 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 120 + Lb_titlu_alb_b121.Caption = "OPTIUNI" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Left = 494 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Left = 434, ; + Name = "But_modifica1", ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Left = 403, ; + Name = "But_nou1", ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Left = 463, ; + Name = "But_sterge1", ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Left = 299, ; + Name = "Cmd_cauta1", ; + TabIndex = 2, ; + Top = 52 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_opt' AS _grid WITH ; + ColumnCount = 4, ; + DeleteMark = .F., ; + Height = 264, ; + Left = 5, ; + Name = "grid_opt", ; + Panel = 1, ; + RecordSource = "v_optiuni", ; + RowHeight = 23, ; + Top = 84, ; + Width = 513, ; + Column1.ControlSource = "varname", ; + Column1.Name = "Column1", ; + Column1.Width = 106, ; + Column2.ControlSource = "vartype", ; + Column2.Name = "Column2", ; + Column2.Width = 70, ; + Column3.ControlSource = "varvalue", ; + Column3.Name = "Column3", ; + Column3.Sparse = .F., ; + Column3.Width = 157, ; + Column4.ControlSource = "vardesc", ; + Column4.Name = "Column4", ; + Column4.Width = 145 + *< END OBJECT: ClassLib="..\..\comun\clase\_baza.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_opt.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_opt.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_opt.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Tip data", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_opt.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_opt.Column3.Edit1' AS editbox WITH ; + Height = 53, ; + Left = 94, ; + Name = "Edit1", ; + Top = 23, ; + Width = 100 + *< END OBJECT: BaseClass="editbox" /> + + ADD OBJECT 'grid_opt.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Valoare", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_opt.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Descriere", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_opt.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'lb_nom_opt' AS clb_tx_simplu WITH ; + Left = 8, ; + Name = "lb_nom_opt", ; + TabIndex = 1, ; + Top = 52, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Nume", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru=pcFiltru + IF EMPTY(lcFiltru) + lcFiltru=popt.ca_baza1.cfiltru + ENDIF + save_grid_tag(thisform.grid_opt) + popt.ca_baza1.cfiltru=lcFiltru + popt.ca_baza1.afisare() + restore_grid_tag(thisform.grid_opt) + IF RECCOUNT('v_optiuni')>0 + thisform.grid_opt.SetFocus() + ELSE + thisform.lb_nom_opt.SetFocus() + ENDIF + + ENDPROC + + PROCEDURE do_adauga + SELECT v_optiuni + SCATTER NAME loRec MEMO BLANK + PRIVATE lopt,poRec + lopt='' + poRec = loRec + DO Adauga_Modifica_Inregistrare WITH "optiuni",loRec,,"INSERT",.t.,'lopt' + lopt.cschema = this.cschema + lopt.show(1) + RELEASE lopt,poRec + this.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru=[] + lcNume = STRTRAN(Upper(Alltrim(This.lb_nom_opt.text_simplu1.value)),['],['']) + If !Empty(lcNume) + lcFiltru=[varname like ']+lcNume+[%'] + ELSE + lcFiltru = [2=2] + Endif + This.MousePointer= 11 + This.LockScreen=.T. + Thisform.actualizeaza_grid1(lcFiltru) + IF RECCOUNT()=0 + MESSAGEBOX("Cautarea nu a intors rezultate!",0+64,"Info cautare") + ENDIF + This.LockScreen=.F. + This.MousePointer= 0 + ENDPROC + + PROCEDURE do_modifica + Select v_optiuni + Scatter Name loRec MEMO + PRIVATE lopt,poRec + lopt = '' + poRec = loRec + Do Adauga_Modifica_Inregistrare With "optiuni",loRec,loRec.Id_optiuni,"UPDATE",.t.,'lopt' + lopt.cschema = this.cschema + lopt.show(1) + RELEASE lopt,poRec + thisform.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_sterge + SELECT v_optiuni + SCATTER NAME lorec MEMO + PRIVATE lopt + lopt = '' + Do STERGE_INREGISTRARE With "optiuni",loRec.id_optiuni,.t.,'lopt' + lopt.cschema = this.cschema + lopt.salvare(,loRec.id_optiuni) + RELEASE lopt + + this.actualizeaza_grid1() + + + ENDPROC + + PROCEDURE Unload + IF USED('v_optiuni') + USE IN v_optiuni + ENDIF + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_optiuni_nou AS _frmbase OF "..\libs\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_optiuni1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cb_tx_simplu1" UniqueID="" Timestamp="" /> + + * + *p: cschema + *p: nid + *p: orec + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 165 + Name = "frm_optiuni_nou" + Width = 314 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 252 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 76 + Lb_titlu_alb_b121.Caption = "Optiuni" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 7 + BUT_TERMIN1.Left = 283 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 5 + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 253, ; + Name = "But_renunt1", ; + TabIndex = 6, ; + Top = 1 + *< END OBJECT: ClassLib="..\libs\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cb_tx_simplu1' AS cb_tx_simplu WITH ; + Left = 15, ; + Name = "Cb_tx_simplu1", ; + TabIndex = 2, ; + Top = 72, ; + _cbbase1.ControlSource = "porec.vartype", ; + _cbbase1.Name = "_cbbase1", ; + _cbbase1.RowSource = "CHARACTER,CURRENCY,NUMERIC,DATETIME,DATE,LOGICAL", ; + _cbbase1.RowSourceType = 1, ; + _lbbase1.Caption = "Tip data", ; + _lbbase1.Name = "_lbbase1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 1, ; + Top = 44, ; + Text_simplu1.ControlSource = "porec.varname", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Nume", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu3' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu3", ; + TabIndex = 3, ; + Top = 100, ; + Text_simplu1.ControlSource = "porec.varvalue", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Valoare", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu6' AS clb_tx_simplu WITH ; + Left = 15, ; + Name = "Clb_tx_simplu6", ; + TabIndex = 4, ; + Top = 128, ; + Text_simplu1.ControlSource = "porec.vardesc", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Descriere", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\libs\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_optiuni1' AS cus_odata_optiuni WITH ; + Left = 144, ; + Name = "Cus_odata_optiuni1", ; + Top = 24 + *< END OBJECT: ClassLib="ooptiuni.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + LOCAL PLRETURN + + lccontrol = UPPER(this.ActiveControl.BaseClass ) + IF INLIST(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.Activecontrol.controlsource + &lcval=thisform.ActiveControl.value + ENDIF + + + Do Case + Case Empty(porec.varname) + Messagebox('Nu ati completat denumirea variabilei!',0+48,"Atentie") + This.clb_tx_simplu1.SetFocus() + plreturn=.F. + + Case Empty(porec.vartype) + Messagebox('Nu ati completat tipul de data!',0+48,"Atentie") + This.CB_tx_simplu1.SetFocus() + plreturn=.F. + + Case Empty(porec.varvalue) + Messagebox('Nu ati completat valoarea variabilei!',0+48,"Atentie") + This.clb_tx_simplu5.SetFocus() + plreturn=.F. + + OTHERWISE + this.cus_odata_optiuni1.cschema=this.cschema + PLRETURN=This.cus_odata_optiuni1.salvare(This.OREC,This.NID) + ENDCASE + + Return PLRETURN + + ENDPROC + + PROCEDURE Init + LPARAMETERS toRec, tnId, tcActiune + + DODEFAULT() + + this.orec= toRec + this.nid = tnId + this.cus_odata_optiuni1.cactiune = tcActiune + ENDPROC + +ENDDEFINE diff --git a/Clase/ofundal.vc2 b/Clase/ofundal.vc2 new file mode 100644 index 0000000..da2861d --- /dev/null +++ b/Clase/ofundal.vc2 @@ -0,0 +1,47 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="ofundal.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS pg_meniu AS _pageframe OF "..\..\comun\clase\_baza.vcx" + *< CLASSDATA: Baseclass="pageframe" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + ErasePage = .T. + Height = 173 + Name = "pg_meniu" + TabStyle = 1 + Page1.BackColor = 255,255,255 + Page1.Name = "Page1" + Page2.BackColor = 255,255,255 + Page2.Name = "Page2" + * + +ENDDEFINE + +DEFINE CLASS pict_liniuta AS _image OF "..\..\comun\clase\_baza.vcx" + *< CLASSDATA: Baseclass="image" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Height = 10 + Name = "pict_liniuta" + Picture = ..\grafice\f3.jpg + Stretch = 2 + Width = 120 + * + +ENDDEFINE + +DEFINE CLASS pict_meniu AS _image OF "..\..\comun\clase\_baza.vcx" + *< CLASSDATA: Baseclass="image" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Height = 362 + Name = "pict_meniu" + Picture = ..\grafice\f2.jpg + Stretch = 2 + Width = 133 + * + +ENDDEFINE diff --git a/Clase/ofundal_roaclienti.vc2 b/Clase/ofundal_roaclienti.vc2 new file mode 100644 index 0000000..02b7573 --- /dev/null +++ b/Clase/ofundal_roaclienti.vc2 @@ -0,0 +1,1073 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="ofundal_roaclienti.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS pagefr AS pg_meniu OF "..\comun\clase\ofundal.vcx" + *< CLASSDATA: Baseclass="pageframe" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Page2.Ct_contracte1" UniqueID="" Timestamp="" /> + + * + ActivePage = 2 + ErasePage = .T. + Height = 578 + Name = "pagefr" + PageCount = 4 + Themes = .F. + Width = 800 + Page1.Caption = "Definire" + Page1.Name = "Page1" + Page1.PageOrder = 1 + Page2.Caption = "Lista contractelor" + Page2.Name = "Page2" + Page2.PageOrder = 2 + Page3.BackColor = 255,255,255 + Page3.Caption = "Facturi" + Page3.Name = "Page4" + Page3.PageOrder = 3 + Page4.BackColor = 255,255,255 + Page4.Caption = "Încasãri (Plãþi)" + Page4.FontCharSet = 238 + Page4.Name = "Page5" + Page4.PageOrder = 4 + * + + ADD OBJECT 'Page2.Ct_contracte1' AS ct_contracte WITH ; + Anchor = 15, ; + Left = 1, ; + Name = "Ct_contracte1", ; + Top = 0, ; + _shape1.Name = "_shape1", ; + Gridsort1.Name = "Gridsort1", ; + _ct_controller_keypress1.Name = "_ct_controller_keypress1", ; + grid_contracte.cAre_link.Command1.Name = "Command1", ; + grid_contracte.cAre_link.Command2.Name = "Command2", ; + grid_contracte.cAre_link.Header1.Name = "Header1", ; + grid_contracte.cAre_link.Name = "cAre_link", ; + grid_contracte.cAre_link.Text1.Name = "Text1", ; + grid_contracte.cData_ctr.Header1.Name = "Header1", ; + grid_contracte.cData_ctr.Name = "cData_ctr", ; + grid_contracte.cData_ctr.Text1.Name = "Text1", ; + grid_contracte.cDurata.Header1.Name = "Header1", ; + grid_contracte.cDurata.Name = "cDurata", ; + grid_contracte.cDurata.Text1.Name = "Text1", ; + grid_contracte.cInactiv.Check1.Alignment = 0, ; + grid_contracte.cInactiv.Check1.Name = "Check1", ; + grid_contracte.cInactiv.Header1.Name = "Header1", ; + grid_contracte.cInactiv.Name = "cInactiv", ; + grid_contracte.cIncetat.Check1.Alignment = 0, ; + grid_contracte.cIncetat.Check1.Name = "Check1", ; + grid_contracte.cIncetat.Header1.Name = "Header1", ; + grid_contracte.cIncetat.Name = "cIncetat", ; + grid_contracte.cNr_ctr.Header1.Name = "Header1", ; + grid_contracte.cNr_ctr.Name = "cNr_ctr", ; + grid_contracte.cNr_ctr.Text1.Name = "Text1", ; + grid_contracte.cNume.Header1.Name = "Header1", ; + grid_contracte.cNume.Name = "cNume", ; + grid_contracte.cNume.Text1.Name = "Text1", ; + grid_contracte.cNume_val.Header1.Name = "Header1", ; + grid_contracte.cNume_val.Name = "cNume_val", ; + grid_contracte.cNume_val.Text1.Name = "Text1", ; + grid_contracte.COLUMN12.Header1.Name = "Header1", ; + grid_contracte.COLUMN12.Name = "COLUMN12", ; + grid_contracte.COLUMN12.Text1.Name = "Text1", ; + grid_contracte.COLUMN13.Header1.Name = "Header1", ; + grid_contracte.COLUMN13.Name = "COLUMN13", ; + grid_contracte.COLUMN13.Text1.Name = "Text1", ; + grid_contracte.COLUMN14.Header1.Name = "Header1", ; + grid_contracte.COLUMN14.Name = "COLUMN14", ; + grid_contracte.COLUMN14.Text1.Name = "Text1", ; + grid_contracte.COLUMN15.Header1.Name = "Header1", ; + grid_contracte.COLUMN15.Name = "COLUMN15", ; + grid_contracte.COLUMN15.Text1.Name = "Text1", ; + grid_contracte.COLUMN16.Header1.Name = "Header1", ; + grid_contracte.COLUMN16.Name = "COLUMN16", ; + grid_contracte.COLUMN16.Text1.Name = "Text1", ; + grid_contracte.COLUMN17.Header1.Name = "Header1", ; + grid_contracte.COLUMN17.Name = "COLUMN17", ; + grid_contracte.COLUMN17.Text1.Name = "Text1", ; + grid_contracte.COLUMN18.Header1.Name = "Header1", ; + grid_contracte.COLUMN18.Name = "COLUMN18", ; + grid_contracte.COLUMN18.Text1.Name = "Text1", ; + grid_contracte.COLUMN20.Header1.Name = "Header1", ; + grid_contracte.COLUMN20.Name = "COLUMN20", ; + grid_contracte.COLUMN20.Text1.Name = "Text1", ; + grid_contracte.COLUMN22.Header1.Name = "Header1", ; + grid_contracte.COLUMN22.Name = "COLUMN22", ; + grid_contracte.COLUMN22.Text1.Name = "Text1", ; + grid_contracte.COLUMN23.Header1.Name = "Header1", ; + grid_contracte.COLUMN23.Name = "COLUMN23", ; + grid_contracte.COLUMN23.Text1.Name = "Text1", ; + grid_contracte.COLUMN24.Check1.Alignment = 0, ; + grid_contracte.COLUMN24.Check1.Name = "Check1", ; + grid_contracte.COLUMN24.Header1.Name = "Header1", ; + grid_contracte.COLUMN24.Name = "COLUMN24", ; + grid_contracte.COLUMN24.Text1.Name = "Text1", ; + grid_contracte.cSemnat.Check1.Alignment = 0, ; + grid_contracte.cSemnat.Check1.Name = "Check1", ; + grid_contracte.cSemnat.Header1.Name = "Header1", ; + grid_contracte.cSemnat.Name = "cSemnat", ; + grid_contracte.cSucursala.Header1.Name = "Header1", ; + grid_contracte.cSucursala.Name = "cSucursala", ; + grid_contracte.cSucursala.Text1.Name = "Text1", ; + grid_contracte.cTipc.Header1.Name = "Header1", ; + grid_contracte.cTipc.Name = "cTipc", ; + grid_contracte.cTipc.Text1.Name = "Text1", ; + grid_contracte.cValctva.Header1.Name = "Header1", ; + grid_contracte.cValctva.Name = "cValctva", ; + grid_contracte.cValctva.Text1.Name = "Text1", ; + grid_contracte.cValvaluta.Header1.Name = "Header1", ; + grid_contracte.cValvaluta.Name = "cValvaluta", ; + grid_contracte.cValvaluta.Text1.Name = "Text1", ; + grid_contracte.Name = "grid_contracte", ; + _lbbase1.Name = "_lbbase1", ; + But_nou_gri1.Name = "But_nou_gri1", ; + BUT_MODIFICA1.Name = "BUT_MODIFICA1", ; + But_nou1.Name = "But_nou1", ; + But_sterge1.Name = "But_sterge1", ; + but_factura.Name = "but_factura", ; + Clb_tx_simplu1.LB_SIMPLU1.Name = "LB_SIMPLU1", ; + Clb_tx_simplu1.Name = "Clb_tx_simplu1", ; + Clb_tx_simplu1.Text_simplu1.Name = "Text_simplu1", ; + But_listare1.Name = "But_listare1", ; + But_start_criterii1.Name = "But_start_criterii1", ; + But_excel1.Name = "But_excel1", ; + But_reset_criterii1.Name = "But_reset_criterii1" + *< END OBJECT: ClassLib="ferestre_contracte.vcx" BaseClass="container" /> + +ENDDEFINE + +DEFINE CLASS princ AS ffergen OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Image2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page1.Cw6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page2.Gridextra1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page4.shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page4.Cw1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page4.Cw2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page4.Cw3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page4.Cw4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page4.Cw5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page5.shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page5.Cw1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page5.Cw2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page5.Cw3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pagefr1.Page5.Cw4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Image1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_utilizator" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Imagine01" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_utilizator1" UniqueID="" Timestamp="" /> + + * + *m: esteuncontract + *p: cgridsortlist + *p: llnou + * + + * + AlwaysOnTop = .F. + BackColor = 255,255,255 + BorderStyle = 1 + Caption = "" + cgridsortlist = grid_contracte + Closable = .F. + ControlBox = .F. + DoCreate = .T. + Height = 584 + KeyPreview = .T. + Left = 0 + llnou = .F. + MaxButton = .F. + MinButton = .F. + Movable = .F. + Name = "princ" + ShowTips = .T. + Top = 0 + Width = 793 + WindowState = 2 + * + + ADD OBJECT 'Image1' AS image WITH ; + Anchor = 12, ; + Height = 220, ; + Left = 226, ; + Name = "Image1", ; + Picture = ..\grafice\roaclienti.bmp, ; + Top = 235, ; + Width = 556, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'Image2' AS image WITH ; + BackStyle = 1, ; + Height = 63, ; + Left = 0, ; + Name = "Image2", ; + Picture = ..\grafice\f1.jpg, ; + Stretch = 2, ; + Top = 0, ; + Width = 804, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'Imagine01' AS imagine WITH ; + ccod = A01, ; + Height = 55, ; + Left = 6, ; + Name = "Imagine01", ; + nid_img = 1, ; + ntip = 4, ; + ToolTipText = "iif(gnParametru_prog = 1,'Vizualizare clienti','Vizualizare furnizori')", ; + Top = 0, ; + Width = 42 + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="image" /> + + ADD OBJECT 'lb_utilizator' AS lb_simplu WITH ; + Anchor = 8, ; + Caption = "Operator:", ; + FontItalic = .T., ; + ForeColor = 255,255,255, ; + Left = 580, ; + Name = "lb_utilizator", ; + Top = 8, ; + ZOrderSet = 4 + *< END OBJECT: ClassLib="..\comun\clase\lb.vcx" BaseClass="label" /> + + ADD OBJECT 'lb_utilizator1' AS lb_simplu WITH ; + Anchor = 8, ; + Caption = "nume_utilizator", ; + FontBold = .T., ; + FontItalic = .T., ; + ForeColor = 255,255,255, ; + Left = 634, ; + Name = "lb_utilizator1", ; + Top = 8, ; + Visible = .F., ; + ZOrderSet = 5 + *< END OBJECT: ClassLib="..\comun\clase\lb.vcx" BaseClass="label" /> + + ADD OBJECT 'Pagefr1' AS pagefr WITH ; + ErasePage = .T., ; + Height = 475, ; + Left = -1, ; + Name = "Pagefr1", ; + Top = 59, ; + Width = 804, ; + Page1.Name = "Page1", ; + Page1.PageOrder = 1, ; + Page2.Ct_contracte1.But_excel1.Name = "But_excel1", ; + Page2.Ct_contracte1.but_factura.Name = "but_factura", ; + Page2.Ct_contracte1.But_listare1.Name = "But_listare1", ; + Page2.Ct_contracte1.BUT_MODIFICA1.Name = "BUT_MODIFICA1", ; + Page2.Ct_contracte1.But_nou1.Name = "But_nou1", ; + Page2.Ct_contracte1.But_nou_gri1.Name = "But_nou_gri1", ; + Page2.Ct_contracte1.But_reset_criterii1.Name = "But_reset_criterii1", ; + Page2.Ct_contracte1.But_start_criterii1.Name = "But_start_criterii1", ; + Page2.Ct_contracte1.But_sterge1.Name = "But_sterge1", ; + Page2.Ct_contracte1.Clb_tx_simplu1.Lb_simplu1.Name = "Lb_simplu1", ; + Page2.Ct_contracte1.Clb_tx_simplu1.Name = "Clb_tx_simplu1", ; + Page2.Ct_contracte1.Clb_tx_simplu1.Text_simplu1.Name = "Text_simplu1", ; + Page2.Ct_contracte1.Gridsort1.Name = "Gridsort1", ; + Page2.Ct_contracte1.grid_contracte.cAre_link.Command1.Name = "Command1", ; + Page2.Ct_contracte1.grid_contracte.cAre_link.Command2.Name = "Command2", ; + Page2.Ct_contracte1.grid_contracte.cAre_link.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cAre_link.Name = "cAre_link", ; + Page2.Ct_contracte1.grid_contracte.cAre_link.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cData_ctr.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cData_ctr.Name = "cData_ctr", ; + Page2.Ct_contracte1.grid_contracte.cData_ctr.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cDurata.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cDurata.Name = "cDurata", ; + Page2.Ct_contracte1.grid_contracte.cDurata.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cInactiv.Check1.Alignment = 0, ; + Page2.Ct_contracte1.grid_contracte.cInactiv.Check1.Name = "Check1", ; + Page2.Ct_contracte1.grid_contracte.cInactiv.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cInactiv.Name = "cInactiv", ; + Page2.Ct_contracte1.grid_contracte.cIncetat.Check1.Alignment = 0, ; + Page2.Ct_contracte1.grid_contracte.cIncetat.Check1.Name = "Check1", ; + Page2.Ct_contracte1.grid_contracte.cIncetat.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cIncetat.Name = "cIncetat", ; + Page2.Ct_contracte1.grid_contracte.cNr_ctr.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cNr_ctr.Name = "cNr_ctr", ; + Page2.Ct_contracte1.grid_contracte.cNr_ctr.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cNume.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cNume.Name = "cNume", ; + Page2.Ct_contracte1.grid_contracte.cNume.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cNume_val.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cNume_val.Name = "cNume_val", ; + Page2.Ct_contracte1.grid_contracte.cNume_val.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column12.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column12.Name = "Column12", ; + Page2.Ct_contracte1.grid_contracte.Column12.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column13.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column13.Name = "Column13", ; + Page2.Ct_contracte1.grid_contracte.Column13.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column14.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column14.Name = "Column14", ; + Page2.Ct_contracte1.grid_contracte.Column14.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column15.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column15.Name = "Column15", ; + Page2.Ct_contracte1.grid_contracte.Column15.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column16.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column16.Name = "Column16", ; + Page2.Ct_contracte1.grid_contracte.Column16.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column17.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column17.Name = "Column17", ; + Page2.Ct_contracte1.grid_contracte.Column17.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column18.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column18.Name = "Column18", ; + Page2.Ct_contracte1.grid_contracte.Column18.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column20.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column20.Name = "Column20", ; + Page2.Ct_contracte1.grid_contracte.Column20.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column22.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column22.Name = "Column22", ; + Page2.Ct_contracte1.grid_contracte.Column22.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column23.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column23.Name = "Column23", ; + Page2.Ct_contracte1.grid_contracte.Column23.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Column24.Check1.Alignment = 0, ; + Page2.Ct_contracte1.grid_contracte.Column24.Check1.Name = "Check1", ; + Page2.Ct_contracte1.grid_contracte.Column24.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.Column24.Name = "Column24", ; + Page2.Ct_contracte1.grid_contracte.Column24.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cSemnat.Check1.Alignment = 0, ; + Page2.Ct_contracte1.grid_contracte.cSemnat.Check1.Name = "Check1", ; + Page2.Ct_contracte1.grid_contracte.cSemnat.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cSemnat.Name = "cSemnat", ; + Page2.Ct_contracte1.grid_contracte.cSucursala.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cSucursala.Name = "cSucursala", ; + Page2.Ct_contracte1.grid_contracte.cSucursala.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cTipc.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cTipc.Name = "cTipc", ; + Page2.Ct_contracte1.grid_contracte.cTipc.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cValctva.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cValctva.Name = "cValctva", ; + Page2.Ct_contracte1.grid_contracte.cValctva.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.cValvaluta.Header1.Name = "Header1", ; + Page2.Ct_contracte1.grid_contracte.cValvaluta.Name = "cValvaluta", ; + Page2.Ct_contracte1.grid_contracte.cValvaluta.Text1.Name = "Text1", ; + Page2.Ct_contracte1.grid_contracte.Name = "grid_contracte", ; + Page2.Ct_contracte1.Left = 1, ; + Page2.Ct_contracte1.Name = "Ct_contracte1", ; + Page2.Ct_contracte1.Top = 7, ; + Page2.Ct_contracte1._ct_controller_keypress1.Name = "_ct_controller_keypress1", ; + Page2.Ct_contracte1._lbbase1.Name = "_lbbase1", ; + Page2.Ct_contracte1._shape1.Name = "_shape1", ; + Page2.Name = "Page2", ; + Page2.PageOrder = 2, ; + Page4.Enabled = .T., ; + Page4.Name = "Page4", ; + Page4.PageOrder = 3, ; + Page5.Enabled = .T., ; + Page5.Name = "Page5", ; + Page5.PageOrder = 4 + *< END OBJECT: ClassLib="ofundal_roaclienti.vcx" BaseClass="pageframe" /> + + ADD OBJECT 'Pagefr1.Page1.Cw1' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw1", ; + nid_cw = 1, ; + ntip = 4, ; + Top = 21, ; + LABEL_ITEM1.Caption = "Parteneri", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.Cw2' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw2", ; + nid_cw = 6, ; + ntip = 4, ; + Top = 144, ; + LABEL_ITEM1.Caption = "Opþiuni server", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.Cw3' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw3", ; + nid_cw = 3, ; + ntip = 4, ; + Top = 70, ; + Label_item1.Caption = "Tipuri contracte", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.Cw4' AS cw WITH ; + Left = 4, ; + Name = "Cw4", ; + nid_cw = 2, ; + ntip = 2, ; + TabIndex = 2, ; + Top = 45, ; + Label_item1.Caption = "Agenþi", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.Cw5' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw5", ; + nid_cw = 4, ; + ntip = 2, ; + Top = 95, ; + Label_item1.Caption = "Metode selecþie executant", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.Cw6' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw6", ; + nid_cw = 7, ; + ntip = 4, ; + Top = 168, ; + Label_item1.Caption = "Opþiuni locale", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.Cw7' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw7", ; + nid_cw = 5, ; + ntip = 2, ; + TabIndex = 7, ; + Top = 120, ; + LABEL_ITEM1.Caption = "Curs valutar", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page1.shape1' AS pict_meniu WITH ; + Height = 362, ; + Left = 0, ; + Name = "shape1", ; + Picture = ..\grafice\f2.jpg, ; + Top = 7 + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="image" /> + + ADD OBJECT 'Pagefr1.Page2.Gridextra1' AS gridextra WITH ; + gridexpression = thisform.PAGEFR1.Page2.ct_CONTRACTE1.grID_CONTRACTE, ; + Left = 119, ; + Name = "Gridextra1", ; + productname = ROA, ; + Top = 115 + *< END OBJECT: ClassLib="..\comun\utile\gridextras\gridextras.vcx" BaseClass="custom" /> + + ADD OBJECT 'Pagefr1.Page4.Cw1' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw1", ; + nid_cw = 1, ; + ntip = 4, ; + Top = 21, ; + LABEL_ITEM1.Caption = "Lista facturilor partenerului", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page4.Cw2' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw2", ; + nid_cw = 2, ; + ntip = 4, ; + Top = 45, ; + LABEL_ITEM1.Caption = "Facturi ataºate la scadenþar", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page4.Cw3' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw3", ; + nid_cw = 3, ; + ntip = 4, ; + Top = 69, ; + Label_item1.Caption = "Rate de facturat", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page4.Cw4' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw4", ; + nid_cw = 4, ; + ntip = 2, ; + TabIndex = 1, ; + Top = 105, ; + LABEL_ITEM1.Caption = "Listã facturi ºi avize", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page4.Cw5' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw5", ; + nid_cw = 5, ; + ntip = 2, ; + TabIndex = 1, ; + Top = 129, ; + Label_item1.Caption = "Listã proforme", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page4.shape1' AS pict_meniu WITH ; + Height = 362, ; + Left = 0, ; + Name = "shape1", ; + Picture = ..\grafice\f2.jpg, ; + Top = 7 + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="image" /> + + ADD OBJECT 'Pagefr1.Page5.Cw1' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw1", ; + nid_cw = 1, ; + ntip = 4, ; + Top = 21, ; + LABEL_ITEM1.Caption = "Lista încasãrilor", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page5.Cw2' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw2", ; + nid_cw = 3, ; + ntip = 4, ; + Top = 76, ; + LABEL_ITEM1.Caption = "Facturi - detalii încasare", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page5.Cw3' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw3", ; + nid_cw = 2, ; + ntip = 4, ; + Top = 48, ; + Label_item1.Caption = "Client - Contracte - Facturi", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page5.Cw4' AS cw WITH ; + Height = 20, ; + Left = 4, ; + Name = "Cw4", ; + nid_cw = 4, ; + ntip = 4, ; + Top = 104, ; + Label_item1.Caption = "Facturi încasate luna curentã", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Pagefr1.Page5.shape1' AS pict_meniu WITH ; + Height = 362, ; + Left = 0, ; + Name = "shape1", ; + Picture = ..\grafice\f2.jpg, ; + Top = 7 + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="image" /> + + PROCEDURE do_cauta + + thisform.pagefr1.page2.ct_contracte1.do_cauta + + ENDPROC + + PROCEDURE do_reset + *!* Local llcautare + + *!* Thisform.pagefr1.page2.ct_contracte1.filtru_pretty = "" + *!* Thisform.pagefr1.page2.ct_contracte1.filtru_pretty_ro = "" + *!* Thisform.pagefr1.page2.ct_contracte1.filtru_pretty_ro_full = "" + *!* If Type ("thisform.pagefr1.page2.ct_contracte1.but_start_criterii1") = 'O' + *!* Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.ToolTipText=Thisform.pagefr1.page2.ct_contracte1.filtru_pretty + *!* Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.SetFocus + *!* Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.pornit = "nu" + *!* Endif + *!* + *!* SET STEP ON + *!* lcfiltru = [Stare;nofiled;1;] + *!* *!* llcautare = This.Parent.but_start_criterii1.lcautare + *!* *!* This.Parent.but_start_criterii1.lcautare = .F. + *!* Thisform.pagefr1.page2.ct_contracte1.but_start_criterii1.loadfiltru(lcfiltru) + *!* *!* This.Parent.but_start_criterii1.lcautare = llcautare + + *!* *Thisform.pagefr1.page2.ct_contracte1.do_cauta(.T.) + *!* Thisform.pagefr1.page2.ct_contracte1.Refresh + + ENDPROC + + PROCEDURE esteuncontract + LOCAL llContract + llContract = .T. + IF EMPTY(NVL(goContract.id_ctr,0)) + AMESSAGEBOX('Selectati un contract!',0+48,'Contract') + llContract = .F. + ENDIF + RETURN llContract + ENDPROC + + PROCEDURE Init + DODEFAULT() + thisform.imagine01.Init() + + THIS.PAGEFR1.PAGE2.GRIdextra1.SETUP() + THIS.PAGEFR1.PAGE2.CT_CONTRACTE1.GRID_CONTRACTE.HeaderHeight = 32 && SE RESETEAZA LA GRIDEXTRA + ENDPROC + + PROCEDURE RightClick + *!* modificare v 2.0.39 + *!* save_grid_tag(This.pagefr1.page2.ct_contracte1.grid_contracte) + *!* lcsql = [SELECT * FROM vcontracte_toate WHERE 1=2] + *!* lcCursor = [cContracte] + *!* lnSucces = goExecutor.oExecute(lcsql, lcCursor) + *!* If lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* Return + *!* ENDIF + *!* restore_grid_tag(This.pagefr1.page2.ct_contracte1.grid_contracte) + *!* ***------------------------------------------------- + *!* Do start_firma In ostartfirma.prg + *!* verifica_drepturi('oprinc','pagefr1') + *!* actualizeaza_drepturi_roacontracte() + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + ENDPROC + + PROCEDURE Show + Lparameters nStyle + + LOCAL lnPornire + + verifica_drepturi('oprinc','pagefr1') + actualizeaza_drepturi_roacontracte() + *!* modificare v 2.0.34 + IF gnParametru_prog = 2 + This.imaGE1.Picture = [roafurnizori.bmp] + ELSE + This.image1.Picture = [roaclienti.bmp] + endif + *!* modificare v 2.0.34 ^ + + Local w,h + w=_Screen.Width + h=_Screen.Height + + This.Width=w + This.Height=h + + This.image1.Left=w-This.image1.Width-25 + This.image1.Top=h-This.image1.Height-25 + *!* This.lb_utilizator.Top=h-This.lb_utilizator.Height + *!* This.lb_utilizator1.Top=h-This.lb_utilizator1.Height + This.image2.Width = w + 180 + + With This.pagefr1 + .Width=w + .Height=h + .page1.shape1.Height=h + .page4.shape1.Height=h + .page5.shape1.Height=h + ENDWITH + + SELECT cContracte + GO TOP + + this.pagefr1.paGE2.ct_contracte1.grID_CONTRACTE.SetFocus() + + Local lcfiltru, llcautare + IF !PEMSTATUS(this,'lPrimaData',5) + lcfiltru = [Stare;nofiled;1;] + llcautare = this.pagefr1.paGE2.ct_contracte1.but_start_criterii1.lcautare + this.pagefr1.paGE2.ct_contracte1.but_start_criterii1.lcautare = .f. + this.pagefr1.paGE2.ct_contracte1.but_start_criterii1.loadfiltru(lcfiltru) + this.pagefr1.paGE2.ct_contracte1.but_start_criterii1.lcautare = llcautare + this.AddProperty('lPrimaData',.T.) + ENDIF + + + + ENDPROC + + PROCEDURE Image1.RightClick + *!* modificare v 2.0.39 + *!* save_grid_tag(oprinc.pagefr1.page2.ct_contracte1.grid_contracte) + *!* lcsql = [SELECT * FROM vcontracte_toate WHERE 1=2] + *!* lcCursor = [cContracte] + *!* lnSucces = goExecutor.oExecute(lcsql, lcCursor) + *!* If lnSucces < 0 + *!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + *!* Return + *!* ENDIF + *!* restore_grid_tag(oprinc.pagefr1.page2.ct_contracte1.grid_contracte) + *!* ***------------------------------------------------- + *!* Do start_firma In ostartfirma.prg + *!* verifica_drepturi('oprinc','pagefr1') + *!* actualizeaza_drepturi_roacontracte() + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + + + + + ENDPROC + + PROCEDURE Imagine01.do_actiune + thisform.pagefr1.pAGE1.cw1.do_actiune + + + + + ENDPROC + + PROCEDURE Imagine01.Init + DODEFAULT() + this.picturedown = iif(gnParametru_prog = 1,'clie2.bmp','furn2.bmp') + this.pictureup = iif(gnParametru_prog = 1,'clie1.bmp','furn1.bmp') + this.ToolTipText = iif(gnParametru_prog = 1,'Vizualizare clienti','Vizualizare furnizori') + + ENDPROC + + PROCEDURE lb_utilizator.RightClick + thisform.rightclick + ENDPROC + + PROCEDURE lb_utilizator1.RightClick + thisform.rightclick + ENDPROC + + PROCEDURE Pagefr1.Page1.Click + IF TYPE('podg_dg.but_termin1') <> 'U' + podg_dg.but_termin1.CLICK() + ENDIF + IF TYPE('podg_ob.but_termin1') <> 'U' + podg_ob.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tf.but_termin1') <> 'U' + podg_tf.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tl.but_termin1') <> 'U' + podg_tl.but_termin1.CLICK() + ENDIF + IF TYPE('podg_obs.but_termin1') <> 'U' + podg_obs.but_termin1.CLICK() + ENDIF + IF TYPE('podg_link.but_termin1') <> 'U' + podg_link.but_termin1.CLICK() + ENDIF + IF TYPE('podg_fact.but_termin1') <> 'U' + podg_fact.but_termin1.CLICK() + ENDIF + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw1.do_actiune + * DO viz_clienti IN onom_clienti.prg + *!* modificare v 2.0.35 + *!* DO viz_parteneri IN onomenclatoare.prg + If gnParametru_prog = 1 + Do vizualizare_clienti In onomenclatoare.prg + Else + Do vizualizare_furnizori In onomenclatoare.prg + Endif + *!* modificare v 2.0.35 ^ + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw1.LABEL_ITEM1.Init + this.Caption = iif(gnParametru_prog=1,'Clienþi',iif(gnParametru_prog=2,'Furnizori','Parteneri')) + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw2.do_actiune + Do vizualizare_optiuni_facturare In oproceduri_facturare.prg With 1 + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw3.do_actiune + DO viz_tipuri_ctr IN onomenclatoare.prg + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw4.do_actiune + Do vizualizare_agenti In onomenclatoare.prg + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw5.do_actiune + DO viz_selectii IN oproceduri_roacontracte.prg + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw6.do_actiune + Do vizualizare_optiuni_facturare In oproceduri_facturare.prg With 2 + ENDPROC + + PROCEDURE Pagefr1.Page1.Cw7.do_actiune + DO vizualizeaza_curs IN oproceduri_curs.prg + ENDPROC + + PROCEDURE Pagefr1.Page1.RightClick + *!* modificare v 2.0.39 + *!* DO start_firma IN ostartfirma.prg + *!* verifica_drepturi('oprinc','pagefr1') + *!* actualizeaza_drepturi_roacontracte() + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + ENDPROC + + PROCEDURE Pagefr1.Page2.Activate + thisform.image1.Visible = .F. + + If Type('poGeneratorNumere') = 'U' + Private poGeneratorNumere + poGeneratorNumere = Createobject('oGeneratorNumere') + ENDIF + *!* thisform.lb_nivel.Visible = .F. + *!* thisform.lb_nivel1.Visible = .F. + *!* thisform.lb_utilizator.Visible = .F. + *!* thisform.lb_utilizator1.Visible = .F. + + + + + + ENDPROC + + PROCEDURE Pagefr1.Page2.Click + + * this.ct_contracte1.do_cauta() + this.ct_contracte1.grid_contracte.Refresh + + + + + + + ENDPROC + + PROCEDURE Pagefr1.Page2.Deactivate + thisform.image1.Visible = .T. + *!* thisform.lb_nivel.Visible = .T. + *!* thisform.lb_nivel1.Visible = .T. + *!* thisform.lb_utilizator.Visible = .T. + *!* thisform.lb_utilizator1.Visible = .T. + + *!* 27.01.2008 + *!* IF EMPTY(goContract.id_ctr) + *!* *!* AMESSAGEBOX('Nu este selectat nici un contract!',0+48,_SCREEN.CAPTION) + *!* this.Parent.paGE4.Enabled = .F. + *!* this.Parent.paGE5.Enabled = .F. + *!* *!* _screen.LockScreen= .T. + *!* ELSE + *!* this.Parent.paGE4.Enabled = .T. + *!* this.Parent.paGE5.Enabled = .T. + *!* ENDIF + *!* 27.01.2008 ^ + + ENDPROC + + PROCEDURE Pagefr1.Page4.Click + IF TYPE('podg_dg.but_termin1') <> 'U' + podg_dg.but_termin1.CLICK() + ENDIF + IF TYPE('podg_ob.but_termin1') <> 'U' + podg_ob.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tf.but_termin1') <> 'U' + podg_tf.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tl.but_termin1') <> 'U' + podg_tl.but_termin1.CLICK() + ENDIF + IF TYPE('podg_obs.but_termin1') <> 'U' + podg_obs.but_termin1.CLICK() + ENDIF + IF TYPE('podg_link.but_termin1') <> 'U' + podg_link.but_termin1.CLICK() + ENDIF + IF TYPE('podg_fact.but_termin1') <> 'U' + podg_fact.but_termin1.CLICK() + ENDIF + IF TYPE('podg_garantii.but_termin1') <> 'U' + podg_garantii.but_termin1.CLICK() + ENDIF + ENDPROC + + PROCEDURE Pagefr1.Page4.Cw1.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + DO CASE + CASE gnParametru_prog = 1 + DO lans_ireg_parteneri WITH .F., gcCont411, .T. + CASE gnParametru_prog = 2 + DO lans_ireg_parteneri WITH .F.,'401', .F. + ENDCASE + * DO viz_facturi IN oproceduri_roacontracte.prg + + ENDPROC + + PROCEDURE Pagefr1.Page4.Cw1.LABEL_ITEM1.Init + this.Caption = iif(gnParametru_prog=1,'Lista facturilor clientului',iif(gnParametru_prog=2,'Lista facturilor furnizorului','Lista facturilor partenerului')) + + ENDPROC + + PROCEDURE Pagefr1.Page4.Cw2.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + DO facturi_atasate IN oproceduri_roacontracte.prg + ENDPROC + + PROCEDURE Pagefr1.Page4.Cw3.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + DO rateDeFacturat IN oproceduri_roacontracte.prg + ENDPROC + + PROCEDURE Pagefr1.Page4.Cw4.do_actiune + Do vizualizare_facturi In oproceduri_facturare.prg + ENDPROC + + PROCEDURE Pagefr1.Page4.Cw5.do_actiune + Do vizualizare_proforme In oproceduri_facturare.prg + ENDPROC + + PROCEDURE Pagefr1.Page4.RightClick + *!* modificare v 2.0.39 + *!* DO start_firma IN ostartfirma.prg + *!* verifica_drepturi('oprinc','pagefr1') + *!* actualizeaza_drepturi_roacontracte() + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + ENDPROC + + PROCEDURE Pagefr1.Page5.Click + IF TYPE('podg_dg.but_termin1') <> 'U' + podg_dg.but_termin1.CLICK() + ENDIF + IF TYPE('podg_ob.but_termin1') <> 'U' + podg_ob.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tf.but_termin1') <> 'U' + podg_tf.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tl.but_termin1') <> 'U' + podg_tl.but_termin1.CLICK() + ENDIF + IF TYPE('podg_obs.but_termin1') <> 'U' + podg_obs.but_termin1.CLICK() + ENDIF + IF TYPE('podg_link.but_termin1') <> 'U' + podg_link.but_termin1.CLICK() + ENDIF + IF TYPE('podg_fact.but_termin1') <> 'U' + podg_fact.but_termin1.CLICK() + ENDIF + IF TYPE('podg_garantii.but_termin1') <> 'U' + podg_garantii.but_termin1.CLICK() + ENDIF + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw1.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + DO viz_incasari IN oproceduri_roacontracte.prg + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw1.LABEL_ITEM1.Init + this.Caption = iif(gnParametru_prog=1,'Lista încasãrilor',iif(gnParametru_prog=2,'Lista plãþilor','Lista încasãrilor/plãþilor')) + + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw2.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + DO CASE + CASE gnParametru_prog = 1 + DO viz_frm_facturi WITH 2, gcCont411, goContract.id_part, goContract.denumire IN orap_terti_comun.prg + CASE gnParametru_prog = 2 + DO viz_frm_facturi WITH 2,[401], goContract.id_part, goContract.denumire IN orap_terti_comun.prg + ENDCASE + + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw2.LABEL_ITEM1.Init + this.Caption = iif(gnParametru_prog=1,'Facturi - detalii încasare',iif(gnParametru_prog=2,'Facturi - detalii plãþi','Facturi - detalii încasare/plãþi')) + + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw3.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + + LOCAL llActiv + + DO CASE + CASE gnParametru_prog = 1 + llActiv = .T. + DO rap_fact_grup_ctr WITH gcCont411, llActiv IN oproceduri_roacontracte.prg + CASE gnParametru_prog = 2 + llActiv = .F. + DO rap_fact_grup_ctr WITH '401', llActiv IN oproceduri_roacontracte.prg + ENDCASE + + + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw3.Label_item1.Init + this.Caption = iif(gnParametru_prog=1,'Client-Contracte-Facturi',iif(gnParametru_prog=2,'Furnizor-Contracte-Facturi','Partener-Contracte-Facturi')) + + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw4.do_actiune + IF !thisform.esteuncontract() + RETURN + ENDIF + DO CASE + CASE gnParametru_prog = 1 + DO rapIncasari.mpr + CASE gnParametru_prog = 2 + *DO viz_frm_facturi WITH 2,[401], goContract.id_part, goContract.denumire IN orap_terti_comun.prg + ENDCASE + + ENDPROC + + PROCEDURE Pagefr1.Page5.Cw4.Label_item1.Init + IF gnParametru_prog = 1 + this.Caption = 'Facturi încasate în luna curentã' + ELSE + this.Visible = .F. + ENDIF + + ENDPROC + + PROCEDURE Pagefr1.Page5.RightClick + *!* modificare v 2.0.39 + *!* DO start_firma IN ostartfirma.prg + *!* verifica_drepturi('oprinc','pagefr1') + *!* actualizeaza_drepturi_roacontracte() + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + ENDPROC + +ENDDEFINE diff --git a/Clase/onom_clienti.vc2 b/Clase/onom_clienti.vc2 new file mode 100644 index 0000000..8b3e06f --- /dev/null +++ b/Clase/onom_clienti.vc2 @@ -0,0 +1,3347 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="onom_clienti.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS cus_odata_agenti AS _cusodatabase OF "..\..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Name = "cus_odata_agenti" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + lcId_util = Alltrim(Str(gnIdUtil)) + + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + Endif + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcNume = Strtran(Alltrim(toRec.nume_agent),['],['']) + *!* lcPrenume = Strtran(Alltrim(toRec.prenume),['],['']) + lcTelefon1 = Alltrim(NVL(toRec.telefon1,[])) + lcTelefon2 = Alltrim(NVL(toRec.telefon2,[])) + lcIdZona = Alltrim(Str(toRec.id_zona)) + lcFunctia = Alltrim(NVL(porec.functie,[])) + Endif + + Do Case + Case lcActiune = "INSERT" + lcSql = [begin pack_crm.adauga_agent(']+Alltrim(gcS)+[',']+lcNume+[',]+lcIdZona+[,]+; + [']+lcFunctia+[',']+lcTelefon1+[',']+lcTelefon2+[',]+lcId_util+[); end;] + + Case lcActiune = "UPDATE" + lcSql = [begin pack_crm.modifica_agent(']+Alltrim(gcS)+[',]+lcId+[,']+lcNume+[',]+; + lcIdZona+[,']+lcFunctia+[',']+lcTelefon1+[',']+lcTelefon2+[',]+lcId_util+[); end;] + + Case lcActiune = "DELETE" + lcSql = [begin pack_crm.sterge_agent(']+Alltrim(gcS)+[',]+lcId+[,]+lcId_util+[); end;] + + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_clienti AS _cusodatabase OF "..\..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Name = "cus_odata_clienti" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + lcnom = gcS + ".nom_parteneri" + lcamp = "id_part" + lclook = gcS + ".dev_masiniclienti" + lclookid = "id_partener" + Endif + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcNume = Nvl(Strtran(Alltrim(Upper(toRec.nume)),['],['']),"") + lcCod_fiscal = Nvl(Strtran(Alltrim(Upper(toRec.cod_fiscal)),['],['']),"") + lctelefon = Nvl(Strtran(Alltrim(Upper(toRec.telefon)),['],['']),"") + lcadresa = Nvl(Strtran(Alltrim(Upper(toRec.adresa)),['],['']),"") + lcbanca = Nvl(Strtran(Alltrim(Upper(toRec.banca)),['],['']),"") + lccont_banca = Nvl(Strtran(Alltrim(Upper(toRec.cont_banca)),['],['']),"") + lcreg_comert = Nvl(Strtran(Alltrim(Upper(toRec.reg_comert)),['],['']),"") + *!* lcJudet = Nvl(STRTRAN(Alltrim(Upper(toRec.judet)),['],['']),"") + *!* lcLocalitate = Nvl(STRTRAN(Alltrim(Upper(toRec.localitate)),['],['']),"") + lcIdLoc = Nvl(Alltrim(Str(toRec.id_loc)),0) + Endif + + + Do Case + Case lcActiune = "INSERT" + lcSql = [begin devpartinsproc('] + gcS + [','] + lcNume + [','] + lcCod_fiscal + [','] + lctelefon +[',']+ lcadresa + [','] +lcbanca + ; + [',']+ lccont_banca + [','] + lcreg_comert + [',] + lcIdLoc + [); end;] + + *!* lcSql = [INSERT INTO ] + gcS + [.nom_parteneri (nume,cod_fiscal,telefon,adresa,banca,cont_banca,reg_comert,id_loc) ] + ; + *!* [VALUES ('] + lcnume + [','] + lccod_fiscal + [','] + lctelefon +[',']+ lcAdresa + [','] +lcbanca + ; + *!* [',']+ lcCont_banca + [',']+ lcReg_comert+[',] + lcIdLoc + [)] + Case lcActiune = "UPDATE" + If pnNivelModificare=-1 + lcSql = [UPDATE ] + gcS + [.nom_parteneri SET nume = '] + lcNume; + +[',cod_fiscal = '] + lcCod_fiscal + [',telefon = '] + lctelefon +; + [',adresa = '] + lcadresa + [',banca = '] + lcbanca + [',cont_banca = '] + lccont_banca + [',reg_comert = ']+lcreg_comert+; + [',id_loc = ] + lcIdLoc + [ where id_part = ] + lcId + ELSE + lcSql = [UPDATE ] + gcS + [.nom_parteneri SET telefon = '] + lctelefon + [' ]+; + [ where id_part = ] + lcId + Endif + Case lcActiune = "DELETE" + + *!* lcSql = [update nom_sectii set sters=1,id_util=]+ALLTRIM(STR(gcidutil))+[,id_modif=seq_modif_nomen.nextval where id_banca=]+lcid + lcSql = [begin nomdelproc('] + lcnom + [','] + lcamp + [',] + lcId + [,'] + lclook + [','] + lclookid + ['); end;] + Endcase + This.csql = lcSql + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_curs AS _cusodatabase OF "..\..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Name = "cus_odata_curs" + * + + PROCEDURE make_sql + Lparameters toRec, tnId + + lcActiune = Alltrim(This.cActiune) + lcId_util = Alltrim(Str(gnIdUtil)) + + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId_curs = Alltrim(Str(tnId)) + Endif + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcId_curs = Nvl(Alltrim(Str(toRec.id_curs)),"") + lcCurs = Nvl(Alltrim(Str(toRec.curs,10,4)),"") + lcData = DTOS(toRec.data) + lcData2 = DTOS(toRec.data2) + lcId_valuta = Nvl(Alltrim(Str(toRec.id_valuta)),"") + Endif + + Do Case + Case lcActiune = "INSERT" + lcSql = [begin pack_crm.adauga_curs(']+Alltrim(gcS)+[',]+lcCurs+; + [, TO_DATE(]+IIF(!EMPTY(lcData),[']+lcData+['],[NULL])+[,'YYYY-MM-DD')]+; + [, TO_DATE(]+IIF(!EMPTY(lcData2),[']+lcData2+['],[NULL])+[,'YYYY-MM-DD'),]+; + lcId_valuta+[); end;] + Case lcActiune = "UPDATE" + lcSql = [begin pack_crm.modifica_curs(']+Alltrim(gcS)+[',]+lcId_curs+[,]+; + lcCurs+; + [, TO_DATE(]+IIF(!EMPTY(lcData),[']+lcData+['],[NULL])+[,'YYYY-MM-DD')]+; + [, TO_DATE(]+IIF(!EMPTY(lcData2),[']+lcData2+['],[NULL])+[,'YYYY-MM-DD'),]+; + lcId_valuta+[); end;] + + Case lcActiune = "DELETE" + lcSql = [begin pack_crm.sterge_curs(']+Alltrim(gcS)+[',]+lcId_curs+[); end;] + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_delegati AS _cusodatabase OF "..\..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Name = "cus_odata_delegati" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + lcId_util = Alltrim(Str(gnIdUtil)) + + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + lcnom = gcS + ".nom_responsabili" + *lcamp = "id_nom_delegati" + *!* lclook = gcS + ".dev_oper_mecanici" + *!* lclookid = "dev_oper_mecanici.id_mecanic" + Endif + If Inlist(lcActiune, "UPDATE",'INSERT') + + lcIdclient = Nvl(Alltrim(Str(toRec.id_part)),"") + lcNume = Nvl(Alltrim(toRec.nume),"") + lcBI_seria = Nvl(Left(Alltrim(toRec.bi_seria),2),"") + lcBI_numar = Nvl(Alltrim(Str(toRec.bi_numar)),"NULL") + lcEliberatde = Nvl(Alltrim(toRec.eliberatde),"") + lcinactiv = Nvl(Alltrim(Str(toRec.inactiv)),"") + Endif + + + Do Case + Case lcActiune = "INSERT" + + lcSql = [begin pack_crm.adauga_delegat(']+Alltrim(gcS)+[',]+lcIdclient+[,']+lcNume+[',']+; + lcBI_seria + [',] + lcBI_numar + [,'] + lcEliberatde + [',] + lcId_util +[); end;] + + Case lcActiune = "UPDATE" + + lcSql = [begin pack_crm.modifica_delegat(']+Alltrim(gcS)+[',]+lcId+[,]+lcIdclient+[,']+; + lcNume+[',']+lcBI_seria +[',]+lcBI_numar+[,']+lcEliberatde +[',]+ lcId_util +[); end;] + + Case lcActiune = "DELETE" + + lcSql = [begin pack_crm.sterge_delegat(']+Alltrim(gcS)+[',]+lcId+[,]+lcId_util+[); end;] + + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS cus_odata_responsabili AS _cusodatabase OF "..\..\comun\clase\_cus_odata_base.vcx" + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + #INCLUDE "..\..\program files\microsoft visual foxpro 8\foxpro.h" + * + Name = "cus_odata_responsabili" + * + + PROCEDURE make_sql + Lparameters toRec,tnId + + lcActiune = Alltrim(This.cActiune) + + If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N" + Return .F. + Endif + + If Inlist(lcActiune, "UPDATE",'DELETE') + lcId = Alltrim(Str(tnId)) + lcnom = gcS + ".nom_responsabili" + lcamp = "nom_responsabili.id_responsabil" + lclook = gcS + ".act" + lclookid = "act.id_responsabil" + Endif + + If Inlist(lcActiune, "UPDATE",'INSERT') + lcnume = NVL(UPPER(ALLTRIM(toRec.nume)),"") + lcfunct = NVL(UPPER(ALLTRIM(toRec.functie)),"") + lcales = NVL(ALLTRIM(STR(toRec.ales)),"") + lcinactiv = NVL(ALLTRIM(STR(toRec.inactiv)),"") + + Endif + + + Do Case + Case lcActiune = "INSERT" + + lcSql = [INSERT INTO ] + gcS + [.nom_responsabili (nume,functie,ales,inactiv) VALUES ('] + lcnume + ; + [','] + lcfunct + [',] + lcales + [,] + lcinactiv + [)] + + Case lcActiune = "UPDATE" + + lcSql = [UPDATE ] + gcS + [.nom_responsabili SET nume = '] + lcnume + ; + [',functie = '] + lcfunct + [',ales = ] + lcales + [,inactiv = ] + lcinactiv +; + [ where id_responsabil = ] + lcId + + Case lcActiune = "DELETE" + + lcSql = [begin nomdelproc('] + lcnom + [','] + lcamp + [',] + lcid + [,'] + lclook + [','] + lclookid + ['); end;] + + Endcase + + This.csql = lcSql + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_agenti AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cZona.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cZona.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cNume.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cNume.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cTelefon1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cTelefon1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cFunctia.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cFunctia.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cTelefon2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_agenti.cTelefon2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="clb_nume" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_functie" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_zona" UniqueID="" Timestamp="" /> + + * + *m: do_adauga2 + *m: do_modifica2 + *m: do_sterge2 + * + + * + DoCreate = .T. + Height = 466 + lactiv3 = .T. + Name = "frm_agenti" + Width = 744 + WindowState = 2 + _shape1.Anchor = 10 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 744 + _shape1.ZOrderSet = 2 + _shape2.Anchor = 8 + _shape2.Height = 29 + _shape2.Left = 601 + _shape2.Name = "_shape2" + _shape2.Top = -1 + _shape2.Width = 143 + _shape2.ZOrderSet = 3 + Lb_titlu_alb_b121.Caption = "AGENTI" + Lb_titlu_alb_b121.FontBold = .T. + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 11 + Lb_titlu_alb_b121.ZOrderSet = 4 + BUT_TERMIN1.Anchor = 8 + BUT_TERMIN1.Left = 708 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 6 + BUT_TERMIN1.Top = 0 + BUT_TERMIN1.ZOrderSet = 5 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Anchor = 8, ; + Left = 643, ; + Name = "But_modifica1", ; + TabIndex = 8, ; + Top = 0 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 8, ; + Left = 609, ; + Name = "But_nou1", ; + TabIndex = 7, ; + Top = 0 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 8, ; + Left = 676, ; + Name = "But_sterge1", ; + TabIndex = 9, ; + Top = 0 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_functie' AS clb_tx_simplu WITH ; + Anchor = 0, ; + Left = 319, ; + Name = "Clb_functie", ; + TabIndex = 2, ; + Top = 37, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Functie", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'clb_nume' AS clb_tx_simplu WITH ; + Anchor = 0, ; + Left = 30, ; + Name = "clb_nume", ; + TabIndex = 1, ; + Top = 37, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Nume", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_zona' AS clb_tx_simplu WITH ; + Anchor = 0, ; + Left = 30, ; + Name = "Clb_zona", ; + TabIndex = 3, ; + Top = 65, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Zona", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 0, ; + Left = 636, ; + Name = "Cmd_cauta1", ; + TabIndex = 4, ; + Top = 36 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 0, ; + Left = 636, ; + Name = "Cmd_reset1", ; + TabIndex = 10, ; + Top = 65 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grd_agenti' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 5, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 336, ; + Left = 15, ; + Name = "grd_agenti", ; + Panel = 1, ; + RecordSource = "crsagenti", ; + TabIndex = 5, ; + Top = 108, ; + Width = 705, ; + ZOrderSet = 6, ; + Column1.ColumnOrder = 3, ; + Column1.ControlSource = "zona", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "cZona", ; + Column1.Width = 172, ; + Column2.ColumnOrder = 1, ; + Column2.ControlSource = "nume_agent", ; + Column2.FontName = "Arial Narrow", ; + Column2.Name = "cNume", ; + Column2.Width = 205, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "telefon1", ; + Column3.FontName = "Arial Narrow", ; + Column3.Name = "cTelefon1", ; + Column3.Width = 116, ; + Column4.ColumnOrder = 2, ; + Column4.ControlSource = "functie", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "cFunctia", ; + Column4.Width = 127, ; + Column5.ColumnOrder = 5, ; + Column5.ControlSource = "telefon2", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "cTelefon2", ; + Column5.Width = 116 + *< END OBJECT: ClassLib="..\..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grd_agenti.cFunctia.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Functie", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_agenti.cFunctia.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_agenti.cNume.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_agenti.cNume.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_agenti.cTelefon1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Telefon 1", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_agenti.cTelefon1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_agenti.cTelefon2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Telefon 2", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_agenti.cTelefon2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_agenti.cZona.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Zona", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_agenti.cZona.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + Lparameters lcFiltru + If Empty(lcFiltru) + lcFiltru = poagenti.ca_baza1.cfiltru + Endif + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + save_grid_tag(Thisform.grd_agenti) + poagenti.ca_baza1.cfiltru=lcFiltru + poagenti.ca_baza1.afisare() + restore_grid_tag(Thisform.grd_agenti) + Thisform.LockScreen=.F. + Thisform.MousePointer= 0 + + ENDPROC + + PROCEDURE do_adauga + Private pniesire + pniesire=0 + Select crsagenti + Scatter Name loRec Blank + Do Adauga_Modifica_Inregistrare With "agenti",loRec,,"INSERT" + If pniesire=1 + This.actualizeaza_grid1() + Select crsagenti + Locate For nume_agent=loRec.nume_agent + Thisform.grd_agenti.SetFocus() + Endif + + ENDPROC + + PROCEDURE do_adauga2 + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + Store '' To lcFiltru + lcFiltru=[2=2] + lcNume = Strtran(Upper(Alltrim(This.clb_nume.text_simplu1.Value)),['],['']) + lcFunctie = Strtran(Upper(Alltrim(This.clb_functie.text_simplu1.Value)),['],['']) + lcZona = Strtran(Upper(Alltrim(This.clb_zona.text_simplu1.Value)),['],['']) + If !Empty(lcNume) + lcFiltru=lcFiltru + [ and nume_agent like '] + lcNume + [%'] + Endif + If !Empty(lcFunctie) + lcFiltru=lcFiltru + [ and functie like '] + lcFunctie + [%'] + Endif + If !Empty(lcZona) + lcFiltru=lcFiltru + [ and zona like '] + lcZona + [%'] + Endif + + Thisform.actualizeaza_grid1(lcFiltru) + + If Reccount('crsagenti')>0 + Select crsagenti + Go Top + Thisform.grd_agenti.SetFocus() + Else + Messagebox("Cautarea nu a intors rezultate!",0+64,"Info cautare") + Thisform.clb_nume.SetFocus() + Endif + + ENDPROC + + PROCEDURE do_modifica + If Reccount('crsagenti')>0 + Private pniesire + pniesire=0 + Select crsagenti + Scatter Name loRec + Do Adauga_Modifica_Inregistrare With "agenti",loRec,loRec.id_responsabil,"UPDATE" + If pniesire=1 + This.actualizeaza_grid1() + Endif + Endif + ENDPROC + + PROCEDURE do_modifica2 + ENDPROC + + PROCEDURE do_reset + Thisform.clb_nume.text_simplu1.Value = '' + Thisform.clb_functie.text_simplu1.Value = '' + Thisform.clb_zona.text_simplu1.Value = '' + Thisform.Refresh + Thisform.clb_nume.text_simplu1.SetFocus() + + ENDPROC + + PROCEDURE do_sterge + If Reccount('crsagenti')>0 + Select crsagenti + Scatter Name loRec + Do STERGE_INREGISTRARE With "agenti",loRec.id_responsabil + This.actualizeaza_grid1() + Endif + + ENDPROC + + PROCEDURE do_sterge2 + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_agenti_nou AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Clb_nume" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_telefon1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_telefon2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_functie" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_agenti1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_agenti2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_zona" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="img_zona" UniqueID="" Timestamp="" /> + + * + *m: do_alege_zona + *p: cnumevechi + *p: nid + *p: nnivelmodificare && - 1 daca utilizatorul are voie sa modifice toate datele ; 0 daca are voie sa modifice doar nr. de telefon + *p: orec + * + + * + cnumevechi = + DoCreate = .T. + Height = 216 + Name = "frm_agenti_nou" + nnivelmodificare = -1 + Width = 372 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 372 + _shape2.Height = 29 + _shape2.Left = 304 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 69 + Lb_titlu_alb_b121.Caption = "AGENT" + Lb_titlu_alb_b121.FontBold = .T. + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 8 + BUT_TERMIN1.Height = 27 + BUT_TERMIN1.Left = 341 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 6 + BUT_TERMIN1.Top = 1 + BUT_TERMIN1.Width = 30 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Height = 27, ; + Left = 309, ; + Name = "But_renunt1", ; + TabIndex = 7, ; + Top = 1, ; + Width = 30 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_functie' AS clb_tx_simplu WITH ; + Left = 24, ; + Name = "Clb_functie", ; + TabIndex = 2, ; + Top = 74, ; + Text_simplu1.ControlSource = "porec.functie", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Functie", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_nume' AS clb_tx_simplu WITH ; + Left = 24, ; + Name = "Clb_nume", ; + TabIndex = 1, ; + Top = 46, ; + Width = 290, ; + Text_simplu1.ControlSource = "porec.nume_agent", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Nume:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_telefon1' AS clb_tx_simplu WITH ; + Left = 24, ; + Name = "Clb_telefon1", ; + TabIndex = 3, ; + Top = 102, ; + Text_simplu1.ControlSource = "porec.telefon1", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Telefon 1", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_telefon2' AS clb_tx_simplu WITH ; + Left = 24, ; + Name = "Clb_telefon2", ; + TabIndex = 4, ; + Top = 130, ; + Text_simplu1.ControlSource = "porec.telefon2", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Telefon 2", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_zona' AS clb_tx_simplu WITH ; + Left = 24, ; + Name = "Clb_zona", ; + TabIndex = 5, ; + TabStop = .T., ; + ToolTipText = "Pentru modificare, faceti dublu-click!", ; + Top = 158, ; + Visible = .T., ; + Text_simplu1.ControlSource = "porec.zona", ; + Text_simplu1.Name = "Text_simplu1", ; + Text_simplu1.ReadOnly = .T., ; + Lb_simplu1.Caption = "Zona", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_agenti1' AS cus_odata_agenti WITH ; + Left = 192, ; + Name = "Cus_odata_agenti1", ; + Top = 240 + *< END OBJECT: ClassLib="onom_clienti.vcx" BaseClass="custom" /> + + ADD OBJECT 'Cus_odata_agenti2' AS cus_odata_agenti WITH ; + Left = 324, ; + Name = "Cus_odata_agenti2", ; + Top = 36 + *< END OBJECT: ClassLib="onom_clienti.vcx" BaseClass="custom" /> + + ADD OBJECT 'img_zona' AS _image WITH ; + Height = 24, ; + Left = 322, ; + Name = "img_zona", ; + Picture = ..\..\comun\grafice\alege.bmp, ; + Stretch = 2, ; + ToolTipText = "Alegeti agentul", ; + Top = 160, ; + Visible = .T., ; + Width = 24 + *< END OBJECT: ClassLib="..\..\comun\clase\_baza.vcx" BaseClass="image" /> + + PROCEDURE do_alege_zona + Local lnId,lcNume + lnId=poRec.id_zona + lcNume=poRec.zona + If cauta_zona(@lnId,@lcNume) + poRec.id_zona=lnId + poRec.zona=lcNume + Thisform.clb_zona.Refresh() + Endif + + ENDPROC + + PROCEDURE inainte_de_do_termin + Local PLRETURN + lccontrol = Upper(This.ActiveControl.BaseClass ) + If Inlist(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.ActiveControl.ControlSource + &lcval=Thisform.ActiveControl.Value + Endif + + Do Case + Case Empty(porec.nume_agent) + Messagebox('Nu ati completat numele agentului!',0+48,"Atentie") + This.clb_nume.text_simplu1.SetFocus() + PLRETURN=.F. + *!* Case Empty(porec.prenume) + *!* Messagebox('Nu ati completat prenumele agentului!',0+48,"Atentie") + *!* This.clb_prenume.text_simplu1.SetFocus() + *!* PLRETURN=.F. + Case Empty(porec.id_zona) + Messagebox("Nu ati ales zona!",0+48,"Atentie") + This.clb_zona.text_simplu1.SetFocus() + PLRETURN=.F. + Otherwise + PLRETURN=This.cus_odata_agenti1.salvare(This.OREC,This.NID) + Endcase + + Return PLRETURN + + ENDPROC + + PROCEDURE Init + Lparameters toRec, tnId, tcActiune + *!* Local lnid_prospect + DoDefault() + This.orec= toRec + This.nid = tnId + This.cus_odata_agenti1.cactiune = tcActiune + If tcActiune = 'UPDATE' + *!* Select v_zone + *!* Locate For id_zona=toRec.id_zona + *!* If Found() + *!* Thisform.cb_zona._cbbase1.Value=zona + *!* Thisform.cb_zona._cbbase1.Refresh + *!* Endif + Thisform.nNivelModificare=0 + Endif + ENDPROC + + PROCEDURE Clb_zona.Text_simplu1.DblClick + Thisform.do_alege_zona() + ENDPROC + + PROCEDURE Clb_zona.Text_simplu1.KeyPress + Lparameters nKeyCode, nShiftAltCtrl + If Empty(poRec.id_zona) And Empty(poRec.zona) ; + AND Inlist(nKeyCode,9,13) And nShiftAltCtrl=0 + Thisform.do_alege_zona() + Else + DoDefault() + Endif + + ENDPROC + + PROCEDURE img_zona.Click + Thisform.do_alege_zona() + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_clienti AS _frmbase OF "..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cNume.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cNume.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cCod_fiscal.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cCod_fiscal.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cTelefon.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cTelefon.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cAdresa.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cAdresa.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cBanca.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cBanca.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cCont_banca.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cCont_banca.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cReg_comert.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cReg_comert.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cJudet.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cJudet.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cLocalitate.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grd_clienti.cLocalitate.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="clb_client" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + + * + *m: do_adauga2 + *m: do_modifica2 + *m: do_sterge2 + * + + * + DoCreate = .T. + Height = 466 + lactiv3 = .T. + Name = "frm_clienti" + Width = 670 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 672 + _shape1.ZOrderSet = 2 + _shape2.Height = 29 + _shape2.Left = 529 + _shape2.Name = "_shape2" + _shape2.Top = -1 + _shape2.Width = 143 + _shape2.ZOrderSet = 3 + Lb_titlu_alb_b121.Caption = "CLIENTI" + Lb_titlu_alb_b121.FontBold = .T. + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 18 + Lb_titlu_alb_b121.ZOrderSet = 4 + BUT_TERMIN1.Left = 636 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 16 + BUT_TERMIN1.Top = 0 + BUT_TERMIN1.ZOrderSet = 5 + Gridsort1.Name = "Gridsort1" + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Left = 571, ; + Name = "But_modifica1", ; + Top = 0 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Left = 537, ; + Name = "But_nou1", ; + Top = 0 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Left = 604, ; + Name = "But_sterge1", ; + Top = 0 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'clb_client' AS clb_tx_simplu WITH ; + Left = 77, ; + Name = "clb_client", ; + TabIndex = 1, ; + Top = 41, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Client", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Left = 386, ; + Name = "Cmd_cauta1", ; + TabIndex = 2, ; + Top = 42 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Left = 474, ; + Name = "Cmd_reset1", ; + TabIndex = 17, ; + Top = 42 + *< END OBJECT: ClassLib="..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grd_clienti' AS _grdrow WITH ; + ColumnCount = 9, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 366, ; + Left = 15, ; + Name = "grd_clienti", ; + Panel = 1, ; + RecordSource = "v_clie", ; + TabIndex = 3, ; + Top = 78, ; + Width = 636, ; + ZOrderSet = 6, ; + Column1.ControlSource = "nume", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "cNume", ; + Column1.Width = 172, ; + Column2.ControlSource = "cod_fiscal", ; + Column2.FontName = "Arial Narrow", ; + Column2.Name = "cCod_fiscal", ; + Column2.Width = 91, ; + Column3.ControlSource = "telefon", ; + Column3.FontName = "Arial Narrow", ; + Column3.Name = "cTelefon", ; + Column4.ControlSource = "adresa", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "cAdresa", ; + Column4.Width = 270, ; + Column5.ControlSource = "banca", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "cBanca", ; + Column5.Width = 114, ; + Column6.ControlSource = "cont_banca", ; + Column6.FontName = "Arial Narrow", ; + Column6.Name = "cCont_banca", ; + Column6.Width = 52, ; + Column7.ControlSource = "reg_comert", ; + Column7.FontName = "Arial Narrow", ; + Column7.Name = "cReg_comert", ; + Column7.Width = 133, ; + Column8.ColumnOrder = 9, ; + Column8.ControlSource = "judet", ; + Column8.FontName = "Arial Narrow", ; + Column8.Name = "cJudet", ; + Column8.Visible = .T., ; + Column8.Width = 68, ; + Column9.ColumnOrder = 8, ; + Column9.ControlSource = "localitate", ; + Column9.FontName = "Arial Narrow", ; + Column9.Name = "cLocalitate", ; + Column9.Width = 127 + *< END OBJECT: ClassLib="..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grd_clienti.cAdresa.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Adresa", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cAdresa.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cBanca.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Banca", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cBanca.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cCod_fiscal.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cod fiscal", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cCod_fiscal.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cCont_banca.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Cont", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cCont_banca.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cJudet.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Judet", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cJudet.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + Visible = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cLocalitate.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Localitate", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cLocalitate.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cNume.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume client", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cNume.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cReg_comert.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr.Reg.Com.", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cReg_comert.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grd_clienti.cTelefon.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Telefon", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grd_clienti.cTelefon.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + Lparameters lcFiltru + + If Empty(lcFiltru) + lcFiltru = poclie.ca_baza1.cfiltru + Endif + Thisform.MousePointer= 11 + Thisform.LockScreen=.T. + save_grid_tag(Thisform.grd_clienti) + poclie.ca_baza1.cfiltru=lcFiltru + poclie.ca_baza1.afisare() + restore_grid_tag(Thisform.grd_clienti) + Thisform.LockScreen=.F. + Thisform.MousePointer= 0 + + ENDPROC + + PROCEDURE do_adauga + Private pniesire + pniesire=0 + Select v_clie + Scatter Name loRec Blank + Do Adauga_Modifica_Inregistrare With "clienti",loRec,,"INSERT",,"addclie" + If pniesire=1 + This.actualizeaza_grid1() + Select v_clie + Locate For nume=loRec.nume + Thisform.grd_clienti.SetFocus() + Endif + + ENDPROC + + PROCEDURE do_adauga2 + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + Store '' To lcFiltru + lcFiltru = [a.id_tip_part=16 and b.inactiv=0] + lcNume = Strtran(Upper(Alltrim(This.clb_client.text_simplu1.Value)),['],['']) + If !Empty(lcNume) + lcFiltru=lcFiltru + [ and b.nume like '] + lcNume + [%'] + Endif + + Thisform.actualizeaza_grid1(lcFiltru) + + If Reccount('v_clie')>0 + Select v_clie + Go Top + Thisform.grd_clienti.SetFocus() + Else + Messagebox("Cautarea nu a intors rezultate!",0+64,"Info cautare") + Thisform.clb_client.SetFocus() + Endif + + ENDPROC + + PROCEDURE do_modifica + If Reccount('v_clie')>0 + Private pniesire + pniesire=0 + Select v_clie + Scatter Name loRec + Do Adauga_Modifica_Inregistrare With "clienti",loRec,loRec.id_part,"UPDATE" + If pniesire=1 + This.actualizeaza_grid1() + Endif + Endif + ENDPROC + + PROCEDURE do_modifica2 + ENDPROC + + PROCEDURE do_reset + Thisform.clb_client.text_simplu1.Value = '' + Thisform.Refresh + ENDPROC + + PROCEDURE do_sterge + If Reccount('v_clie')>0 + Select v_clie + Scatter Name loRec + Do STERGE_INREGISTRARE With "clienti",loRec.id_part + This.actualizeaza_grid1() + Endif + + ENDPROC + + PROCEDURE do_sterge2 + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_clienti_nou AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ed_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cb_localitate" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cb_judet" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_clienti1" UniqueID="" Timestamp="" /> + + * + *p: cnumevechi + *p: nid + *p: nnivelmodificare && - 1 daca utilizatorul are voie sa modifice toate datele ; 0 daca are voie sa modifice doar nr. de telefon + *p: orec + * + + * + cnumevechi = + DoCreate = .T. + Height = 338 + Name = "frm_clienti_nou" + nnivelmodificare = -1 + Width = 375 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 311 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 69 + Lb_titlu_alb_b121.Caption = "Client" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 11 + BUT_TERMIN1.Height = 27 + BUT_TERMIN1.Left = 345 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 9 + BUT_TERMIN1.Top = 1 + BUT_TERMIN1.Width = 30 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Height = 27, ; + Left = 315, ; + Name = "But_renunt1", ; + TabIndex = 10, ; + Top = 1, ; + Width = 30 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cb_judet' AS cb_tx_simplu WITH ; + Left = 13, ; + Name = "Cb_judet", ; + TabIndex = 12, ; + Top = 206, ; + _CBBASE1.Enabled = .F., ; + _CBBASE1.Name = "_CBBASE1", ; + _CBBASE1.RowSource = "v_judete.judet", ; + _CBBASE1.RowSourceType = 6, ; + _LBBASE1.Caption = "Judet", ; + _LBBASE1.Name = "_LBBASE1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cb_localitate' AS cb_tx_simplu WITH ; + Left = 13, ; + Name = "Cb_localitate", ; + TabIndex = 5, ; + Top = 178, ; + _CBBASE1.Name = "_CBBASE1", ; + _CBBASE1.RowSource = "v_localitati.localitate,id_loc", ; + _CBBASE1.RowSourceType = 6, ; + _LBBASE1.Caption = "Localitate", ; + _LBBASE1.Name = "_LBBASE1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Left = 13, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 1, ; + Top = 37, ; + Text_simplu1.ControlSource = "porec.nume", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Nume:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu2' AS clb_tx_simplu WITH ; + Left = 13, ; + Name = "Clb_tx_simplu2", ; + TabIndex = 2, ; + Top = 65, ; + Text_simplu1.ControlSource = "porec.cod_fiscal", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Cod fiscal:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu3' AS clb_tx_simplu WITH ; + Left = 13, ; + Name = "Clb_tx_simplu3", ; + TabIndex = 3, ; + Top = 93, ; + Text_simplu1.ControlSource = "porec.telefon", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Telefon", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu5' AS clb_tx_simplu WITH ; + Left = 13, ; + Name = "Clb_tx_simplu5", ; + TabIndex = 6, ; + Top = 234, ; + Text_simplu1.ControlSource = "porec.banca", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Banca:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu6' AS clb_tx_simplu WITH ; + Left = 13, ; + Name = "Clb_tx_simplu6", ; + TabIndex = 7, ; + Top = 262, ; + Text_simplu1.ControlSource = "porec.cont_banca", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Cont banca:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu7' AS clb_tx_simplu WITH ; + Left = 13, ; + Name = "Clb_tx_simplu7", ; + TabIndex = 8, ; + Top = 290, ; + Text_simplu1.ControlSource = "porec.reg_comert", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Registru comert:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_clienti1' AS cus_odata_clienti WITH ; + Left = 334, ; + Name = "Cus_odata_clienti1", ; + Top = 56 + *< END OBJECT: ClassLib="onom_clienti.vcx" BaseClass="custom" /> + + ADD OBJECT 'Ed_tx_simplu1' AS ed_tx_simplu WITH ; + Left = 13, ; + Name = "Ed_tx_simplu1", ; + TabIndex = 4, ; + Top = 121, ; + _edbase1.ControlSource = "porec.adresa", ; + _edbase1.Format = "!K", ; + _edbase1.Height = 53, ; + _edbase1.Left = 71, ; + _edbase1.Name = "_edbase1", ; + _edbase1.Top = 2, ; + _edbase1.Width = 241, ; + _LBBASE1.Caption = "Adresa", ; + _LBBASE1.Name = "_LBBASE1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + PROCEDURE Destroy + Use In v_judete + Use In v_localitati + ENDPROC + + PROCEDURE inainte_de_do_termin + Local PLRETURN + Private pnNivelModificare + pnNivelModificare=Thisform.nNivelModificare + lccontrol = Upper(This.ActiveControl.BaseClass ) + If Inlist(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.ActiveControl.ControlSource + &lcval=Thisform.ActiveControl.Value + Endif + + If !Empty(Thisform.cb_localitate._CBBASE1.Value) + porec.id_loc=v_localitati.id_loc + Else + porec.id_loc=0 + Endif + + Do Case + Case Empty(porec.nume) + Messagebox('Nu ati completat numele clientului!',0+48,"Atentie") + This.clb_tx_simplu1.text_simplu1.SetFocus() + PLRETURN=.F. + + Otherwise + && tip_modificare + && 1 - nr. de telefon + && 2 - toate + *!* If (Type('poRec.tip_modificare')='U' Or (Type('poRec.tip_modificare')<>'U' And poRec.tip_modificare=1)) And Alltrim(Upper(This.cus_odata_clienti1.cactiune))="UPDATE" + && pnNivelModificare + && 0 - nr. de telefon + && -1 - toate + If pnNivelModificare=0 And Alltrim(Upper(This.cus_odata_clienti1.cactiune))="UPDATE" + PLRETURN=This.cus_odata_clienti1.salvare(This.OREC,This.NID) + Else + lcNumeClient=Strtran(" "+porec.nume," SA ","") + lcNumeClient=Strtran(lcNumeClient," SRL ","") + lcNumeClient=Strtran(lcNumeClient," SC ","") + pcexec=[select id_part,nume from ]+gcS+[.vnom_parteneri where nume like '%]+Strtran(Alltrim(lcNumeClient)," ","%")+[%']+; + IIF(porec.id_part>0,[ and id_part!=]+Alltrim(Str(porec.id_part)),[]) + Do While .T. + pnSucces = SQLExec(GNHANDLE,pcexec,'crsnumeclienti') + If pnSucces = 0 + * instructiunea in curs de executie + Else + Exit + Endif + Enddo + If Reccount('crsnumeclienti')>0 + Select crsnumeclienti + Locate For Alltrim(Upper(nume))=Alltrim(Upper(porec.nume)) + If Found() + Messagebox('Mai exista acest client inregistrat',0+48,"Atentie") + This.clb_tx_simplu1.text_simplu1.SetFocus() + Use In crsnumeclienti + PLRETURN=.F. + Else + If Alltrim(Upper(This.cus_odata_clienti1.cactiune))="INSERT" + lnTip=1 + lcNumeVechi="" + Else + lnTip=2 + lcNumeVechi=Thisform.cnumevechi + Endif + Private pnButon + pnButon=0 + ofrmverifclie=Createobject("frm_clienti_verif",porec.nume,lnTip,lcNumeVechi) + ofrmverifclie.Show(1) + If pnButon=1 + PLRETURN=This.cus_odata_clienti1.salvare(This.OREC,This.NID) + Else + This.clb_tx_simplu1.text_simplu1.SetFocus() + PLRETURN=.F. + Endif + Release ofrmverifclie + Endif + Else + PLRETURN=This.cus_odata_clienti1.salvare(This.OREC,This.NID) + Endif + Endif + Endcase + + Return PLRETURN + + ENDPROC + + PROCEDURE Init + Lparameters toRec, tnId, tcActiune + Local lnid_judet + DoDefault() + This.orec= toRec + This.nid = tnId + This.cus_odata_clienti1.cactiune = tcActiune + If tcActiune = 'UPDATE' + Thisform.cnumevechi=toRec.nume + Select v_localitati + Locate For id_loc=toRec.id_loc + If Found() + Thisform.cb_localitate._cbbase1.Value=localitate + Thisform.cb_localitate._cbbase1.Refresh + lnid_judet = id_judet + Select v_judete + Locate For id_judet = lnid_judet + If Found() + Thisform.cb_judet._cbbase1.Value=judet + Thisform.cb_judet._cbbase1.Refresh + Endif + Endif + && tip_modificare + && 1 - nr. de telefon + && 2 - toate + If TYPE('toRec.tip_modificare')='U' OR (TYPE('toRec.tip_modificare')<>'U' AND toRec.tip_modificare=1) + Thisform.nNivelModificare=0 + Thisform.clb_tx_simplu1.text_simplu1.Enabled=.F. + Thisform.clb_tx_simplu2.text_simplu1.Enabled=.F. + Thisform.cb_judet._cbbase1.Enabled=.F. + Thisform.cb_localitate._cbbase1.Enabled=.F. + Thisform.ed_tx_simplu1._edbase1.Enabled=.F. + Thisform.clb_tx_simplu5.text_simplu1.Enabled=.F. + Thisform.clb_tx_simplu6.text_simplu1.Enabled=.F. + Thisform.clb_tx_simplu7.text_simplu1.Enabled=.F. + Endif + Endif + ENDPROC + + PROCEDURE Load + If Used('v_judete') + Use In v_judete + Endif + lcSql=[select id_judet,judet from ] + gcS + [.vnom_judete] + lnSucces=goExecutor.oExecute(lcSql,'v_judete') + If lnSucces < 0 + Messagebox(goExecutor.cEroare,0+16,'Eroare') + Endif + + If Used('v_localitati') + Use In v_localitati + Endif + lcSql=[select id_loc,localitate,id_judet from ] + gcS + [.vnom_localitati] + lnSucces=goExecutor.oExecute(lcSql,'v_localitati') + If lnSucces < 0 + Messagebox(goExecutor.cEroare,0+16,'Eroare') + Endif + ENDPROC + + PROCEDURE Cb_localitate._CBBASE1.InteractiveChange + Select v_localitati + lnid_judet = id_judet + Select v_judete + Set Filter To id_judet = lnid_judet + Go Top + Thisform.cb_judet._CBBASE1.Value=judet + Thisform.cb_judet._CBBASE1.Requery + Thisform.cb_judet._CBBASE1.Refresh + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_curs AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="grid_curs" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grid_curs.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_data" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_reset1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_numeval" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Ck_data2" UniqueID="" Timestamp="" /> + + * + BorderStyle = 3 + DoCreate = .T. + Height = 420 + Name = "frm_curs" + Width = 274 + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = -13 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 303 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 123 + _shape2.Name = "_shape2" + _shape2.Top = 1 + _shape2.Width = 151 + Lb_titlu_alb_b121.Anchor = 3 + Lb_titlu_alb_b121.Caption = "Curs valutar" + Lb_titlu_alb_b121.Left = 8 + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.Top = 6 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 243 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 2 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Anchor = 9, ; + Left = 154, ; + Name = "But_modifica1", ; + Top = 2 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Anchor = 9, ; + Left = 124, ; + Name = "But_nou1", ; + Top = 2 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Anchor = 9, ; + Left = 214, ; + Name = "But_renunt1", ; + Top = 2 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Anchor = 9, ; + Left = 184, ; + Name = "But_sterge1", ; + Top = 2 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Ck_data' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = data, ; + Caption = "Data", ; + FontName = "Arial Narrow", ; + Left = 54, ; + Name = "Ck_data", ; + TabIndex = 1, ; + tip = D, ; + Top = 39, ; + ZOrderSet = 32 + *< END OBJECT: ClassLib="..\..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_data2' AS ck_filtru_numar WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = data2, ; + Caption = "Data2", ; + FontName = "Arial Narrow", ; + Left = 99, ; + Name = "Ck_data2", ; + TabIndex = 1, ; + tip = D, ; + Top = 39, ; + ZOrderSet = 32 + *< END OBJECT: ClassLib="..\..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Ck_numeval' AS ck_filtru_text WITH ; + Alignment = 0, ; + AutoSize = .T., ; + camp_nume = nume_val, ; + Caption = "Valuta", ; + Comment = "*:OnResize=LT", ; + FontName = "Arial Narrow", ; + Left = 6, ; + Name = "Ck_numeval", ; + TabIndex = 19, ; + Top = 39, ; + ZOrderSet = 12 + *< END OBJECT: ClassLib="..\..\comun\clase\caut_ora.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Height = 27, ; + Left = 166, ; + Name = "Cmd_cauta1", ; + TabIndex = 34, ; + Top = 35, ; + Width = 48, ; + ZOrderSet = 20 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_reset1' AS cmd_reset WITH ; + Anchor = 9, ; + Comment = "*:OnResize=LT", ; + Height = 27, ; + Left = 218, ; + Name = "Cmd_reset1", ; + TabIndex = 45, ; + Top = 35, ; + Width = 48, ; + ZOrderSet = 19 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'grid_curs' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 4, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 341, ; + Left = 8, ; + Name = "grid_curs", ; + Panel = 1, ; + RecordMark = .F., ; + RecordSource = "tCurs", ; + Top = 68, ; + Width = 258, ; + Column1.ControlSource = "nume_val", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "Column1", ; + Column1.Width = 74, ; + Column2.ControlSource = "curs", ; + Column2.FontName = "Arial Narrow", ; + Column2.Format = "rk", ; + Column2.InputMask = (get_mask(10,gnPCurs)), ; + Column2.Name = "Column2", ; + Column2.Width = 58, ; + Column3.ControlSource = "data", ; + Column3.FontName = "Arial Narrow", ; + Column3.Name = "Column3", ; + Column3.Width = 49, ; + Column4.ControlSource = "data2", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "Column4", ; + Column4.Width = 51 + *< END OBJECT: ClassLib="..\..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'grid_curs.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nume valuta", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_curs.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_curs.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Curs", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_curs.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_curs.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_curs.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'grid_curs.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Data2", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'grid_curs.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru = pcFiltru + IF EMPTY(lcFiltru) + lcFiltru = poCurs.ca_baza1.cfiltru + ENDIF + + *lcOrder = This.corderby + " " + This.Casc + + save_grid_tag(thisform.grid_curs) + poCurs.ca_baza1.cfiltru = lcFiltru + *poCurs.ca_baza1.corder = lcOrder + + poCurs.ca_baza1.afisare() + restore_grid_tag(thisform.grid_curs) + IF RECCOUNT('tCurs')>0 + thisform.grid_curs.SetFocus() + ENDIF + + + + ENDPROC + + PROCEDURE do_adauga + Select tCurs + Scatter Name loRec Blank + loRec.data = DATE() + Do Adauga_Modifica_Inregistrare With "curs",loRec,,"INSERT" + This.actualizeaza_grid1() + + ENDPROC + + PROCEDURE do_cauta + LOCAL lcFiltru + lcFiltru = "" + + * valuta + If thisform.ck_numeval.Value=1 + lcFiltru = lcFiltru + thisform.ck_numeval.filtru + ENDIF + + IF this.ck_data.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_data.filtru + ENDIF + + IF this.ck_data2.Value = 1 + lcFiltru = lcFiltru + Thisform.ck_data2.filtru + ENDIF + + If !Empty(lcFiltru) + lcFiltru = Substr(lcFiltru,6) + ELSE + lcFiltru = [2=2] + ENDIF + + Thisform.actualizeaza_grid1(lcFiltru) + Thisform.grid_curs.SetFocus() + + ENDPROC + + PROCEDURE do_reset + thisform.ck_numeval.Value = 0 + thisform.ck_data.Value = 0 + thisform.ck_data2.Value = 0 + thisform.Refresh() + ENDPROC + + PROCEDURE inainte_de_do_modifica + Select tCurs + Scatter Name loRec + Do Adauga_Modifica_Inregistrare With "curs",loRec,loRec.id_curs,"UPDATE" + thisform.actualizeaza_grid1() + ENDPROC + + PROCEDURE inainte_de_do_sterge + Select tCurs + Scatter Name lorec + Do STERGE_INREGISTRARE With "curs",lorec.id_curs + This.actualizeaza_grid1() + + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_curs_nou AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtCurs" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtData2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="CUS_ODATA_CURS1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtValuta" UniqueID="" Timestamp="" /> + + * + *p: nid + *p: orec + * + + * + BorderStyle = 3 + DoCreate = .T. + Height = 143 + Name = "frm_curs_nou" + nid = + orec = + Width = 208 + _shape1.Anchor = 11 + _shape1.Name = "_shape1" + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 147 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 61 + Lb_titlu_alb_b121.Caption = "Curs valutar" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 7 + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 178 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 5 + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Anchor = 9, ; + Left = 149, ; + Name = "But_renunt1", ; + TabIndex = 6, ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Command2' AS commandbutton WITH ; + Caption = "", ; + FontName = "Arial Narrow", ; + Height = 25, ; + Left = 168, ; + Name = "Command2", ; + Picture = ..\grafice\find.bmp, ; + TabIndex = 1, ; + Top = 36, ; + Width = 28 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'CUS_ODATA_CURS1' AS cus_odata_curs WITH ; + Left = 102, ; + Name = "CUS_ODATA_CURS1", ; + Top = 8 + *< END OBJECT: ClassLib="onom_clienti.vcx" BaseClass="custom" /> + + ADD OBJECT 'Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Nume valuta", ; + Height = 17, ; + Left = 14, ; + Name = "Label1", ; + TabIndex = 8, ; + Top = 41, ; + Width = 71 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Curs", ; + Height = 17, ; + Left = 14, ; + Name = "Label2", ; + TabIndex = 9, ; + Top = 66, ; + Width = 29 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data 1", ; + Height = 17, ; + Left = 14, ; + Name = "Label3", ; + TabIndex = 10, ; + Top = 91, ; + Width = 38 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Data 2", ; + Height = 17, ; + Left = 14, ; + Name = "Label4", ; + TabIndex = 11, ; + Top = 117, ; + Width = 38 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'txtCurs' AS textbox WITH ; + ControlSource = "porec.curs", ; + Height = 23, ; + Left = 91, ; + Name = "txtCurs", ; + TabIndex = 2, ; + Top = 63, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData1' AS textbox WITH ; + ControlSource = "porec.data", ; + Height = 23, ; + Left = 91, ; + Name = "txtData1", ; + TabIndex = 3, ; + Top = 88, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtData2' AS textbox WITH ; + ControlSource = "porec.data2", ; + Height = 23, ; + Left = 91, ; + Name = "txtData2", ; + TabIndex = 4, ; + Top = 114, ; + Width = 100 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtValuta' AS textbox WITH ; + ControlSource = "porec.nume_val", ; + Height = 23, ; + Left = 91, ; + Name = "txtValuta", ; + TabIndex = 12, ; + Top = 36, ; + Width = 75 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE inainte_de_do_termin + Private pnIdCursNou + Local plreturn + Store 0 To pnIdCursNou + + lccontrol = Upper(This.ActiveControl.BaseClass ) + If Inlist(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.ActiveControl.ControlSource + &lcval=Thisform.ActiveControl.Value + Endif + + Do Case + Case Empty(porec.id_valuta) + Messagebox('Nu ati introdus valuta!',0+48,"Atentie") + Thisform.cboValuta.SetFocus() + plreturn = .F. + Case Empty(porec.curs) + Messagebox('Nu ati introdus valoarea cursului!',0+48,"Atentie") + Thisform.txtCurs.SetFocus() + plreturn = .F. + Case Empty(porec.data) + Messagebox('Nu ati introdus data initiala a cursului!',0+48,"Atentie") + Thisform.txtData.SetFocus() + plreturn = .F. + Case Empty(porec.data2) + Messagebox('Nu ati introdus data finala a cursului!',0+48,"Atentie") + Thisform.txtData2.SetFocus() + plreturn = .F. + Otherwise + plreturn=Thisform.cus_odata_curs1.salvare(This.OREC,This.NID) + Endcase + + Return plreturn + ENDPROC + + PROCEDURE Init + Lparameters toRec, tnId, tcActiune + DoDefault() + + This.orec = toRec + This.nid = tnId + This.cus_odata_curs1.cactiune = tcActiune + + ENDPROC + + PROCEDURE Command2.Click + LOCAL lcselect, lcfiltru, lcschema, lcorder, lccoloane, lcTitlu, lcTitluColoane, lcFiltruOriginal, lcNumeProc + lcselect = [select v.id_valuta, v.nume_val FROM ] + gcs + [.vnom_valute v where] + lcfiltru = [1=2] + lcschema = [] + lcorder = [v.nume_val] + lccoloane = [nume_val] + lcTitlu = [Alegeti valuta] + lcTitluColoane = [Nume] + lcFiltruOriginal = [v.inactiv = 0] + lcNumeProc = "" + locauta = cauta_alfa(lcselect, lcfiltru, lcschema, lcorder, lccoloane, lcTitlu, lcTitluColoane, lcNumeProc, .F., lcFiltruOriginal) + + IF buton=2 + RETURN + ENDIF + + porec.id_valuta = locauta.id_valuta + porec.nume_val = locauta.nume_val + thisform.txtValuta.Refresh + + + ENDPROC + + PROCEDURE txtData1.Valid + porec.data2 = porec.data + thisform.txtdata2.Refresh + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_delegati AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="gdelegati" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column5.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column6.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="gdelegati.Column6.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_delegat" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + + * + *p: nidpartener && Pentru cautarile in functie de un partener. + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 382 + lactiv3 = .T. + lactiv4 = .T. + Name = "frm_delegati" + Width = 587 + _shape1.Height = 29 + _shape1.Left = -3 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 592 + _shape2.Height = 29 + _shape2.Left = 466 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 122 + Lb_titlu_alb_b121.Caption = "Delegati" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 8 + BUT_TERMIN1.Height = 27 + BUT_TERMIN1.Left = 557 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 7 + BUT_TERMIN1.Top = 1 + BUT_TERMIN1.Width = 30 + * + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Height = 27, ; + Left = 498, ; + Name = "But_modifica1", ; + TabIndex = 5, ; + Top = 1, ; + Visible = .T., ; + Width = 30 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Height = 27, ; + Left = 468, ; + Name = "But_nou1", ; + TabIndex = 4, ; + Top = 1, ; + Width = 30 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Height = 27, ; + Left = 527, ; + Name = "But_sterge1", ; + TabIndex = 6, ; + Top = 1, ; + Visible = .T., ; + Width = 30 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_delegat' AS clb_tx_simplu WITH ; + Left = 26, ; + Name = "Clb_delegat", ; + TabIndex = 1, ; + Top = 36, ; + TEXT_SIMPLU1.Name = "TEXT_SIMPLU1", ; + LB_SIMPLU1.Caption = "Delegat", ; + LB_SIMPLU1.Name = "LB_SIMPLU1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Left = 326, ; + Name = "Cmd_cauta1", ; + TabIndex = 2, ; + Top = 37 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'gdelegati' AS _grdrow WITH ; + ColumnCount = 6, ; + DeleteMark = .F., ; + FontName = "Arial Narrow", ; + Height = 300, ; + Left = 12, ; + Name = "gdelegati", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordSource = "v_delegati", ; + TabIndex = 3, ; + Top = 72, ; + Width = 565, ; + Column1.ControlSource = "nume_part", ; + Column1.FontName = "Arial Narrow", ; + Column1.Name = "Column1", ; + Column1.ReadOnly = .T., ; + Column1.Width = 168, ; + Column2.ControlSource = "nume", ; + Column2.FontName = "Arial Narrow", ; + Column2.Name = "Column2", ; + Column2.ReadOnly = .T., ; + Column2.Width = 169, ; + Column3.ControlSource = "bi_seria", ; + Column3.FontName = "Arial Narrow", ; + Column3.Name = "Column3", ; + Column3.ReadOnly = .T., ; + Column3.Width = 49, ; + Column4.ColumnOrder = 5, ; + Column4.ControlSource = "eliberatde", ; + Column4.FontName = "Arial Narrow", ; + Column4.Name = "Column4", ; + Column4.ReadOnly = .T., ; + Column4.Width = 77, ; + Column5.ColumnOrder = 6, ; + Column5.ControlSource = "inactiv", ; + Column5.FontName = "Arial Narrow", ; + Column5.Name = "Column5", ; + Column5.ReadOnly = .T., ; + Column5.Sparse = .F., ; + Column5.Width = 48, ; + Column6.ColumnOrder = 4, ; + Column6.ControlSource = "bi_numar", ; + Column6.FontName = "Arial Narrow", ; + Column6.Name = "Column6", ; + Column6.ReadOnly = .T., ; + Column6.Width = 66 + *< END OBJECT: ClassLib="..\..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT 'gdelegati.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Client", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'gdelegati.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'gdelegati.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Delegat", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'gdelegati.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'gdelegati.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "BI_seria", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'gdelegati.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'gdelegati.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Eliberat de..", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'gdelegati.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'gdelegati.Column5.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + FontName = "Arial Narrow", ; + Height = 17, ; + Left = 16, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 71, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'gdelegati.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Inactiv", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'gdelegati.Column6.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "BI_numar", ; + FontName = "Arial Narrow", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'gdelegati.Column6.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + FontName = "Arial Narrow", ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1" + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru=pcFiltru + IF EMPTY(lcFiltru) + lcFiltru=podelegati.ca_baza1.cfiltru + ENDIF + save_grid_tag(thisform.gdelegati) + podelegati.ca_baza1.cfiltru=lcFiltru + podelegati.ca_baza1.afisare() + restore_grid_tag(thisform.gdelegati) + *!* IF RECCOUNT('v_delegati')>0 + thisform.gdelegati.SetFocus() + *!* ELSE + *!* thisform.lb_delegati.SetFocus() + *!* ENDIF + + ENDPROC + + PROCEDURE do_adauga + Private pniesire + pniesire=0 + Select v_delegati + Scatter Name loRec Blank + If !Empty(Thisform.nidpartener) + loRec.id_part = Thisform.nidpartener + Do update_clienti With Thisform.nidpartener In onom_clienti.prg + Else + Do update_clienti In onom_clienti.prg + Endif + Do Adauga_Modifica_Inregistrare With "delegati",loRec,,"INSERT",,"adddeleg" + If pniesire=1 + This.actualizeaza_grid1() + Endif + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru=[] + lcDelegat = Strtran(Upper(Alltrim(Thisform.clb_delegat.texT_SIMPLU1.Value)),['],['']) + If !Empty(Thisform.nidpartener) + lcFiltru = [id_part = ] + Alltrim(Str(Thisform.nidpartener)) + [ and ] + Endif + If !Empty(lcDelegat) + lcFiltru = lcFiltru + [nume like '] + lcDelegat + [%'] + Else + lcFiltru = lcFiltru + [2=2] + Endif + This.MousePointer= 11 + This.LockScreen=.T. + Thisform.actualizeaza_grid1(lcFiltru) + If Reccount('v_delegati')=0 + Messagebox("Cautarea nu a intors rezultate!",0+64,"Info cautare") + Thisform.clb_delegat.SetFocus() + Endif + This.LockScreen=.F. + This.MousePointer= 0 + ENDPROC + + PROCEDURE do_modifica + Private pniesire + pniesire=0 + Do update_clienti In onom_clienti.prg + Select v_delegati + Scatter Name loRec + Do Adauga_Modifica_Inregistrare With "delegati", loRec, loRec.id_responsabil,"UPDATE",,"moddeleg" + If pniesire=1 + This.actualizeaza_grid1() + Endif + ENDPROC + + PROCEDURE do_sterge + SELECT v_delegati + SCATTER NAME lorec + Do STERGE_INREGISTRARE With "delegati",loRec.id_responsabil + + this.actualizeaza_grid1() + + ENDPROC + + PROCEDURE Init + Lparameters tnidpartener + DODEFAULT() + + If !Empty(tnidpartener) + Thisform.nidpartener=tnidpartener + Endif + ENDPROC + + PROCEDURE KeyPress + Lparameters nKeyCode, nShiftAltCtrl + lcControl = Upper(Alltrim(This.ActiveControl.Name)) + If nKeyCode = 13 And lcControl = 'GDELEGATI' && enter + Nodefault + Thisform.but_TERMIN1.SetFocus + Else + DoDefault(nKeyCode, nShiftAltCtrl) + Endif + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_delegati_nou AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Cus_odata_delegati1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_checkbox1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu4" UniqueID="" Timestamp="" /> + + * + *p: nid + *p: orec + * + + * + DoCreate = .T. + Height = 182 + Name = "frm_delegati_nou" + Width = 375 + _SHAPE1.Name = "_SHAPE1" + _SHAPE2.Height = 29 + _SHAPE2.Left = 312 + _SHAPE2.Name = "_SHAPE2" + _SHAPE2.Top = 0 + _SHAPE2.Width = 65 + LB_TITLU_ALB_B121.Caption = "Delegat" + LB_TITLU_ALB_B121.Name = "LB_TITLU_ALB_B121" + LB_TITLU_ALB_B121.TabIndex = 9 + BUT_TERMIN1.Left = 345 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 7 + BUT_TERMIN1.Top = 1 + * + + ADD OBJECT '_checkbox1' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Inactiv", ; + ControlSource = "porec.inactiv", ; + Left = 44, ; + Name = "_checkbox1", ; + TabIndex = 6, ; + Top = 156 + *< END OBJECT: ClassLib="..\..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 315, ; + Name = "But_renunt1", ; + TabIndex = 8, ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cb_tx_simplu1' AS cb_tx_simplu WITH ; + Left = 42, ; + Name = "Cb_tx_simplu1", ; + TabIndex = 1, ; + Top = 38, ; + _cbbase1.ColumnCount = 2, ; + _cbbase1.ControlSource = "porec.nume_part", ; + _cbbase1.Name = "_cbbase1", ; + _cbbase1.RowSource = "v_clienti.nume,cod_fiscal", ; + _cbbase1.RowSourceType = 2, ; + _lbbase1.Caption = "Client:", ; + _lbbase1.Name = "_lbbase1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Left = 42, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 2, ; + Top = 66, ; + Text_simplu1.ControlSource = "porec.nume", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Delegat:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu2' AS clb_tx_simplu WITH ; + Height = 29, ; + Left = 42, ; + Name = "Clb_tx_simplu2", ; + TabIndex = 3, ; + Top = 94, ; + Width = 146, ; + Text_simplu1.ControlSource = "porec.bi_seria", ; + Text_simplu1.Height = 23, ; + Text_simplu1.Left = 101, ; + Text_simplu1.MaxLength = 10, ; + Text_simplu1.Name = "Text_simplu1", ; + Text_simplu1.Top = 3, ; + Text_simplu1.Width = 42, ; + Lb_simplu1.Caption = "BI serie:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu3' AS clb_tx_simplu WITH ; + Left = 42, ; + Name = "Clb_tx_simplu3", ; + TabIndex = 5, ; + Top = 122, ; + Text_simplu1.ControlSource = "porec.eliberatde", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Eliberat de:", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu4' AS clb_tx_simplu WITH ; + Height = 29, ; + Left = 187, ; + Name = "Clb_tx_simplu4", ; + TabIndex = 4, ; + Top = 94, ; + Width = 145, ; + TEXT_SIMPLU1.ControlSource = "porec.bi_numar", ; + TEXT_SIMPLU1.Format = "rk", ; + TEXT_SIMPLU1.Height = 23, ; + TEXT_SIMPLU1.InputMask = "999999", ; + TEXT_SIMPLU1.Left = 33, ; + TEXT_SIMPLU1.MaxLength = 10, ; + TEXT_SIMPLU1.Name = "TEXT_SIMPLU1", ; + TEXT_SIMPLU1.Top = 3, ; + TEXT_SIMPLU1.Width = 104, ; + LB_SIMPLU1.Caption = "nr.:", ; + LB_SIMPLU1.Name = "LB_SIMPLU1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_delegati1' AS cus_odata_delegati WITH ; + Left = 348, ; + Name = "Cus_odata_delegati1", ; + Top = 48 + *< END OBJECT: ClassLib="onom_clienti.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + LOCAL PLRETURN + + lccontrol = UPPER(this.ActiveControl.BaseClass ) + IF INLIST(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.Activecontrol.controlsource + &lcval=thisform.ActiveControl.value + ENDIF + + + Do Case + Case Empty(porec.nume) + Messagebox('Nu ati completat denumirea delegatului!',0+48,"Atentie") + *!* This.clb_tx_simplu2.Text_simplu1.SetFocus() + this.cb_tx_simplu1._CBBASE1.SetFocus() + + plreturn=.F. + + + + OTHERWISE + If Alltrim(Upper(This.cus_odata_delegati1.cactiune))="INSERT" &&Or (Alltrim(Upper(This.cus_odata_mecanici1.cactiune))="UPDATE") + IF USED('exista_del') + USE IN exista_del + ENDIF + pcexec=[select count(*) as inreg from ]+gcS+[.vnom_delegati ] + ; + [where (TRIM(nume)=']+Alltrim(porec.nume)+[') and ] + ; + [id_part=]+ALLTRIM(STR(porec.id_part)) + *!* [TRIM(nume)=']+ALLTRIM(porec.nume)+['] + Do While .T. + pnSucces = SQLEXEC(GNHANDLE,pcexec,'exista_del') + If pnSucces = 0 + * instructiunea in curs de executie + Else + Exit + Endif + Enddo + Select exista_del + lnInreg=exista_del.inreg + Use In exista_del + If lnInreg>0 + Messagebox('Mai exista acest delegat inregistrat!',0+48,"Atentie") + *!* This.clb_tx_simplu2.Text_simplu1.SetFocus() + this.cb_tx_simplu1._CBBASE1.SetFocus() + plreturn=.F. + ELSE + PLRETURN=This.cus_odata_delegati1.salvare(This.OREC,This.NID) + ENDIF + ELSE + *!* WAIT WINDOW "pe else" + PLRETURN=This.cus_odata_delegati1.salvare(This.OREC,This.NID) + ENDIF + + ENDCASE + + Return PLRETURN + + + + + ENDPROC + + PROCEDURE Init + Lparameters toRec, tnId, tcActiune + + DoDefault() + + This.orec= toRec + This.nid = tnId + This.cus_odata_delegati1.cactiune = tcActiune + Do Case + Case tcActiune='INSERT' And !Empty(toRec.id_part) + Select v_clienti + Locate For id_part = toRec.id_part + If Found() + porec.nume=nume + This.orec.nume=nume + toRec.nume=nume + Thisform.cb_tx_simplu1._cbbase1.Refresh + Thisform.cb_tx_simplu1._cbbase1.Enabled=.F. + Endif + Case tcActiune='UPDATE' + Thisform.cb_tx_simplu1._cbbase1.Enabled=.F. + Endcase + ENDPROC + + PROCEDURE Cb_tx_simplu1._cbbase1.LostFocus + porec.id_part = v_clienti.id_part + *!* POREC.MARCA = V_PERSONAL.MARCA + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_responsabili AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column1.Responsabill" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column3.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column4.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_gnom_responsabili.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lb_nom_responsabili" UniqueID="" Timestamp="" /> + + * + *m: log + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 303 + lactiv3 = .T. + lactiv4 = .T. + Name = "frm_responsabili" + Width = 504 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 504 + _shape2.Height = 29 + _shape2.Left = 383 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 121 + Lb_titlu_alb_b121.Caption = "Responsabili" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 8 + BUT_TERMIN1.Left = 472 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 4 + BUT_TERMIN1.Top = 1 + BUT_TERMIN1.Visible = .T. + * + + ADD OBJECT '_gnom_responsabili' AS _grdrow WITH ; + ColumnCount = 5, ; + DeleteMark = .F., ; + Height = 191, ; + Left = 8, ; + Name = "_gnom_responsabili", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordSource = "v_responsabili", ; + TabIndex = 3, ; + Top = 101, ; + Width = 488, ; + Column1.ColumnOrder = 2, ; + Column1.ControlSource = "nume", ; + Column1.Name = "Column1", ; + Column1.ReadOnly = .T., ; + Column1.Width = 210, ; + Column2.ColumnOrder = 3, ; + Column2.ControlSource = "functie", ; + Column2.Name = "Column2", ; + Column2.ReadOnly = .T., ; + Column2.Width = 126, ; + Column3.ColumnOrder = 4, ; + Column3.ControlSource = "ales", ; + Column3.Name = "Column3", ; + Column3.ReadOnly = .T., ; + Column3.Sparse = .F., ; + Column3.Width = 46, ; + Column4.ColumnOrder = 5, ; + Column4.ControlSource = "inactiv", ; + Column4.Name = "Column4", ; + Column4.ReadOnly = .T., ; + Column4.Sparse = .F., ; + Column4.Width = 40, ; + Column5.ColumnOrder = 1, ; + Column5.ControlSource = "id_responsabil", ; + Column5.Name = "Column5", ; + Column5.ReadOnly = .T., ; + Column5.Width = 31 + *< END OBJECT: ClassLib="..\..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT '_gnom_responsabili.Column1.Responsabill' AS header WITH ; + Alignment = 2, ; + Caption = "Responsabil", ; + Name = "Responsabill" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_gnom_responsabili.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT '_gnom_responsabili.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Functia", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_gnom_responsabili.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT '_gnom_responsabili.Column3.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + Height = 17, ; + Left = 9, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 30, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT '_gnom_responsabili.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Ales", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_gnom_responsabili.Column4.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + Centered = .T., ; + Height = 17, ; + Left = 22, ; + Name = "Check1", ; + ReadOnly = .T., ; + Top = 30, ; + Width = 60 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT '_gnom_responsabili.Column4.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Inactiv", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_gnom_responsabili.Column5.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Id", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_gnom_responsabili.Column5.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'But_modifica1' AS but_modifica WITH ; + Left = 415, ; + Name = "But_modifica1", ; + TabIndex = 6, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_nou1' AS but_nou WITH ; + Left = 385, ; + Name = "But_nou1", ; + TabIndex = 7, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'But_sterge1' AS but_sterge WITH ; + Left = 443, ; + Name = "But_sterge1", ; + TabIndex = 5, ; + Top = 1, ; + Visible = .T. + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ; + Left = 309, ; + Name = "Cmd_cauta1", ; + TabIndex = 2, ; + Top = 44 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'lb_nom_responsabili' AS clb_tx_simplu WITH ; + Left = 8, ; + Name = "lb_nom_responsabili", ; + TabIndex = 1, ; + Top = 44, ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Responsabil", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + PROCEDURE actualizeaza_grid1 + LPARAMETERS pcFiltru + LOCAL lcFiltru + lcFiltru=pcFiltru + IF EMPTY(lcFiltru) + lcFiltru=poresponsabili.ca_baza1.cfiltru + ENDIF + save_grid_tag(thisform._gnom_responsabili) + poresponsabili.ca_baza1.cfiltru=lcFiltru + poresponsabili.ca_baza1.afisare() + restore_grid_tag(thisform._gnom_responsabili) + IF RECCOUNT('v_responsabili')>0 + thisform._gnom_responsabili.SetFocus() + ELSE + thisform.lb_nom_responsabili.SetFocus() + ENDIF + + ENDPROC + + PROCEDURE do_adauga + SELECT v_responsabili + SCATTER NAME loRec blank + DO Adauga_Modifica_Inregistrare WITH "responsabili",loRec,,"INSERT" + this.actualizeaza_grid1() + ENDPROC + + PROCEDURE do_cauta + Local lcFiltru + lcFiltru=[] + lcNume = STRTRAN(Upper(Alltrim(This.lb_nom_responsabili.text_simplu1.value)),['],['']) + If !Empty(lcNume) + lcFiltru=[nume like ']+lcNume+[%'] + ELSE + lcFiltru = [2=2] + Endif + This.MousePointer= 11 + This.LockScreen=.T. + Thisform.actualizeaza_grid1(lcFiltru) + IF RECCOUNT()=0 + MESSAGEBOX("Cautarea nu a intors rezultate!",0+64,"Info cautare") + ENDIF + This.LockScreen=.F. + This.MousePointer= 0 + ENDPROC + + PROCEDURE do_modifica + Select v_responsabili + Scatter Name loRec + Do Adauga_Modifica_Inregistrare With "responsabili",loRec,loRec.Id_responsabil,"UPDATE" + thisform.actualizeaza_grid1() + + + ENDPROC + + PROCEDURE do_sterge + SELECT v_responsabili + SCATTER NAME lorec + Do STERGE_INREGISTRARE With "responsabili",loRec.id_responsabil + + this.actualizeaza_grid1() + + + ENDPROC + + PROCEDURE KeyPress + Lparameters nKeyCode, nShiftAltCtrl + lcActiveControl = UPPER(ALLTRIM(this.ActiveControl.name)) + + IF nKeyCode=13 AND lcActiveControl = '_GNOM_RESPONSABILI' + Nodefault + this.LB_nom_responsabili.SetFocus + ENDIF + + + DODEFAULT(nKeyCode, nShiftAltCtrl) + + + ENDPROC + + PROCEDURE log + LPARAMETERS tctabela,tnId + + lcId = ALLTRIM(STR(tnId)) + lctabela = UPPER(ALLTRIM(tctabela)) + PRIVATE polog,pcschema1,pcselect1 + STORE '' TO polog + pcschema1 = [''] + pcselect1=['select * from ] + gcS + [.vlog where '] + pcorder1=['dataora'] + pcfiltru1 = [tabel = '] + lctabela + [' and id_tabel = ] + lcId + gencursor('polog','v_log',pcselect1,pcfiltru1,pcschema1,pcorder1) + polog.ca_baza1.afisare() + ofrmlog=CREATEOBJECT('frm_log') + ofrmlog.show(1) + RELEASE polog + ENDPROC + + PROCEDURE Unload + IF USED('v_responsabili') + USE IN v_responsabili + ENDIF + ENDPROC + + PROCEDURE _gnom_responsabili.Column1.Text1.DblClick + thisform.log("NOM_RESPONSABILI",v_responsabili.id_responsabil) + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_responsabili_nou AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Clb_tx_simplu2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_checkbox1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cus_odata_responsabili1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_checkbox2" UniqueID="" Timestamp="" /> + + * + *p: nid + *p: orec + * + + * + BorderStyle = 1 + DoCreate = .T. + Height = 166 + Name = "frm_responsabili_nou" + Width = 375 + _shape1.Name = "_shape1" + _shape2.Height = 29 + _shape2.Left = 312 + _shape2.Name = "_shape2" + _shape2.Top = 0 + _shape2.Width = 62 + Lb_titlu_alb_b121.Caption = "Responsabili" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + Lb_titlu_alb_b121.TabIndex = 7 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.TabIndex = 5 + * + + ADD OBJECT '_checkbox1' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Ales", ; + ControlSource = "porec.ales", ; + Height = 17, ; + Left = 33, ; + Name = "_checkbox1", ; + TabIndex = 3, ; + TabStop = .F., ; + Top = 120, ; + Width = 42 + *< END OBJECT: ClassLib="..\..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT '_checkbox2' AS _checkbox WITH ; + Alignment = 0, ; + Caption = "Inactiv", ; + ControlSource = "porec.inactiv", ; + Left = 33, ; + Name = "_checkbox2", ; + TabIndex = 4, ; + TabStop = .F., ; + Top = 144 + *< END OBJECT: ClassLib="..\..\comun\clase\_baza.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'But_renunt1' AS but_renunt WITH ; + Left = 312, ; + Name = "But_renunt1", ; + TabIndex = 6, ; + Top = 1 + *< END OBJECT: ClassLib="..\..\comun\clase\cmd_butoane.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Clb_tx_simplu1' AS clb_tx_simplu WITH ; + Left = 31, ; + Name = "Clb_tx_simplu1", ; + TabIndex = 1, ; + Top = 44, ; + Text_simplu1.ControlSource = "porec.nume", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.InputMask = "", ; + Text_simplu1.Name = "Text_simplu1", ; + Text_simplu1.Value = , ; + Lb_simplu1.Caption = "Responsabil", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Clb_tx_simplu2' AS clb_tx_simplu WITH ; + Left = 31, ; + Name = "Clb_tx_simplu2", ; + TabIndex = 2, ; + Top = 83, ; + Text_simplu1.ControlSource = "porec.functie", ; + Text_simplu1.Format = "!K", ; + Text_simplu1.Name = "Text_simplu1", ; + Lb_simplu1.Caption = "Functie", ; + Lb_simplu1.Name = "Lb_simplu1" + *< END OBJECT: ClassLib="..\..\comun\clase\lb_tx.vcx" BaseClass="container" /> + + ADD OBJECT 'Cus_odata_responsabili1' AS cus_odata_responsabili WITH ; + Left = 336, ; + Name = "Cus_odata_responsabili1", ; + Top = 48 + *< END OBJECT: ClassLib="onom_clienti.vcx" BaseClass="custom" /> + + PROCEDURE inainte_de_do_termin + LOCAL PLRETURN + + lccontrol = UPPER(this.ActiveControl.BaseClass ) + IF INLIST(lccontrol,"TEXTBOX","EDITBOX","COMBOBOX") + lcval=This.Activecontrol.controlsource + &lcval=thisform.ActiveControl.value + ENDIF + + + + PLRETURN=This.cus_odata_responsabili1.salvare(This.OREC,This.NID) + Return PLRETURN + + ENDPROC + + PROCEDURE Init + LPARAMETERS toRec, tnId, tcActiune + + DODEFAULT() + + this.orec= toRec + this.nid = tnId + this.cus_odata_RESPONSABILI1.cactiune = tcActiune + ENDPROC + + PROCEDURE _checkbox1.DblClick + this.Value = ABS(this.Value - 1) + + ENDPROC + + PROCEDURE _checkbox2.DblClick + this.Value = ABS(this.Value - 1) + ENDPROC + +ENDDEFINE + +DEFINE CLASS frm_tipc AS _frmbase OF "..\..\comun\clase\_frm_base.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="_grdrow1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdrow1.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdrow1.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdrow1.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdrow1.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdrow1.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="_grdrow1.Column3.Text1" UniqueID="" Timestamp="" /> + + * + BorderStyle = 3 + DoCreate = .T. + Height = 153 + Name = "frm_tipc" + Width = 787 + _shape1.Anchor = 11 + _shape1.Height = 29 + _shape1.Left = 0 + _shape1.Name = "_shape1" + _shape1.Top = 0 + _shape1.Width = 788 + _shape2.Anchor = 9 + _shape2.Height = 29 + _shape2.Left = 756 + _shape2.Name = "_shape2" + _shape2.Top = -1 + _shape2.Width = 32 + Lb_titlu_alb_b121.Caption = "Tipuri contracte" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Anchor = 9 + BUT_TERMIN1.Left = 757 + BUT_TERMIN1.Name = "BUT_TERMIN1" + BUT_TERMIN1.Top = 0 + * + + ADD OBJECT '_grdrow1' AS _grdrow WITH ; + Anchor = 15, ; + ColumnCount = 3, ; + DeleteMark = .F., ; + Height = 110, ; + Left = 5, ; + Name = "_grdrow1", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordMark = .F., ; + RecordSource = "tTipc", ; + Top = 37, ; + Width = 775, ; + Column1.ControlSource = "recno()", ; + Column1.Name = "Column1", ; + Column1.ReadOnly = .T., ; + Column1.Width = 39, ; + Column2.ControlSource = "tipc", ; + Column2.Name = "Column2", ; + Column2.ReadOnly = .T., ; + Column2.Width = 148, ; + Column3.ControlSource = "explicatie", ; + Column3.Name = "Column3", ; + Column3.ReadOnly = .T., ; + Column3.Width = 563 + *< END OBJECT: ClassLib="..\..\comun\clase\_grd_base.vcx" BaseClass="grid" /> + + ADD OBJECT '_grdrow1.Column1.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Nr. crt.", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_grdrow1.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT '_grdrow1.Column2.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Tip contract", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_grdrow1.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT '_grdrow1.Column3.Header1' AS header WITH ; + Alignment = 2, ; + Caption = "Descriere", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT '_grdrow1.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + +ENDDEFINE diff --git a/Clase/outlook2003bar.vc2 b/Clase/outlook2003bar.vc2 new file mode 100644 index 0000000..deda4f0 --- /dev/null +++ b/Clase/outlook2003bar.vc2 @@ -0,0 +1,1624 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="outlook2003bar.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS outlook2003bar AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Panes" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="OverflowPanel" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="SplitBar" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="SplitBar.imgSplitter" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Panel" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Splitter" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Title" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Title.lblCaption" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Title.linBorder" UniqueID="" Timestamp="" /> + + * + *m: addbutton && Internal to the class. Add a new button. + *m: adjustpanelheight && Internal to the class. Adjust the panel height to show the buttons. + *m: adjustsplitterlimits && Internal to the class. Adjust splitter RangeMin and RangeMax limits. + *m: creategradientimage && Create a gradient image. + *m: rearrangebuttons && Internal to the class. Rearrange buttons to show in correctly order and position. + *m: selectedbutton_assign && Internal to the class. Occurs when SelectedButton property is changed. + *m: setcolorscheme && Set color scheme. + *m: showless && Internal to the class. Show less buttons in the panel. + *m: showmore && Internal to the class. Show more buttons in the panel. + *m: themenumber_assign && Internal to the class. Occurs when ThemeNumber property is changed. + *m: themessupport_access && Internal to the class. Occurs when ThemesSupport property is accessed. + *p: imgfocusednotselected && Internal to the class. Name and path of the image to show in the background when button receives the focus and is not selected. + *p: imgfocusedselected && Internal to the class. Name and path of the image to show in the background when button receives the focus and is selected. + *p: imgnotfocusednotselected && Internal to the class. Name and path of the image to show in the background when button does not have focus and is not selected. + *p: imgnotfocusedselected && Internal to the class. Name and path of the image to show in the background when button does not have focus and is selected. + *p: imgsplitbar && Internal to the class. Name and path of the image to show in the background of splitbar. + *p: imgtitle && Internal to the class. Name and path of the image to show in the background of title. + *p: maxshowedbuttons && Maximum number of buttons displayed in the panel. + *p: mnushowlesstext && The text that is displayed in the "Show less" shortcut menu item. + *p: mnushowmoretext && The text that is displayed in the "Show more" shortcut menu item. + *p: rgbborder && RGB color of control borders. + *p: rgbfocusednotselectedend && End RGB color (for gradient effect) of focused and not selected button. + *p: rgbfocusednotselectedstart && Start RGB color (for gradient effect) of focused and not selected button. + *p: rgbfocusedselectedend && End RGB color (for gradient effect) of focused and selected button. + *p: rgbfocusedselectedstart && Start RGB color (for gradient effect) of focused and selected button. + *p: rgbnotfocusednotselectedend && End RGB color (for gradient effect) of not focused and not selected button. + *p: rgbnotfocusednotselectedstart && Start RGB color (for gradient effect) of not focused and not selected button. + *p: rgbnotfocusedselectedend && End RGB color (for gradient effect) of not focused and selected button. + *p: rgbnotfocusedselectedstart && Start RGB color (for gradient effect) of not focused and selected button. + *p: rgbtitleend && End RGB color (for gradient effect) of title. + *p: rgbtitlestart && Start RGB color (for gradient effect) of title. + *p: selectedbutton && Internal to the class. The number of selected button. + *p: showedbuttons && Internal to the class. The number of showed buttons. + *p: themenumber && 0- Automatic, 1- Blue, 2- Silver, 3- Olive and 4- User defined. + *p: themessupport && Specifies if the OS support themes. + *p: version && Outlook2003Bar version. + * + + HIDDEN themessupport + PROTECTED version + * + Anchor = 15 + Height = 362 + imgfocusednotselected = + imgfocusedselected = + imgnotfocusednotselected = + imgnotfocusedselected = + imgsplitbar = + imgtitle = + maxshowedbuttons = 7 + mnushowlesstext = Show less + mnushowmoretext = Show more + Name = "outlook2003bar" + rgbborder = (Rgb(0,45,150)) + rgbfocusednotselectedend = (Rgb(247,192,91)) + rgbfocusednotselectedstart = (Rgb(255,255,220)) + rgbfocusedselectedend = (Rgb(255,255,220)) + rgbfocusedselectedstart = (Rgb(247,192,91)) + rgbnotfocusednotselectedend = (Rgb(126,165,224)) + rgbnotfocusednotselectedstart = (Rgb(203,225,252)) + rgbnotfocusedselectedend = (Rgb(238,149,21)) + rgbnotfocusedselectedstart = (Rgb(250,229,147)) + rgbtitleend = (Rgb(8,60,161)) + rgbtitlestart = (Rgb(85,131,211)) + selectedbutton = 0 + showedbuttons = 5 + themenumber = 0 + themessupport = (Null) + version = 1.0.0 + Width = 200 + * + + ADD OBJECT 'OverflowPanel' AS overflowpanel WITH ; + Anchor = 14, ; + Height = 32, ; + Left = 1, ; + Name = "OverflowPanel", ; + Top = 327, ; + Width = 198, ; + MENUBUTTON.imgPicture.Height = 16, ; + MENUBUTTON.imgPicture.Name = "imgPicture", ; + MENUBUTTON.imgPicture.Visible = .F., ; + MENUBUTTON.imgPicture.Width = 16, ; + MENUBUTTON.Name = "MENUBUTTON", ; + MENUBUTTON.Visible = .F. + *< END OBJECT: ClassLib="outlook2003bar.vcx" BaseClass="container" /> + + ADD OBJECT 'Panel' AS panel WITH ; + Anchor = 14, ; + Left = 0, ; + Name = "Panel", ; + Top = 327 + *< END OBJECT: ClassLib="outlook2003bar.vcx" BaseClass="container" /> + + ADD OBJECT 'Panes' AS pageframe WITH ; + ActivePage = 0, ; + Anchor = 15, ; + BorderWidth = 0, ; + ErasePage = .T., ; + Height = 328, ; + Left = 1, ; + MemberClass = "pane", ; + MemberClassLibrary = outlook2003bar.vcx, ; + Name = "Panes", ; + SpecialEffect = 2, ; + Tabs = .F., ; + Themes = .F., ; + Top = 33, ; + Width = 198 + *< END OBJECT: BaseClass="pageframe" /> + + ADD OBJECT 'SplitBar' AS container WITH ; + Anchor = 14, ; + Height = 7, ; + Left = 0, ; + Name = "SplitBar", ; + Top = 321, ; + Width = 200 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'SplitBar.imgSplitter' AS image WITH ; + Anchor = 768, ; + BackStyle = 0, ; + Height = 3, ; + Left = 81, ; + Name = "imgSplitter", ; + Picture = outlook2003barsplitter.png, ; + Top = 2, ; + Width = 35 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'Splitter' AS splitter2 WITH ; + Anchor = 14, ; + BackStyle = 0, ; + Height = 7, ; + Left = 0, ; + Name = "Splitter", ; + rangemax = 373, ; + rangemin = 365, ; + SpecialEffect = 1, ; + Top = 321, ; + Visible = .F., ; + Width = 200 + *< END OBJECT: ClassLib="outlook2003bar.vcx" BaseClass="shape" /> + + ADD OBJECT 'Title' AS container WITH ; + Anchor = 11, ; + BorderWidth = 0, ; + Height = 35, ; + Left = 1, ; + Name = "Title", ; + Top = 1, ; + Width = 198 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'Title.lblCaption' AS label WITH ; + BackStyle = 0, ; + Caption = "Caption", ; + FontBold = .T., ; + FontSize = 10, ; + ForeColor = 255,255,255, ; + Height = 30, ; + Left = 7, ; + Name = "lblCaption", ; + Top = 0, ; + Width = 190, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Title.linBorder' AS line WITH ; + Anchor = 14, ; + Height = 0, ; + Left = 0, ; + Name = "linBorder", ; + Top = 31, ; + Width = 198 + *< END OBJECT: BaseClass="line" /> + + HIDDEN PROCEDURE addbutton && Internal to the class. Add a new button. + Lparameters lcCaption, lcPicture24, lcPicture16 + Thisform.LockScreen = .T. + With This + .Panel.AddButton(lcCaption, lcPicture24) + .OverflowPanel.AddButton(lcCaption, lcPicture16) + If .ShowedButtons<.MaxShowedButtons + .ShowMore() + Endif + .AdjustSplitterLimits() + Endwith + Thisform.LockScreen = .F. + ENDPROC + + PROCEDURE adjustpanelheight && Internal to the class. Adjust the panel height to show the buttons. + Local lnTopoAtual, lnAlturaDoPainel, lnShowedButtons + + With This + With .Splitter + .Anchor = 0 + lnTopoAtual = .Top + Local lnResto + Do While .T. + lnAlturaDoPainel = .Parent.OverflowPanel.Top - 6 - lnTopoAtual + lnResto = Mod(lnAlturaDoPainel,32) + If lnResto <> 0 + lnTopoAtual = lnTopoAtual - (32 - lnResto) + Else + .Top = lnTopoAtual + Exit + Endif + Enddo + .Anchor = 14 + Endwith + + With .SplitBar + .Anchor = 0 + .Top = lnTopoAtual + .Anchor = 14 + Endwith + + With .Panes + .Anchor = 0 + .Height = lnTopoAtual - .Top + .Anchor = 15 + Endwith + + With .Panel + .Anchor = 0 + .Top = lnTopoAtual + 6 + .Height = lnAlturaDoPainel + .Anchor = 14 + lnShowedButtons = Int(lnAlturaDoPainel / 32) + Endwith + + .ShowedButtons = lnShowedButtons + .ReArrangeButtons() + Endwith + ENDPROC + + PROCEDURE adjustsplitterlimits && Internal to the class. Adjust splitter RangeMin and RangeMax limits. + With This + With .Splitter + .RangeMax = This.OverflowPanel.Top + 2 + .RangeMin = .RangeMax - .Height - 1 - ; + (Min(This.Panel.ControlCount,This.MaxShowedButtons) * 32) + Endwith + .AdjustPanelHeight() + Endwith + ENDPROC + + HIDDEN PROCEDURE creategradientimage && Create a gradient image. + Lparameters lnRGBColor1, lnRGBColor2, lnGradPixels, lcGradFile + Local lnGradMode, lnGradPixels, x1, y1, x2, y2, lnWidth, lnHeight + + lnGradMode = 1 + Do Case + Case lnGradMode = 1 && Vertical + x1 = 0 + y1 = 0 + x2 = 1 + y2 = lnGradPixels + Case lnGradMode = 2 && Horizontal + x1 = 0 + y1 = 0 + x2 = lnGradPixels + y2 = 1 + Case lnGradMode = 3 && Diagonal TopLeft -> BottomRight + x1 = 0 + y1 = 0 + x2 = lnGradPixels + y2 = lnGradPixels + Case lnGradMode = 4 && Diagonal BottomLeft -> TopRight + x1 = 0 + y1 = lnGradPixels + x2 = lnGradPixels + y2 = 0 + Endcase + + lnWidth = Iif(lnGradMode = 1, 1, lnGradPixels) + lnHeight = Iif(lnGradMode = 2, 1, lnGradPixels) + + * Create Gradient Image + Set Classlib To _gdiplus Additive + + * Create a colorObject and store ARGB color values to variables + Local loClr As GpColor Of _gdiplus + Local lnColor1, lnColor2 + loClr = Createobject("gpColor") + loClr.FoxRGB = lnRGBColor1 + lnColor1 = loClr.ARGB + loClr.FoxRGB = lnRGBColor2 + lnColor2 = loClr.ARGB + + * Create a bitmap + Local loBmp As GpBitmap Of _gdiplus + loBmp = Createobject("gpBitmap") + loBmp.Create(lnWidth, lnHeight) + + * Get a bitmab graphics object + Local loGfx As GpGraphics Of _gdiplus + loGfx = Createobject("gpGraphics") + loGfx.CreateFromImage(loBmp) + + * Declare API + Declare Long GdipCreateLineBrushI In GDIPlus ; + String point1, String point2, ; + Long color1, Long color2, ; + Long wrapMode, Long @lineGradient + + * Get a gradient brush + Local loBrush As GpBrush Of _gdiplus + Local hBrush && Brush Handle + hBrush = 0 + GdipCreateLineBrushI(BinToC(x1,"4rs")+BinToC(y1,"4rs"), ; + BINTOC(x2,"4rs")+BinToC(y2,"4rs"), ; + lnColor1, lnColor2, 0, @hBrush) + loBrush = Createobject("gpBrush") + loBrush.SetHandle(hBrush, .T.) + + * Fill the bitmap with our gradient + loGfx.FillRectangle(loBrush,0,0,lnWidth, lnHeight) + loBmp.SaveToFile(lcGradFile,"image/bmp") + + Return + + ENDPROC + + PROCEDURE Destroy + With This + If .ThemesSupport + Unbindevents(0, 0x031A) + Endif + Local laImages[6], lnImage + laImages[1] = .ImgFocusedSelected + laImages[2] = .ImgFocusedNotSelected + laImages[3] = .ImgNotFocusedSelected + laImages[4] = .ImgNotFocusedNotSelected + laImages[5] = .ImgTitle + laImages[6] = .ImgSplitBar + Endwith + For lnImage=1 To Alen(laImages,1) + If Not Empty(laImages[lnImage]) + If File(laImages[lnImage]) + Clear Resources (laImages[lnImage]) + Erase (laImages[lnImage]) + Endif + Endif + Endfor + ENDPROC + + PROCEDURE Init + With Thisform + .MinHeight = This.Height + 4 + .MinWidth = This.Width + 4 + .ShowTips = .T. + Endwith + + With This + *!* .ImgFocusedSelected = Addbs(Sys(2023))+Sys(2015)+".bmp" + *!* .ImgFocusedNotSelected = Addbs(Sys(2023))+Sys(2015)+".bmp" + *!* .ImgNotFocusedSelected = Addbs(Sys(2023))+Sys(2015)+".bmp" + *!* .ImgNotFocusedNotSelected = Addbs(Sys(2023))+Sys(2015)+".bmp" + *!* .ImgTitle = Addbs(Sys(2023))+Sys(2015)+".bmp" + *!* .ImgSplitBar = Addbs(Sys(2023))+Sys(2015)+".bmp" + .ImgFocusedSelected = "outlook2003bar_1.bmp" + .ImgFocusedNotSelected = "outlook2003bar_2.bmp" + .ImgNotFocusedSelected = "outlook2003bar_3.bmp" + .ImgNotFocusedNotSelected = "outlook2003bar_4.bmp" + .ImgTitle = "outlook2003bar_5.bmp" + .ImgSplitBar = "outlook2003bar_6.bmp" + .SetColorScheme() + With .Panes + Local loPane + For Each loPane In .Pages + This.AddButton(loPane.Caption,loPane.Picture24,loPane.Picture16) + Endfor + loPane = Null + Endwith + If .ThemesSupport + Bindevent(0, 0x031A, This, "SetColorScheme") + Endif + Endwith + ENDPROC + + HIDDEN PROCEDURE rearrangebuttons && Internal to the class. Rearrange buttons to show in correctly order and position. + With This.OverflowPanel + Local lnLeft, lnMaxShowedButtons, lnControlCount, lnControl, llVisible + With .Menubutton + lnLeft = .Left + lnMaxShowedButtons = Int(.Left / .Width) + Endwith + lnControlCount = .ControlCount + For lnControl=lnControlCount To 2 Step -1 + With .Controls(lnControl) + llVisible = .F. + If .TabIndex > This.ShowedButtons + If lnControl <= (This.ShowedButtons + lnMaxShowedButtons + 1) + lnLeft = lnLeft - .Width + .Anchor = 0 + .Left = lnLeft + .Anchor = 9 + llVisible = .T. + Endif + Endif + .Visible = llVisible + Endwith + Endfor + Endwith + ENDPROC + + HIDDEN PROCEDURE selectedbutton_assign && Internal to the class. Occurs when SelectedButton property is changed. + Lparameters vNewVal + With This + Local lnOldSelectedButton, lcTitle + lnOldSelectedButton = .SelectedButton + .SelectedButton = m.vNewVal + + With .Panel + If lnOldSelectedButton>0 + .Controls(lnOldSelectedButton).ChangeBackground() + Endif + .Controls(m.vNewVal).ChangeBackground() + lcTitle = .Controls(m.vNewVal).lblCaption.Caption + Endwith + + With .OverflowPanel + If lnOldSelectedButton>0 + .Controls(lnOldSelectedButton+1).ChangeBackground() + Endif + .Controls(m.vNewVal+1).ChangeBackground() + Endwith + + .Title.lblCaption.Caption = lcTitle + .Panes.ActivePage = m.vNewVal + Endwith + ENDPROC + + HIDDEN PROCEDURE setcolorscheme && Set color scheme. + Lparameters HWnd As Integer, Msg As Integer, ; + wParam As Integer, Lparam As Integer) + With This + Local lnTheme + If .ThemeNumber==0 && Automatic + lnTheme = 1 && Blue + If .ThemesSupport + Local lnSysColor + Declare Integer GetSysColor In Win32Api Integer + lnSysColor = GetSysColor(2) + Clear Dlls GetSysColor + Do Case + Case lnSysColor == 12632256 && Silver + lnTheme = 2 + Case lnSysColor == 6922635 && Olive + lnTheme = 3 + Endcase + Endif + Else + lnTheme = .ThemeNumber + Endif + + If lnTheme <> 4 && Not user defined + * Focused and selected + .rgbFocusedSelectedStart = Rgb(247,192,91) + .rgbFocusedSelectedEnd = Rgb(255,255,220) + * Focused and not selected + .rgbFocusedNotSelectedStart = Rgb(255,255,220) + .rgbFocusedNotSelectedEnd = Rgb(247,192,91) + * Not Focused and selected + .rgbNotFocusedSelectedStart = Rgb(250,229,147) + .rgbNotFocusedSelectedEnd = Rgb(238,149,21) + Do Case + Case lnTheme = 3 &&6922635 && Olive + * Border + .rgbBorder = Rgb(125,134,118) + * Not Focused and not selected + .rgbNotFocusedNotSelectedStart = Rgb(230,242,200) + .rgbNotFocusedNotSelectedEnd = Rgb(175,191,144) + * Title + .rgbTitleStart = Rgb(174,188,137) + .rgbTitleEnd = Rgb(104,119,74) + Case lnTheme = 2 && 12632256 && Silver + * Border + .rgbBorder = Rgb(132,131,136) + * Not Focused and not selected + .rgbNotFocusedNotSelectedStart = Rgb(220,222,236) + .rgbNotFocusedNotSelectedEnd = Rgb(152,152,177) + * Title + .rgbTitleStart = Rgb(166,167,189) + .rgbTitleEnd = Rgb(118,117,153) + Otherwise && Blue + * Border + .rgbBorder = Rgb(0,45,150) + * Not Focused and not selected + .rgbNotFocusedNotSelectedStart = Rgb(203,225,252) + .rgbNotFocusedNotSelectedEnd = Rgb(126,165,224) + * Title + .rgbTitleStart = Rgb(85,131,211) + .rgbTitleEnd = Rgb(8,60,161) + Endcase + Endif + + Local lnRgbBorder, laColors[6,4], loButton, lnImage + lnRgbBorder = .rgbBorder + + * Focused and selected + laColors[1,1] = .rgbFocusedSelectedStart + laColors[1,2] = .rgbFocusedSelectedEnd + laColors[1,3] = 32 + laColors[1,4] = .ImgFocusedSelected + * Focused and not selected + laColors[2,1] = .rgbFocusedNotSelectedStart + laColors[2,2] = .rgbFocusedNotSelectedEnd + laColors[2,3] = 32 + laColors[2,4] = .ImgFocusedNotSelected + * Not Focused and selected + laColors[3,1] = .rgbNotFocusedSelectedStart + laColors[3,2] = .rgbNotFocusedSelectedEnd + laColors[3,3] = 32 + laColors[3,4] = .ImgNotFocusedSelected + * Not Focused and not selected + laColors[4,1] = .rgbNotFocusedNotSelectedStart + laColors[4,2] = .rgbNotFocusedNotSelectedEnd + laColors[4,3] = 32 + laColors[4,4] = .ImgNotFocusedNotSelected + + * Title + laColors[5,1] = .rgbTitleStart + laColors[5,2] = .rgbTitleEnd + laColors[5,3] = 32 + laColors[5,4] = .ImgTitle + * SplitBar + laColors[6,1] = .rgbTitleStart + laColors[6,2] = .rgbTitleEnd + laColors[6,3] = 7 + laColors[6,4] = .ImgSplitBar + + .Title.Picture = "" + .SplitBar.Picture = "" + For Each loButton In .Panel.Controls + loButton.Picture = "" + Endfor + loButton = Null + With .OverflowPanel + .Picture = "" + For Each loButton In .Controls + loButton.Picture = "" + Endfor + Endwith + loButton = Null + + For lnImage=Iif(Evl(Msg,0)==0,1,4) To 6 + If File(laColors[lnImage,4]) + Clear Resources (laColors[lnImage,4]) + Erase (laColors[lnImage,4]) + Endif + .CreateGradientImage(laColors[lnImage,1], laColors[lnImage,2], ; + laColors[lnImage,3], laColors[lnImage,4]) + Endfor + + .BorderColor = lnRgbBorder + With .Title + .BorderColor = lnRgbBorder + .Picture = This.ImgTitle + .linBorder.BorderColor = lnRgbBorder + Endwith + .Splitter.BorderColor = lnRgbBorder + With .SplitBar + .Picture = This.ImgSplitBar + .BorderColor = lnRgbBorder + Endwith + With .Panel + .BorderColor = lnRgbBorder + For Each loButton In .Controls + With loButton + .ChangeBackground(.F.) + .BorderColor = lnRgbBorder + .linBorder.BorderColor = lnRgbBorder + Endwith + Endfor + Endwith + loButton = Null + With .OverflowPanel + .Picture = laColors[4,4] + For Each loButton In .Controls + loButton.ChangeBackground(.F.) + Endfor + Endwith + loButton = Null + Endwith + Return .T. + ENDPROC + + PROCEDURE showless && Internal to the class. Show less buttons in the panel. + With This + With .Splitter + .Anchor = 0 + .Top = .Top + 32 + Endwith + .AdjustPanelHeight() + Endwith + ENDPROC + + PROCEDURE showmore && Internal to the class. Show more buttons in the panel. + With This + With .Splitter + .Anchor = 0 + .Top = .Top - 32 + Endwith + .AdjustPanelHeight() + Endwith + ENDPROC + + HIDDEN PROCEDURE themenumber_assign && Internal to the class. Occurs when ThemeNumber property is changed. + Lparameters vNewVal + If Between(vNewVal,0,4) + This.ThemeNumber = m.vNewVal + Else + This.ThemeNumber = 1 + Endif + ENDPROC + + HIDDEN PROCEDURE themessupport_access && Internal to the class. Occurs when ThemesSupport property is accessed. + With This + If Isnull(.ThemesSupport) + Local llThemesSupport + llThemesSupport = .F. + If .ThemeNumber==0 && Automatic + If Os(3)=="5" And Os(4)=="1" && Windows XP + Declare Long IsThemeActive In UXTHEME + llThemesSupport = (IsThemeActive()==1) + Clear Dlls IsThemeActive + Endif + Endif + .ThemesSupport = llThemesSupport + Endif + Endwith + Return This.ThemesSupport + ENDPROC + + PROCEDURE Panes.Init + With This + .SetAll("BackColor",.Parent.BackColor,"Page") + Endwith + ENDPROC + + PROCEDURE Splitter.Move + Lparameters nLeft, nTop, nWidth, nHeight + DoDefault(nLeft, nTop, nWidth, nHeight) + This.Parent.AdjustSplitterLimits() + ENDPROC + + PROCEDURE Splitter.split + This.Parent.AdjustPanelHeight() + ENDPROC + +ENDDEFINE + +DEFINE CLASS overflowpanel AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="MenuButton" UniqueID="" Timestamp="" /> + + * + *m: addbutton && Add a new button to panel. + * + + * + BorderWidth = 0 + Height = 32 + Name = "overflowpanel" + Width = 198 + * + + ADD OBJECT 'MenuButton' AS overflowpanelbutton WITH ; + Anchor = 9, ; + Left = 174, ; + Name = "MenuButton", ; + imgPicture.Height = 16, ; + imgPicture.Name = "imgPicture", ; + imgPicture.Picture = outlook2003bararrow.png, ; + imgPicture.Width = 16 + *< END OBJECT: ClassLib="outlook2003bar.vcx" BaseClass="container" /> + + PROCEDURE addbutton && Add a new button to panel. + Lparameters lcCaption, lcPicture + With This + Local lnControlCount + lnControlCount = .ControlCount + 1 + + .Newobject("Button"+Alltrim(Str(lnControlCount - 1)),; + "OverflowPanelButton","Outlook2003Bar",,; + lcCaption,lcPicture) + Endwith + ENDPROC + + PROCEDURE MenuButton.changeselectedbutton + Local lnButtonCount + lnButtonCount = This.Parent.ControlCount - 1 + If lnButtonCount > 0 + Private loBar + loBar = This.Parent.Parent + With This.ShortcutMenu + .NewMenu() + Local laMenu[lnButtonCount, 2] + laMenu="" + Local loButton + For Each loButton In This.Parent.Controls + With loButton + If Upper(.Class) == Upper("OverflowPanelButton") And .Name <> This.Name + laMenu[.TabIndex, 1] = .imgPicture.ToolTipText + laMenu[.TabIndex, 2] = .imgPicture.Picture + Endif + Endwith + Endfor + loButton = Null + Local lnMenuItem + For lnMenuItem=1 To Alen(laMenu,1) + .AddMenuBar( laMenu[lnMenuItem, 1], ; + "loBar.Selectedbutton = Bar()", ; + "Picture '" + laMenu[lnMenuItem, 2] + "'",,; + .F.,.F.,(lnMenuItem==loBar.Selectedbutton) ) + Endfor + .AddMenuSeparator() + .AddMenuBar(loBar.mnuShowMoreText,; + "loBar.ShowMore()",,,.F.,; + loBar.Showedbuttons=loBar.MaxShowedbuttons,.F.) + .AddMenuBar(loBar.mnuShowLessText,; + "loBar.ShowLess()",,,.F.,; + loBar.Showedbuttons=0,.F.) + .ShowMenu() + .SetMenu() + Endwith + Release loBar + Endif + ENDPROC + + PROCEDURE MenuButton.Destroy + With This + .ShortcutMenu.ClearMenu() + .ShortcutMenu = Null + Endwith + ENDPROC + + PROCEDURE MenuButton.Init + Nodefault + This.AddProperty("ShortcutMenu",Newobject("_ShortcutMenu","_menu")) + ENDPROC + +ENDDEFINE + +DEFINE CLASS overflowpanelbutton AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="imgPicture" UniqueID="" Timestamp="" /> + + * + *m: changebackground && Change button's background image. + *m: changeselectedbutton && Change selected button. + * + + * + BorderWidth = 0 + Height = 32 + MousePointer = 15 + Name = "overflowpanelbutton" + Width = 24 + * + + ADD OBJECT 'imgPicture' AS image WITH ; + BackStyle = 0, ; + Height = 16, ; + Left = 4, ; + MousePointer = 15, ; + Name = "imgPicture", ; + Top = 8, ; + Width = 16 + *< END OBJECT: BaseClass="image" /> + + PROCEDURE changebackground && Change button's background image. + Lparameters llGotFocus + #Define lnFocused 8 + #Define lnNotFocused 16 + #Define lnSelected 32 + #Define lnNotSelected 64 + Local lnState, lcImage + With This.Parent.Parent + lnState = (Iif(llGotFocus,lnFocused,lnNotFocused) + ; + Iif(.SelectedButton==This.TabIndex,lnSelected,lnNotSelected)) + Do Case + Case lnState = (lnFocused + lnSelected) + lcImage = .ImgFocusedSelected + Case lnState = (lnFocused + lnNotSelected) + lcImage = .ImgFocusedNotSelected + Case lnState = (lnNotFocused + lnSelected) + lcImage = .ImgNotFocusedSelected + Case lnState = (lnNotFocused + lnNotSelected) + lcImage = .ImgNotFocusedNotSelected + Otherwise + lcImage = "" + Endcase + Endwith + This.Picture = lcImage + ENDPROC + + PROCEDURE changeselectedbutton && Change selected button. + This.Parent.Parent.SelectedButton = This.TabIndex + ENDPROC + + PROCEDURE Click + This.ChangeSelectedButton() + ENDPROC + + PROCEDURE Init + Lparameters lcToolTipText, lcPicture + With This + .TabIndex = .TabIndex - 1 + .Top = 0 + .SetAll("ToolTipText",lcToolTipText) + .imgPicture.Picture = lcPicture + + If .TabIndex == 1 + .ChangeSelectedButton() + Else + .ChangeBackground(.F.) + Endif + Endwith + ENDPROC + + PROCEDURE MouseEnter + Lparameters nButton, nShift, nXCoord, nYCoord + This.ChangeBackground(.T.) + ENDPROC + + PROCEDURE MouseLeave + Lparameters nButton, nShift, nXCoord, nYCoord + This.ChangeBackground(.F.) + ENDPROC + + PROCEDURE imgPicture.Click + This.Parent.ChangeSelectedButton() + ENDPROC + +ENDDEFINE + +DEFINE CLASS pane AS page + *< CLASSDATA: Baseclass="page" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *p: picture16 && 16x16 image displayed in the panel buttons. + *p: picture24 && 24x24 image displayed in the panel buttons. + * + + * + BackColor = 255,255,255 + Caption = "Page1" + Height = 195 + Name = "pane" + picture16 = ("") + picture24 = ("") + Width = 195 + * + +ENDDEFINE + +DEFINE CLASS panel AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addbutton && Add a new button to panel. + * + + * + BackStyle = 0 + Height = 0 + Name = "panel" + Width = 200 + * + + PROCEDURE addbutton && Add a new button to panel. + Lparameters lcCaption, lcPicture + With This + .Newobject("Button"+Alltrim(Str(.ControlCount + 1)),; + "PanelButton","Outlook2003Bar",,; + lcCaption,lcPicture) + Endwith + ENDPROC + +ENDDEFINE + +DEFINE CLASS panelbutton AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="lblCaption" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="linBorder" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="imgPicture" UniqueID="" Timestamp="" /> + + * + *m: changebackground && Change button's background image. + *m: changeselectedbutton && Change selected button. + *m: do_arata_formular + *m: do_date_generale + *m: do_facturare + *m: do_linkuri + *m: do_obiectul + *m: do_observatii + *m: do_termene_facturare + *m: do_termene_livrare + * + + * + Height = 32 + MousePointer = 15 + Name = "panelbutton" + Width = 198 + * + + ADD OBJECT 'imgPicture' AS image WITH ; + BackStyle = 0, ; + Height = 24, ; + Left = 4, ; + MousePointer = 15, ; + Name = "imgPicture", ; + Top = 4, ; + Width = 24 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'lblCaption' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "", ; + FontBold = .T., ; + FontName = "Arial", ; + Height = 29, ; + Left = 38, ; + MousePointer = 15, ; + Name = "lblCaption", ; + Top = 2, ; + Width = 156, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'linBorder' AS line WITH ; + Anchor = 14, ; + Height = 0, ; + Left = 0, ; + MousePointer = 15, ; + Name = "linBorder", ; + Top = 31, ; + Width = 198 + *< END OBJECT: BaseClass="line" /> + + PROCEDURE changebackground && Change button's background image. + Lparameters llGotFocus + #Define lnFocused 8 + #Define lnNotFocused 16 + #Define lnSelected 32 + #Define lnNotSelected 64 + Local lnState, lcImage + With This.Parent.Parent + lnState = (Iif(llGotFocus,lnFocused,lnNotFocused) + ; + Iif(.SelectedButton==This.TabIndex,lnSelected,lnNotSelected)) + Do Case + Case lnState = (lnFocused + lnSelected) + lcImage = .ImgFocusedSelected + Case lnState = (lnFocused + lnNotSelected) + lcImage = .ImgFocusedNotSelected + Case lnState = (lnNotFocused + lnSelected) + lcImage = .ImgNotFocusedSelected + Case lnState = (lnNotFocused + lnNotSelected) + lcImage = .ImgNotFocusedNotSelected + Otherwise + lcImage = "" + ENDCASE + + Endwith + This.Picture = lcImage + ENDPROC + + PROCEDURE changeselectedbutton && Change selected button. + This.Parent.Parent.SelectedButton = This.TabIndex + ENDPROC + + PROCEDURE Click + THIS.ChangeSelectedButton() + + this.do_arata_formular() + ENDPROC + + PROCEDURE do_arata_formular + IF !oprinc.pagefr1.page3.ct_part_nr_data1.llock + LOCAL lnRaspuns + oprinc.pagefr1.page3.ct_part_nr_data1.llock = .T. + + lnRaspuns = AMESSAGEBOX('Doriti sa salvati modificarile facute?',4+32,'Atentie') + oprinc.pagefr1.page3.ct_part_nr_data1.REFRESH() + IF lnRaspuns = 7 + RETURN + ELSE + + IF pnGNnumar<>0 AND UPPER(ALLTRIM(STR(pnGNnumar))) <> UPPER(ALLTRIM(goContract.numar)) + poGeneratorNumere.dezaloca_numar(13) + ENDIF + DO modifica_ctr_dg WITH goContract IN oproceduri_roacontracte.prg + + && sa nu mai faca de fiecare data do_cauta (sa aduca toate contactele de pe server) + Select cContracte + Locate For id_ctr = goContract.id_ctr + If Found() + Gather Name goContract Memo + Endif + ENDIF + ENDIF + + IF TYPE('podg_dg.but_termin1') <> 'U' + podg_dg.but_termin1.CLICK() + ENDIF + IF TYPE('podg_ob.but_termin1') <> 'U' + podg_ob.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tf.but_termin1') <> 'U' + podg_tf.but_termin1.CLICK() + ENDIF + IF TYPE('podg_tl.but_termin1') <> 'U' + podg_tl.but_termin1.CLICK() + ENDIF + IF TYPE('podg_obs.but_termin1') <> 'U' + podg_obs.but_termin1.CLICK() + ENDIF + IF TYPE('podg_link.but_termin1') <> 'U' + podg_link.but_termin1.CLICK() + ENDIF + IF TYPE('podg_fact.but_termin1') <> 'U' + podg_fact.but_termin1.CLICK() + ENDIF + + IF !EMPTY(goContract.id_ctr) + DO CASE + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'DATE GENERALE' + THIS.do_date_generale() + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'OBIECTUL SI VALOAREA CONTRACTULUI' + THIS.do_obiectul() + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'TERMENE DE FACTURARE SI ACHITARE' + THIS.do_termene_facturare() + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'TERMENE DE LIVRARE/RECEPTIE SI GARANTII' + this.do_termene_livrare() + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'CLAUZE SPECIALE SI OBSERVATII' + THIS.DO_Observatii() + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'DOCUMENTE ATASATE' + THIS.DO_Linkuri() + CASE ALLTRIM(UPPER(THIS.lblCaption.CAPTION)) = 'FACTURARE' + THIS.DO_Facturare() + OTHERWISE + && AMESSAGEBOX('Altceva') + ENDCASE + ENDIF + + + ENDPROC + + PROCEDURE do_date_generale + DO FORM 'frm_dg_date_generale' NAME podg_dg + + + ENDPROC + + PROCEDURE do_facturare + PRIVATE poNote + STORE '' TO poNote + + LOCAL lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal + lcSchema1 = [] + lcSelect1 = [select denumire, id_nota from vcrm_note_vanzari nv] + lcOrder1 = [denumire] + lcgroup = [] + lcFiltru1 = [] + lcFiltruOriginal = [] + llModParam = .T. + llAfiseaza = .F. + + gencursor('poNote','crsNote', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poNote.ca_baza1.afisare() + + SELECT crsNote + + DO FORM 'frm_dg_fact' NAME podg_fact + + + + ENDPROC + + PROCEDURE do_linkuri + DO FORM 'frm_viz_atasamente' NAME podg_link + ENDPROC + + PROCEDURE do_obiectul + DO FORM 'frm_dg_obiectul' NAME podg_ob + ENDPROC + + PROCEDURE do_observatii + DO FORM 'frm_dg_observatii' NAME podg_obs + ENDPROC + + PROCEDURE do_termene_facturare + DO FORM 'frm_dg_tf' NAME podg_tf + ENDPROC + + PROCEDURE do_termene_livrare + DO FORM 'frm_dg_tl' NAME podg_tl + ENDPROC + + PROCEDURE Init + Lparameters lcCaption, lcPicture + Local lnBorderColor + With This + lnBorderColor = .Parent.Parent.rgbBorder + .Anchor = 0 + .BorderColor = lnBorderColor + .Left = 1 + .Top = ((.TabIndex*(.Height))-.Height) + .Anchor = 10 + + .lblCaption.Caption = lcCaption + .imgPicture.Picture = lcPicture + + .linBorder.BorderColor = lnBorderColor + + .ChangeBackground(.F.) + + .Visible = .T. + Endwith + ENDPROC + + PROCEDURE MouseEnter + Lparameters nButton, nShift, nXCoord, nYCoord + This.ChangeBackground(.T.) + ENDPROC + + PROCEDURE MouseLeave + Lparameters nButton, nShift, nXCoord, nYCoord + This.ChangeBackground(.F.) + ENDPROC + + PROCEDURE imgPicture.Click + This.Parent.ChangeSelectedButton() + + this.Parent.do_arata_formular() + + + + ENDPROC + + PROCEDURE lblCaption.Click + This.Parent.ChangeSelectedButton() + + this.Parent.do_arata_formular() + ENDPROC + +ENDDEFINE + +DEFINE CLASS splitter2 AS shape && Up-Down Splitter class. Support ActiveX controls. Author: gerald.santerre@siteintranet.qc.ca + *< CLASSDATA: Baseclass="shape" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: hidecontrols && internal use + *m: readme + *m: showcontrols && internal use + *m: split && This method is called at the end of the split operation. + *p: rangemax && The splitter can be dragged to the bottom up to this value. Pixels from the top of the parent. Value < 1 is percent of parent height. + *p: rangemin && The splitter can be dragged to the top down to this value. Value < 1 is percent of parent height. + *a: hiddencontrols[1,1] && Array of controls + * + + HIDDEN hiddencontrols + PROTECTED Init,MouseDown + * + Height = 4 + MousePointer = 7 + Name = "splitter2" + rangemax = 0.8 + rangemin = 0.2 + SpecialEffect = 0 + Width = 100 + * + + PROCEDURE Destroy + * decrement instance counter, if 0 release object (this.release Dlls) + + If type("_screen.___SplitterApi")="O" AND !ISNULL(_screen.___SplitterApi) + _screen.___SplitterApi.nInstances = _screen.___SplitterApi.nInstances - 1 + If _screen.___SplitterApi.nInstances <= 0 + _screen.___SplitterApi.nInstances = .Null. + _screen.RemoveObject("___SplitterApi") + Endif + Endif + + + ENDPROC + + HIDDEN PROCEDURE hidecontrols && internal use + * hide all controls include ActiveX with property visible inside container tObject + * without this splitter and form + + LPARAMETERS tObject,nIndex + * tObject is root object, if not passed, thisform is used + IF EMPTY(nIndex) + nIndex=2 + ENDIF + + LOCAL lcObjectBaseClass, lObject, lTempObject + * build collection hidden object for reverse setting in showcontrols + * set valid object + IF VARTYPE(tObject)="O" + lObject= tObject + ELSE + lObject= THISFORM + ENDIF + + * ignore this splitter + IF lObject = THIS + RETURN nIndex + ENDIF + + * unify + lcObjectBaseClass = LOWER(lObject.BASECLASS)+" " && " " for unique (page # pageframe) + + * do not hide form window + IF lcObjectBaseClass # "form " AND PEMSTATUS(lObject,"visible",5) + IF lObject.VISIBLE + DIMENSION this.HiddenControls[nIndex] + this.hiddencontrols[nIndex]=lObject + lObject.VISIBLE = .F. + nIndex=nIndex+1 + ENDIF + ENDIF + + * recurse for all children + DO CASE + CASE INLIST(lcObjectBaseClass,"pageframe ") + FOR EACH lTempObject IN lObject.PAGES + nIndex=THIS.hidecontrols(lTempObject,nIndex) + ENDFOR + CASE INLIST(lcObjectBaseClass,"form ","container ","page ") + FOR EACH lTempObject IN lObject.CONTROLS + nIndex=THIS.hidecontrols(lTempObject,nIndex) + ENDFOR + CASE INLIST(lcObjectBaseClass,"commandgroup ","optiongroup ") + FOR EACH lTempObject IN lObject.BUTTONS + nIndex=THIS.hidecontrols(lTempObject,nIndex) + ENDFOR + ENDCASE + + RETURN nIndex+1 + ENDPROC + + PROTECTED PROCEDURE Init + * API FUNCTIONS - declare only one for all splitter with this class + + IF !VARTYPE(_SCREEN.___SplitterApi)="O" + IF AT(UPPER((this.ClassLibrary)),UPPER(SET("Classlib")))=0 + SET CLASSLIB TO (this.ClassLibrary) ADDITIVE + ENDIF + _SCREEN.AddObject("___SplitterApi","SplitterAPI") + ELSE + _SCREEN.___SplitterApi.nInstances = _SCREEN.___SplitterApi.nInstances + 1 + ENDIF + RETURN VARTYPE(_SCREEN.___SplitterApi)="O" + + ENDPROC + + PROTECTED PROCEDURE MouseDown + Lparameters nButton, nShift, nXCoord, nYCoord + Local lcWindowName,lnScaleMode,lnMinRow,lnMaxRow,lnMRow1,lnMRow2 + Local lnRows,lnTop,lnOldTop,lnMin,oldMRow2 + Local llLockScreen,lnMousePointer + Local lhDC,lhMemDC,lhMemBmp,lHWnd,lnBmpHeight,nLeftOffset,nTopOffset,oContainer,xHeight + Local lcOldFormName,lhMemSplit + + If nButton#1 + Return + Endif + + lcOldFormName = Thisform.Name + Thisform.Name = Sys(2015) + + lcWindowName=Thisform.Name + lnScaleMode=Thisform.ScaleMode + Thisform.ScaleMode=3 && pixels + + oContainer=This.Parent + nLeftOffset=Objtoclient(This,2)-This.Left + nTopOffset=Objtoclient(This,1)-This.Top + + lnMRow1=Mrow(lcWindowName,3) + If Type("lnMRow1")#"N" Or lnMRow1<=0 + Thisform.ScaleMode=lnScaleMode + Thisform.Name = lcOldFormName + Return + Endif + + lnMRow1=lnMRow1-nTopOffset + If lnMRow1 <> This.Top+1 + lnMRow1 = This.Top+1 + Mouse At lnMRow1+nTopOffset, Mcol(lcWindowName,3) Pixels Window (lcWindowName) + Endif + + * set some vars + llLockScreen=Thisform.LockScreen + lnMousePointer=Thisform.MousePointer + Thisform.MousePointer= 7 + lnTop=This.Top + + * check two parent level for Height- suppose that parent form always present + If Pemstatus(oContainer,"Height",5) + xHeight = oContainer.Height + Else + If Pemstatus(oContainer.Parent,"PageHeight",5) + xHeight = oContainer.Parent.PageHeight + Else + * if error that oContainer.Height and oContainer.parent.width not exist, something wrong + xHeight = oContainer.Parent.Height + Endif + Endif + + * RangeMin (RangeMax) < 1 + * RangeMin (RangeMax) are used as coeficient (%/100) + * RangeMin (RangeMax) > 1 + * RangeMin (RangeMax) are used as absolute offset in pixels + * RangeMin (RangeMax) =0 + * RangeMin (RangeMax) are ignored - no restriction + Do Case + Case This.RangeMin <= 0 + lnMinRow=This.Height*2 + Case This.RangeMin > 1 + lnMinRow=Max(This.Height*2,Int(This.RangeMin)) + Case This.RangeMin < 1 + lnMinRow=Max(This.Height*2,Int(This.RangeMin*xHeight)) + Endcase + + Do Case + Case This.RangeMax <= 0 + lnMaxRow=xHeight-(This.Height*3) + Case This.RangeMax > 1 + lnMaxRow=Min(xHeight-(This.Height*3),This.RangeMax) + Case This.RangeMax < 1 + lnMaxRow=Min(xHeight-(This.Height*3),This.RangeMax*xHeight) + Endcase + + If lnMinRow>lnMaxRow + * nothing to move!!! + Thisform.ScaleMode=lnScaleMode + Thisform.Name = lcOldFormName + Return + Endif + + lnMRow2=lnMRow1 + oldMRow2=lnMRow2 + + #Define SRCCOPY 13369376 + + * API CALLS + If Thisform.ShowWindow= 2 + * workaround, when showwindow=2 the handle is not the right one... + * worst if you have a toolbar! + *#define GW_HWNDFIRST 0 + #Define GW_HWNDLAST 1 + *#define GW_HWNDNEXT 2 + *#define GW_HWNDPREV 3 + *#define GW_OWNER 4 + #Define GW_CHILD 5 + + lHWnd=Thisform.HWnd + lHWnd=GS_SplitGetWindow(lHWnd,GW_CHILD) + lHWnd=GS_SplitGetWindow(lHWnd,GW_HWNDLAST) + Else + lHWnd=Thisform.HWnd + Endif + + lhDC = GS_SplitGetDC(lHWnd) + lhMemDC = GS_SplitCreateCompatibleDC(lhDC) + * Take a copy of the portion of the form that can be dragged over + lnBmpHeight=This.Height + lhMemBmp = GS_SplitCreateCompatibleBitmap(lhDC, This.Width, lnBmpHeight) + lhMemSplit = GS_SplitCreateCompatibleBitmap(lhDC, This.Width, lnBmpHeight) + = GS_SplitSelectObject(lhMemDC , lhMemBmp) + = GS_SplitBitBlt(lhMemDC, 0, 0, This.Width, lnBmpHeight, ; + lhDC, This.Left+nLeftOffset, lnMRow1-1+nTopOffset, SRCCOPY) + = GS_SplitSelectObject(lhMemDC , lhMemSplit) + = GS_SplitBitBlt(lhMemDC, 0, 0, This.Width, lnBmpHeight, ; + lhDC, This.Left+nLeftOffset, lnMRow1-1+nTopOffset, SRCCOPY) + + * Stop fox drawing in the screen + Thisform.LockScreen=.T. + This.hidecontrols(oContainer) + + * update the display while dragging + Do While Mdown() + DoEvents + lnMRow2=Mrow(lcWindowName,3)-nTopOffset + If Type("lnMRow2")#"N" Or lnMRow2=0 + Loop + Endif + If lnMRow2<=lnMinRow + *force the mouse to stay at this position + Mouse At lnMinRow+nTopOffset, Mcol(lcWindowName,3) Pixels Window (lcWindowName) + lnMRow2=lnMinRow+1 + Endif + If lnMRow2>=(lnMaxRow-This.Height) + *force the mouse to stay at this position + Mouse At lnMaxRow-This.Height+nTopOffset, Mcol(lcWindowName,3) Pixels Window (lcWindowName) + lnMRow2=lnMaxRow-This.Height + Endif + lnMRow2=Min(Max(lnMRow2,lnMinRow),lnMaxRow) + If oldMRow2=lnMRow2 + Loop + Else + * on mouse move, redraw a part of the screen from the memory copy + * and draw "this" image at the mouse position + * bitblt (dest...source...) + With This + .Top=lnTop+(lnMRow2-lnMRow1) + *restore + = GS_SplitSelectObject(lhMemDC , lhMemBmp) + = GS_SplitBitBlt(lhDC, .Left+nLeftOffset, oldMRow2-1+nTopOffset, .Width, .Height+3,; + lhMemDC, 0, 0, SRCCOPY) + *take a new copy + = GS_SplitBitBlt(lhMemDC, 0, 0, This.Width, lnBmpHeight, ; + lhDC, This.Left+nLeftOffset, lnMRow2-1+nTopOffset, SRCCOPY) + *draw + = GS_SplitSelectObject(lhMemDC , lhMemSplit) + = GS_SplitBitBlt(lhDC, .Left+nLeftOffset, .Top+nTopOffset, .Width, .Height+1,; + lhMemDC, 0, 0, SRCCOPY) + + Endwith + oldMRow2=lnMRow2 + Endif + Enddo + + This.showcontrols() + Thisform.Name = lcOldFormName + + If lnMRow2<0 + lnMRow2=lnMRow1 + Endif + + lnRows=lnMRow2-lnMRow1 + This.Top=lnTop+lnRows + Thisform.ScaleMode=lnScaleMode + Thisform.MousePointer=lnMousePointer + + This.Split() + + Thisform.LockScreen=llLockScreen + + * free the memory + = GS_SplitReleaseDC(lHWnd, lhDC) + = GS_SplitDeleteObject(lhMemBmp) + = GS_SplitDeleteObject(lhMemSplit) + = GS_SplitDeleteDC(lhMemDC) + ENDPROC + + HIDDEN PROCEDURE readme + *!* Splitter class + *!* May 2004 + + *!* Active-X controls always drive me nuts because they use there own windows handle. + *!* You cannot put a fox native control over them to resize the control visually. + *!* You have to use some tricks like changing the control to + *!* another one for this operation and rechange it back after. + *!* ( See the class browser code ) + + *!* What I want is a splitter that can handle this in a visual way + *!* while keeping the form (look) unchanged until the end of the split. + + *!* After many try and fail, I have finally found a way to do it + *!* by the use of API calls. IT WORK!!! + *!* Days of work to end with only a couple of code lines :) + + *!* I am not an API guru, so if you find a way to improve this class + *!* feel free to let me know how :) + + *!* Tested with VFP 8-7 on Windows 2000 + *!* (no animal other than the usual fox was used in the tests) + *!* Disclaimer: (...) <- put the usual disclaimer here! + + *!* Gérald Santerre + *!* gerald.santerre@siteintranet.qc.ca + + + *!* USAGE: + + *!* Drop this class on a form or a container between the objects that share the container. + + *!* New release, complete redesing. + *!* If you already use a previous version of the class, read this carefully. + *!* I have removed a couple of properties and change the way the classes work. + *!* For this reason I have also renamed the classlib to avoid conflicts + *!* with previous version of the class. The new design is cleaner and the control + *!* don't touch anything in the form (except hiding controls during split). + + *!* A large part of the new design is from suggestions received + *!* from "Jaromír Stacha" from Czech Republic. + *!* Thank you Jaromir :). + + *!* The new splitter classes don't move or resize controls anymore. + *!* The splitter.split() method is always called after a split operation + *!* and you have to resize/reposition your controls from this (fake)event. + *!* If you don't put code in the split() method, the form.resize() event + *!* of the form will be called. See the resize() and splitter1.split() + *!* method of the demo form for a working sample. + + *!* You have only 2 properties to set in the class, + *!* RangeMin and RangeMax. + *!* If you set the value of this properties between 0 and 1, + *!* the value is handled as a % of the splitter's parent container width ot height. + *!* For example, if you enter 0.2 as value for RangeMin, + *!* you will be able to move the splitter down to 20% of the width/height + *!* of the splitter's parent container. + *!* Values greater than 1 will be handle as absolute values. + *!* Don't forget to reset absolute values when the splitter's parent container is resized. + + *!* The splitter API is now self contained and you dont have + *!* to worry about releasing the references to API functions. + *!* The splitter now also handle correctly multiple instances + *!* of the same form (or forms with the same name). + *!* The splitter automatically hide every controls that are in + *!* the same parent container (recursive) to avoid side effects + *!* (like mouse cursor beam over text boxes). + + *!* Contact: gerald.santerre@siteintranet.qc.ca + + ENDPROC + + HIDDEN PROCEDURE showcontrols && internal use + * show temporary hidden objects and clear list (collection) + LPARAMETERS toRoot + + IF ALEN(THIS.hiddencontrols,1)<2 + RETURN + ENDIF + FOR i=2 TO ALEN(THIS.hiddencontrols,1) + IF TYPE("THIS.hiddencontrols[i]")="O" + THIS.hiddencontrols[i].Visible=.T. + ENDIF + ENDFOR + + DIMENSION THIS.hiddencontrols[1] + + ENDPROC + + PROCEDURE split && This method is called at the end of the split operation. + *default behaviour + THISFORM.RESIZE() + ENDPROC + +ENDDEFINE + +DEFINE CLASS splitterapi AS custom && Splitter API declaration class + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *p: ninstances + * + + * + Height = 15 + Name = "splitterapi" + ninstances = 1 + Width = 27 + * + + PROCEDURE Destroy + Clear Dlls ; + "GS_SplitGetDC",; + "GS_SplitCreateCompatibleDC",; + "GS_SplitCreateCompatibleBitmap",; + "GS_SplitSelectObject",; + "GS_SplitReleaseDC",; + "GS_SplitDeleteDC",; + "GS_SplitBitBlt",; + "GS_SplitGetWindow",; + "GS_SplitDeleteObject" + ENDPROC + + PROCEDURE Init + Declare Long GetDC in Win32API as GS_SplitGetDC Long hwnd + Declare Long CreateCompatibleDC in Win32API as GS_SplitCreateCompatibleDC Long hdc + Declare Long CreateCompatibleBitmap in Win32API as GS_SplitCreateCompatibleBitmap Long hdc, Long nWidth, Long nHeight + Declare Long SelectObject in Win32API as GS_SplitSelectObject Long hdc, Long hObject + Declare Long ReleaseDC in Win32API as GS_SplitReleaseDC Long hwnd, Long hdc + Declare Long DeleteDC in Win32API as GS_SplitDeleteDC Long hdc + Declare Long BitBlt in Win32API as GS_SplitBitBlt ; + Long hDestDC, Long x, Long y, Long nWidth, Long nHeight, ; + Long hSrcDC, Long xSrc, Long ySrc, Long dwRop + Declare INTEGER DeleteObject in Win32API as GS_SplitDeleteObject Long hObject + DECLARE INTEGER GetWindow IN user32 as GS_SplitGetWindow ; + INTEGER hwnd,; + INTEGER wFlag + + ENDPROC + +ENDDEFINE diff --git a/Clase/registry.h b/Clase/registry.h new file mode 100644 index 0000000..28df8d9 --- /dev/null +++ b/Clase/registry.h @@ -0,0 +1,79 @@ +*- Registry.h +*- Copyright (c) 1997 Microsoft Corporation + +* Operating System codes +#DEFINE OS_W32S 1 +#DEFINE OS_NT 2 +#DEFINE OS_WIN95 3 +#DEFINE OS_MAC 4 +#DEFINE OS_DOS 5 +#DEFINE OS_UNIX 6 + +* DLL Paths for various operating systems +#DEFINE DLLPATH_NT "\SYSTEM32\" +#DEFINE DLLPATH_WIN95 "\SYSTEM\" + +* DLL files used to read INI files +#DEFINE DLL_KERNEL_NT "KERNEL32.DLL" +#DEFINE DLL_KERNEL_WIN95 "KERNEL32.DLL" + +* DLL files used to read registry +#DEFINE DLL_ADVAPI_NT "ADVAPI32.DLL" +#DEFINE DLL_ADVAPI_WIN95 "ADVAPI32.DLL" + +* DLL files used to read ODBC info +#DEFINE DLL_ODBC_NT "ODBC32.DLL" +#DEFINE DLL_ODBC_WIN95 "ODBC32.DLL" + +* Registry roots +#DEFINE HKEY_CLASSES_ROOT -2147483648 && BITSET(0,31) +#DEFINE HKEY_CURRENT_USER -2147483647 && BITSET(0,31)+1 +#DEFINE HKEY_LOCAL_MACHINE -2147483646 && BITSET(0,31)+2 +#DEFINE HKEY_USERS -2147483645 && BITSET(0,31)+3 + +* Misc +#DEFINE APP_PATH_KEY "\Shell\Open\Command" +#DEFINE OLE_PATH_KEY "\Protocol\StdFileEditing\Server" +#DEFINE VFP_OPTIONS_KEY1 "Software\Microsoft\VisualFoxPro\" +#DEFINE VFP_OPTIONS_KEY2 "\Options" +#DEFINE CURVER_KEY "\CurVer" +#DEFINE ODBC_DATA_KEY "Software\ODBC\ODBC.INI\" +#DEFINE ODBC_DRVRS_KEY "Software\ODBC\ODBCINST.INI\" +#DEFINE SQL_FETCH_NEXT 1 +#DEFINE SQL_NO_DATA 100 + +* Error Codes +#DEFINE ERROR_SUCCESS 0 && OK +#DEFINE ERROR_EOF 259 && no more entries in key + +* Note these next error codes are specific to this Class, not DLL +#DEFINE ERROR_NOAPIFILE -101 && DLL file to check registry not found +#DEFINE ERROR_KEYNOREG -102 && key not registered +#DEFINE ERROR_BADPARM -103 && bad parameter passed +#DEFINE ERROR_NOENTRY -104 && entry not found +#DEFINE ERROR_BADKEY -105 && bad key passed +#DEFINE ERROR_NONSTR_DATA -106 && data type for value is not a data string +#DEFINE ERROR_BADPLAT -107 && platform not supported +#DEFINE ERROR_NOINIFILE -108 && DLL file to check INI not found +#DEFINE ERROR_NOINIENTRY -109 && No entry in INI file +#DEFINE ERROR_FAILINI -110 && failed to get INI entry +#DEFINE ERROR_NOPLAT -111 && call not supported on this platform +#DEFINE ERROR_NOODBCFILE -112 && DLL file to check ODBC not found +#DEFINE ERROR_ODBCFAIL -113 && failed to get ODBC environment + +* Data types for keys +#DEFINE REG_SZ 1 && Data string +#DEFINE REG_EXPAND_SZ 2 && Unicode string +#DEFINE REG_BINARY 3 && Binary data in any form. +#DEFINE REG_DWORD 4 && A 32-bit number. + +* Data types labels +#DEFINE REG_BINARY_LOC "*Binary*" && Binary data in any form. +#DEFINE REG_DWORD_LOC "*Dword*" && A 32-bit number. +#DEFINE REG_UNKNOWN_LOC "*Unknown type*" && unknown type + +* FoxPro ODBC drivers +#DEFINE FOXODBC_25 "FoxPro Files (*.dbf)" +#DEFINE FOXODBC_26 "Microsoft FoxPro Driver (*.dbf)" +#DEFINE FOXODBC_30 "Microsoft Visual FoxPro Driver" + diff --git a/Clase/registry.vct b/Clase/registry.vct new file mode 100644 index 0000000000000000000000000000000000000000..d920166b653f6ddbc0e9cc3b3ad6324dc5966630 GIT binary patch literal 36531 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 P;97?26i%l?JN*4$HwXP; literal 0 HcmV?d00001 diff --git a/Clase/registry.vcx b/Clase/registry.vcx new file mode 100644 index 0000000000000000000000000000000000000000..450f85726c42863978c0e6b44c2400cff33a72d8 GIT binary patch literal 2231 zcmeH|O=}ZT6o!vAnpTY#1nWkeA{Eq%lQfx35W(r>mL|@fN#-L>3n~#5Dis%X;id~0 z?nLcUP~3|@K>7m|(O=-Q8(p~6jVs?tPMpp#&BxvY=bq_(?m73o_hzPQHk&(2M3b2Z z7~?i^kf>o9{*vQL5c2?r$@mfq>{>GrwQ9(xFdRv6zb1v}8?r%UpG@JVWq4jMN1j2< zB=Wo5a!gFi*%ZELc!F!lxfJd!)@?(Iu&TU}!W)JwY(K;#FQ;+WX$aS^36Eqxo%_P{ z1r9)#Qn(cUvQzCUl$8{Y{!FLZ>+f2Z$4|hqx(tM*k(O_XLI`19mGNvMS9rp0i7I-R zH7weXqlgSIc|X1Y-Ww3%a(=np;XVC_aFn!KBJ!F+T+{nnvlp)G~jIAta*IVtr zGF{7}GaG&#KEqv}=eT{A=u-IVv;Bdp8}QEY{tVGiK80@_M^-k^2~nx|Q)Y z*mTzNtV~l2?@-`3{5yPyi+$m^dy!~%Cfe`~<^%Yt!_nLeUc1F{WMvzi5S5BQ{o1oh zoJ4;mlxf=9s-mlva-pcIrRRL&a8!gukR@7sOOX>%M| Q*)k{e3nk (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS capplication AS wzapplication OF "appwiz.vcx" && Application class. + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + clastcaption = Microsoft Visual FoxPro + clasticon = + Name = "capplication" + nformcount = 0 + * + + PROCEDURE doform + LPARAMETERS tcFileName,tcClass,tlNoMultipleInstances,tlNoShow + LOCAL lcFileName,lcClass,oForm,oForm2,lcName,lnCount,lnTop,lnLeft + LOCAL lcFormName,lnFormCount + + _screen.visible=.t. + + lcFileName=UPPER(ALLTRIM(tcFileName)) + IF EMPTY(lcFileName) + RETURN .F. + ENDIF + lcClass=IIF(TYPE("tcClass")=="C",LOWER(ALLTRIM(tcClass)),"") + lcFileName=LOWER(FULLPATH(lcFileName)) + IF NOT "."$lcFileName + lcFileName=lcFileName+IIF(EMPTY(lcClass),".scx",".vcx") + ENDIF + IF NOT FILE(lcFileName) + this.FileNotFoundMsgBox(lcFileName) + RETURN .F. + ENDIF + lcFormName=IIF(EMPTY(lcClass),lcFileName,lcFileName+","+lcClass) + IF tlNoMultipleInstances + FOR lnCount = 1 TO this.nFormCount + IF this.aFormNames[lnCount]==lcFormName AND ; + TYPE("this.aForms[lnCount]")=="O" AND ; + NOT ISNULL(this.aForms[lnCount]) + this.aForms[lnCount].Show + RETURN .F. + ENDIF + ENDFOR + ENDIF + this.RefreshFormsCollection + this.nFormCount=this.nFormCount+1 + DIMENSION this.aForms[this.nFormCount],this.aFormNames[this.nFormCount] + this.aFormNames[this.nFormCount]=lcFormName + IF NOT EMPTY(lcClass) + SET CLASSLIB TO (lcFileName) ADDITIVE + this.aForms[this.nFormCount]=CREATEOBJECT(lcClass) + IF NOT tlNoShow AND TYPE("this.aForms[this.nFormCount]")=="O" AND ; + NOT ISNULL(this.aForms[this.nFormCount]) + this.aForms[this.nFormCount].Show + ENDIF + ELSE + DO FORM (lcFileName) NAME this.aForms[this.nFormCount] LINKED NOSHOW + ENDIF + lnFormCount=this.nFormCount + this.RefreshFormsCollection + IF this.lCascadeForms AND this.nFormCount>=lnFormCount + oForm=this.aForms[this.nFormCount] + lnTop=oForm.Top + lnLeft=oForm.Left + lcName=oForm.Name + IF WEXIST(lcName) AND oForm.WindowState#2 + FOR lnCount = 1 TO (this.nFormCount-1) + oForm2=this.aForms[lnCount] + IF TYPE("oForm2")#"O" OR ISNULL(oForm2) + LOOP + ENDIF + IF lcName==oForm2.Name AND WLROW(lcName)=WLROW(oForm2.Name) AND ; + WLCOL(lcName)=WLCOL(oForm2.Name) + lnTop=lnTop+this.nPixelOffset + lnLeft=lnLeft+this.nPixelOffset + ENDIF + ENDFOR + IF oForm.Top#lnTop + oForm.Top=lnTop + ENDIF + IF oForm.Left#lnLeft + oForm.Left=lnLeft + ENDIF + ENDIF + ENDIF + + *!* modificat 14.12.2004 + *!* liana + IF !(tlNoShow OR ('LOGIN'$UPPER(lcFileName) and glParametri)) + this.aForms[this.nFormCount].Show + ENDIF + + ENDPROC + +ENDDEFINE + +DEFINE CLASS pg_meniu_princ AS pg_meniu OF "ofundal.vcx" + *< CLASSDATA: Baseclass="pageframe" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Page1.Pict_meniu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page1.Cw2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page1.Cw3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page1.Pict_liniuta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page2.Pict_meniu1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page2.Pict_liniuta1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page2.Cw2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Page2.Cw3" UniqueID="" Timestamp="" /> + + * + ActivePage = 1 + ErasePage = .T. + Height = 422 + Name = "pg_meniu_princ" + PageCount = 2 + Width = 401 + Page1.Caption = "Leasing" + Page1.Name = "Page1" + Page1.PageOrder = 1 + Page2.Caption = "Furnizori" + Page2.Name = "Page2" + Page2.PageOrder = 2 + * + + ADD OBJECT 'Page1.Cw2' AS cw WITH ; + Height = 20, ; + Left = 11, ; + Name = "Cw2", ; + nid_cw = 1, ; + ntip = 1, ; + TabIndex = 1, ; + Top = 37, ; + Width = 113, ; + LABEL_ITEM1.Caption = "Contracte", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Page1.Cw3' AS cw WITH ; + Height = 20, ; + Left = 11, ; + Name = "Cw3", ; + nid_cw = 1, ; + ntip = 1, ; + TabIndex = 1, ; + Top = 75, ; + Width = 113, ; + LABEL_ITEM1.Caption = "Rapoarte", ; + LABEL_ITEM1.Name = "LABEL_ITEM1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Page1.Pict_liniuta1' AS pict_liniuta WITH ; + Left = 7, ; + Name = "Pict_liniuta1", ; + Picture = ..\..\comun\grafice\f3.jpg, ; + Top = 63 + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="image" /> + + ADD OBJECT 'Page1.Pict_meniu1' AS pict_meniu WITH ; + Left = 2, ; + Name = "Pict_meniu1", ; + Picture = ..\grafice\f2.jpg, ; + Top = 8 + *< END OBJECT: ClassLib="ofundal.vcx" BaseClass="image" /> + + ADD OBJECT 'Page2.Cw2' AS cw WITH ; + Height = 20, ; + Left = 11, ; + Name = "Cw2", ; + nid_cw = 1, ; + ntip = 1, ; + TabIndex = 1, ; + Top = 37, ; + Width = 113, ; + Label_item1.Caption = "Contracte", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Page2.Cw3' AS cw WITH ; + Height = 20, ; + Left = 11, ; + Name = "Cw3", ; + nid_cw = 1, ; + ntip = 1, ; + TabIndex = 1, ; + Top = 75, ; + Width = 113, ; + Label_item1.Caption = "Rapoarte", ; + Label_item1.Name = "Label_item1" + *< END OBJECT: ClassLib="..\comun\clase\ofundal.vcx" BaseClass="container" /> + + ADD OBJECT 'Page2.Pict_liniuta1' AS pict_liniuta WITH ; + Left = 7, ; + Name = "Pict_liniuta1", ; + Picture = ..\grafice\f3.jpg, ; + Top = 63 + *< END OBJECT: ClassLib="ofundal.vcx" BaseClass="image" /> + + ADD OBJECT 'Page2.Pict_meniu1' AS pict_meniu WITH ; + Left = 2, ; + Name = "Pict_meniu1", ; + Picture = ..\grafice\f2.jpg, ; + Top = 8 + *< END OBJECT: ClassLib="ofundal.vcx" BaseClass="image" /> + + PROCEDURE Page1.Cw3.Init + + + ENDPROC + + PROCEDURE Page2.Cw3.Init + + + ENDPROC + +ENDDEFINE diff --git a/Clase/solution.vc2 b/Clase/solution.vc2 new file mode 100644 index 0000000..1df77bb --- /dev/null +++ b/Clase/solution.vc2 @@ -0,0 +1,65 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="solution.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS cmdclose AS commandbutton && Close button + *< CLASSDATA: Baseclass="commandbutton" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + Cancel = .T. + Caption = "Close" + FontBold = .F. + FontName = "MS Sans Serif" + FontSize = 8 + Height = 23 + Name = "cmdclose" + Width = 72 + * + + PROCEDURE Click + IF TYPE("THISFORM.Parent") = "O" + THISFORMSET.Release + ELSE + THISFORM.Release + ENDIF + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lnChoice + #DEFINE CR CHR(13) + DO CASE + CASE nError = 1545 && Uncommitted changes + *------------------------------------ + #DEFINE MSG1_LOC "Do you want to save your changes?" + #DEFINE MSG2_LOC "Uncommitted Changes" + lnChoice = MESSAGEBOX(MSG1_LOC, 4+48+0, MSG2_LOC) + DO CASE + CASE lnChoice = 6 && yes + =TABLEUPDATE(.T., .T.) + CASE lnChoice = 7 && no + =TABLEREVERT(.T.) + ENDCASE + OTHERWISE && Unanticipated error + *-------------------------------------- + #DEFINE NUM_LOC "Error Number: " + #DEFINE PROG_LOC "Program: " + #DEFINE CAP_LOC "ERROR" + lcMsg = NUM_LOC + ALLTRIM(STR(nError)) + CR + CR + ; + MESSAGE()+ CR + CR + PROG_LOC + PROGRAM(1) + lnChoice = MESSAGEBOX(lcMsg, 2+48+512, CAP_LOC) + DO CASE + CASE lnChoice = 3 &&Abort + CANCEL + CASE lnChoice = 4 &&Retry + RETRY + CASE lnChoice = 5 &&Ignore + RETURN + ENDCASE + ENDCASE + + ENDPROC + +ENDDEFINE diff --git a/Clase/utility.vc2 b/Clase/utility.vc2 new file mode 100644 index 0000000..70dfae0 --- /dev/null +++ b/Clase/utility.vc2 @@ -0,0 +1,83 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="utility.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS menulib AS container + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: deactivatemenu + *m: showmenu + * + + * + BackColor = 0,0,255 + Height = 15 + Name = "menulib" + Visible = .F. + Width = 50 + * + + PROCEDURE deactivatemenu + DEACTIVATE MENU _popShortcutMenu + + ENDPROC + + PROCEDURE Destroy + this.DeactivateMenu + + ENDPROC + + PROCEDURE showmenu + LPARAMETERS taMenu,tcOnSelection + LOCAL lcOnSelection,lnMenuCount,lnCount,llDoubleArray + LOCAL lcMenuItem,lcMenuSelection + EXTERNAL ARRAY taMenu + + IF PARAMETERS()=0 OR TYPE("taMenu")#"C" + RETURN .F. + ENDIF + lnMenuCount=0 + lnMenuCount=ALEN(taMenu,1) + IF lnMenuCount=0 + RETURN .F. + ENDIF + llDoubleArray=(ALEN(taMenu,2)>0) + ACTIVATE SCREEN + DEACTIVATE POPUP _popShortcutMenu + DEFINE POPUP _popShortcutMenu ; + FROM MROW(),MCOL() ; + MARGIN ; + RELATIVE ; + SHORTCUT + FOR lnCount = 1 TO lnMenuCount + lcMenuItem=IIF(llDoubleArray,taMenu[lnCount,1],taMenu[lnCount]) + DEFINE BAR lnCount OF _popShortcutMenu PROMPT (lcMenuItem) + ENDFOR + ON SELECTION POPUP _popShortcutMenu DEACTIVATE POPUP _popShortcutMenu + ACTIVATE POPUP _popShortcutMenu + RELEASE POPUP _popShortcutMenu + IF BAR()=0 + RETURN .F. + ENDIF + IF llDoubleArray + lcMenuSelection=taMenu[BAR(),2] + IF NOT EMPTY(lcMenuSelection) AND TYPE("lcMenuSelection")=="C" + lcOnSelection=ALLTRIM(lcMenuSelection) + ENDIF + IF EMPTY(lcOnSelection) + lcOnSelection=ALLTRIM(IIF(EMPTY(tcOnSelection),"",tcOnSelection)) + ENDIF + ELSE + lcOnSelection=ALLTRIM(IIF(EMPTY(tcOnSelection),"",tcOnSelection)) + ENDIF + IF EMPTY(lcOnSelection) + RETURN .F. + ENDIF + &lcOnSelection + + ENDPROC + +ENDDEFINE diff --git a/Ferestre/ATENTIE1.sc2 b/Ferestre/ATENTIE1.sc2 new file mode 100644 index 0000000..1b4e6e9 --- /dev/null +++ b/Ferestre/ATENTIE1.sc2 @@ -0,0 +1,75 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="atentie1.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + Name = "Dataenvironment" + * + +ENDDEFINE + +DEFINE CLASS fatentie1 AS fatentie OF "..\clase\ferestrebaza.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="CMDTERMIN1" UniqueID="" Timestamp="" /> + + * + BorderStyle = 3 + DoCreate = .T. + Height = 84 + Name = "Fatentie1" + Width = 353 + WindowType = 0 + Shape1.Height = 75 + Shape1.Left = 4 + Shape1.Name = "Shape1" + Shape1.Top = 4 + Shape1.Width = 344 + IMAGE1.Height = 32 + IMAGE1.Left = 24 + IMAGE1.Name = "IMAGE1" + IMAGE1.Top = 12 + IMAGE1.Width = 32 + Label1.Left = 64 + Label1.Name = "Label1" + Label1.Top = 14 + * + + ADD OBJECT 'CMDTERMIN1' AS cmdtermin WITH ; + AutoSize = .F., ; + Caption = "\ + + ADD OBJECT 'Label2' AS label WITH ; + AutoSize = .T., ; + Caption = "Modificarile sunt ireversibile!", ; + FontSize = 12, ; + Height = 21, ; + Left = 129, ; + Name = "Label2", ; + Top = 14, ; + Width = 200 + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Deactivate + thisform.release + ENDPROC + + PROCEDURE LostFocus + thisform.release + + ENDPROC + +ENDDEFINE diff --git a/Ferestre/frm_dg_date_generale.sc2 b/Ferestre/frm_dg_date_generale.sc2 new file mode 100644 index 0000000..d525a85 --- /dev/null +++ b/Ferestre/frm_dg_date_generale.sc2 @@ -0,0 +1,65 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_date_generale.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_date_generale1 AS frm_dg_date_generale OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_date_generale1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + Shape5.Name = "Shape5" + Shape4.Name = "Shape4" + Shape3.Name = "Shape3" + cmdValuta.Name = "cmdValuta" + ck_incetat.Alignment = 0 + ck_incetat.Name = "ck_incetat" + Label10.Name = "Label10" + txtDurata.Name = "txtDurata" + Label17.Name = "Label17" + txtValuta.Name = "txtValuta" + Label2.Name = "Label2" + txtData_incetat.Name = "txtData_incetat" + Label12.Name = "Label12" + cmdTip_ctr.Name = "cmdTip_ctr" + txtTip_ctr.Name = "txtTip_ctr" + ck_inactiv.Alignment = 0 + ck_inactiv.Name = "ck_inactiv" + ck_semnat.Alignment = 0 + ck_semnat.Name = "ck_semnat" + Label1.Name = "Label1" + txtData_inceput.Name = "txtData_inceput" + Label5.Name = "Label5" + txtData_sfarsit.Name = "txtData_sfarsit" + cmdResponsabil.Name = "cmdResponsabil" + Label14.Name = "Label14" + txtResponsabil.Name = "txtResponsabil" + cmdSectie.Name = "cmdSectie" + Label20.Name = "Label20" + txtSectie.Name = "txtSectie" + Label21.Name = "Label21" + txtMotiv_incetat.Name = "txtMotiv_incetat" + * + +ENDDEFINE diff --git a/Ferestre/frm_dg_fact.sc2 b/Ferestre/frm_dg_fact.sc2 new file mode 100644 index 0000000..fb26adc --- /dev/null +++ b/Ferestre/frm_dg_fact.sc2 @@ -0,0 +1,50 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_fact.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_fact1 AS frm_dg_fact OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_fact1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + Label1.Name = "Label1" + Optiongroup1.Name = "Optiongroup1" + Optiongroup1.OPTION1.Left = 5 + Optiongroup1.OPTION1.Name = "OPTION1" + Optiongroup1.OPTION1.Top = 5 + Optiongroup1.OPTION2.Left = 5 + Optiongroup1.OPTION2.Name = "OPTION2" + Optiongroup1.OPTION2.Top = 24 + Optiongroup1.OPTION3.Left = 5 + Optiongroup1.OPTION3.Name = "OPTION3" + Optiongroup1.OPTION3.Top = 43 + Optiongroup1.OPTION4.Left = 5 + Optiongroup1.OPTION4.Name = "OPTION4" + Optiongroup1.OPTION4.Top = 62 + Check1.Alignment = 0 + Check1.Name = "Check1" + * + +ENDDEFINE diff --git a/Ferestre/frm_dg_link.sc2 b/Ferestre/frm_dg_link.sc2 new file mode 100644 index 0000000..2f19566 --- /dev/null +++ b/Ferestre/frm_dg_link.sc2 @@ -0,0 +1,47 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_link.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_link1 AS frm_dg_link OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_link1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + grid_linkuri.COLUMN1.HEADER1.Name = "HEADER1" + grid_linkuri.COLUMN1.Name = "COLUMN1" + grid_linkuri.COLUMN1.Text1.Name = "Text1" + grid_linkuri.COLUMN2.HEADER1.Name = "HEADER1" + grid_linkuri.COLUMN2.Name = "COLUMN2" + grid_linkuri.COLUMN2.Text1.Name = "Text1" + grid_linkuri.COLUMN3.HEADER1.Name = "HEADER1" + grid_linkuri.COLUMN3.Name = "COLUMN3" + grid_linkuri.COLUMN3.Text1.Name = "Text1" + grid_linkuri.Name = "grid_linkuri" + BUT_NOU1.Name = "BUT_NOU1" + BUT_STERGE1.Name = "BUT_STERGE1" + But_sterge2.Name = "But_sterge2" + * + +ENDDEFINE diff --git a/Ferestre/frm_dg_obiectul.sc2 b/Ferestre/frm_dg_obiectul.sc2 new file mode 100644 index 0000000..aca2486 --- /dev/null +++ b/Ferestre/frm_dg_obiectul.sc2 @@ -0,0 +1,94 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_obiectul.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_obiectul1 AS frm_dg_obiectul OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_obiectul1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + Label2.Name = "Label2" + grid_articole.cCant.HEADER1.Name = "HEADER1" + grid_articole.cCant.Name = "cCant" + grid_articole.cCant.Text1.Name = "Text1" + grid_articole.cCoef_Discount.HEADER1.Name = "HEADER1" + grid_articole.cCoef_Discount.Name = "cCoef_Discount" + grid_articole.cCoef_Discount.Text1.Name = "Text1" + grid_articole.cNume_art.HEADER1.Name = "HEADER1" + grid_articole.cNume_art.Name = "cNume_art" + grid_articole.cNume_art.Text1.Name = "Text1" + grid_articole.CNUME_VAL.HEADER1.Name = "HEADER1" + grid_articole.CNUME_VAL.Name = "CNUME_VAL" + grid_articole.CNUME_VAL.Text1.Name = "Text1" + grid_articole.COLUMN1.HEADER1.Name = "HEADER1" + grid_articole.COLUMN1.Name = "COLUMN1" + grid_articole.COLUMN1.Text1.Name = "Text1" + grid_articole.COLUMN11.HEADER1.Name = "HEADER1" + grid_articole.COLUMN11.Name = "COLUMN11" + grid_articole.COLUMN11.Text1.Name = "Text1" + grid_articole.cPret_unitar.HEADER1.Name = "HEADER1" + grid_articole.cPret_unitar.Name = "cPret_unitar" + grid_articole.cPret_unitar.Text1.Name = "Text1" + grid_articole.cUM.HEADER1.Name = "HEADER1" + grid_articole.cUM.Name = "cUM" + grid_articole.cUM.Text1.Name = "Text1" + grid_articole.cValcDiscount.HEADER1.Name = "HEADER1" + grid_articole.cValcDiscount.Name = "cValcDiscount" + grid_articole.cValcDiscount.Text1.Name = "Text1" + grid_articole.cValoare.HEADER1.Name = "HEADER1" + grid_articole.cValoare.Name = "cValoare" + grid_articole.cValoare.Text1.Name = "Text1" + grid_articole.cVal_discount.HEADER1.Name = "HEADER1" + grid_articole.cVal_discount.Name = "cVal_discount" + grid_articole.cVal_discount.Text1.Name = "Text1" + grid_articole.Name = "grid_articole" + txtSumaArticole.Name = "txtSumaArticole" + Label21.Name = "Label21" + Label1.Name = "Label1" + txtDiscount.Name = "txtDiscount" + BUT_NOU1.Name = "BUT_NOU1" + BUT_STERGE1.Name = "BUT_STERGE1" + txtValcdiscount.Name = "txtValcdiscount" + Label3.Name = "Label3" + txtValDiscount.Name = "txtValDiscount" + Label5.Name = "Label5" + LABEL15.Name = "LABEL15" + txtProc_tva.Name = "txtProc_tva" + LABEL16.Name = "LABEL16" + Line1.Name = "Line1" + Label4.Name = "Label4" + Label6.Name = "Label6" + txtCoef_discount.Name = "txtCoef_discount" + txtValDiscountTotal.Name = "txtValDiscountTotal" + Line2.Name = "Line2" + Label7.Name = "Label7" + Label8.Name = "Label8" + txtValftva.Name = "txtValftva" + txtValctva.Name = "txtValctva" + Label9.Name = "Label9" + Label10.Name = "Label10" + * + +ENDDEFINE diff --git a/Ferestre/frm_dg_observatii.sc2 b/Ferestre/frm_dg_observatii.sc2 new file mode 100644 index 0000000..5daae39 --- /dev/null +++ b/Ferestre/frm_dg_observatii.sc2 @@ -0,0 +1,35 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_observatii.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_observatii1 AS frm_dg_observatii OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_observatii1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + Edit1.Name = "Edit1" + * + +ENDDEFINE diff --git a/Ferestre/frm_dg_tf.sc2 b/Ferestre/frm_dg_tf.sc2 new file mode 100644 index 0000000..c54fc7d --- /dev/null +++ b/Ferestre/frm_dg_tf.sc2 @@ -0,0 +1,70 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_tf.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_tf1 AS frm_dg_tf OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_tf1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + grid_scadentar.cData_rata.HEADER1.Name = "HEADER1" + grid_scadentar.cData_rata.Name = "cData_rata" + grid_scadentar.cData_rata.Text1.Name = "Text1" + grid_scadentar.cData_scadenta.HEADER1.Name = "HEADER1" + grid_scadentar.cData_scadenta.Name = "cData_scadenta" + grid_scadentar.cData_scadenta.Text1.Name = "Text1" + grid_scadentar.cDen_rata.HEADER1.Name = "HEADER1" + grid_scadentar.cDen_rata.Name = "cDen_rata" + grid_scadentar.cDen_rata.Text1.Name = "Text1" + grid_scadentar.cNr_rata.HEADER1.Name = "HEADER1" + grid_scadentar.cNr_rata.Name = "cNr_rata" + grid_scadentar.cNr_rata.Text1.Name = "Text1" + grid_scadentar.CNUME_VAL.HEADER1.Name = "HEADER1" + grid_scadentar.CNUME_VAL.Name = "CNUME_VAL" + grid_scadentar.CNUME_VAL.Text1.Name = "Text1" + grid_scadentar.cProcent.HEADER1.Name = "HEADER1" + grid_scadentar.cProcent.Name = "cProcent" + grid_scadentar.cProcent.Text1.Name = "Text1" + grid_scadentar.cValrata.HEADER1.Name = "HEADER1" + grid_scadentar.cValrata.Name = "cValrata" + grid_scadentar.cValrata.Text1.Name = "Text1" + grid_scadentar.Name = "grid_scadentar" + Label1.Name = "Label1" + txtRate.Name = "txtRate" + BUT_NOU1.Name = "BUT_NOU1" + BUT_STERGE1.Name = "BUT_STERGE1" + Label2.Name = "Label2" + txtProcente.Name = "txtProcente" + Label3.Name = "Label3" + Label6.Name = "Label6" + txtScadenta_incasare.Name = "txtScadenta_incasare" + LABEL13.Name = "LABEL13" + txtCoef_penalitati.Name = "txtCoef_penalitati" + Command1.Name = "Command1" + Command2.Name = "Command2" + Command3.Name = "Command3" + * + +ENDDEFINE diff --git a/Ferestre/frm_dg_tl.sc2 b/Ferestre/frm_dg_tl.sc2 new file mode 100644 index 0000000..64ab3a4 --- /dev/null +++ b/Ferestre/frm_dg_tl.sc2 @@ -0,0 +1,49 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="frm_dg_tl.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + * + +ENDDEFINE + +DEFINE CLASS frm_dg_tl1 AS frm_dg_tl OF "..\clase\ferestre_contracte.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + DoCreate = .T. + Name = "Frm_dg_tl1" + _shape1.Name = "_shape1" + _shape2.Name = "_shape2" + Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" + BUT_TERMIN1.Name = "BUT_TERMIN1" + Gridsort1.Name = "Gridsort1" + Label1.Name = "Label1" + txtGrnt_pv_nr.Name = "txtGrnt_pv_nr" + txtGrnt_pv_data.Name = "txtGrnt_pv_data" + Label7.Name = "Label7" + Label4.Name = "Label4" + txtGrnt_proc_ret.Name = "txtGrnt_proc_ret" + Label2.Name = "Label2" + txtGrnt_val_ret.Name = "txtGrnt_val_ret" + Label3.Name = "Label3" + txtGrnt_alerta1.Name = "txtGrnt_alerta1" + Label5.Name = "Label5" + Label6.Name = "Label6" + txtGrnt_proc_alerta1.Name = "txtGrnt_proc_alerta1" + Label8.Name = "Label8" + Label9.Name = "Label9" + * + +ENDDEFINE diff --git a/Ferestre/fundal.sc2 b/Ferestre/fundal.sc2 new file mode 100644 index 0000000..1c600d6 --- /dev/null +++ b/Ferestre/fundal.sc2 @@ -0,0 +1,129 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="fundal.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + DataSource = .NULL. + Height = 200 + Left = 1 + Name = "Dataenvironment" + Top = 220 + Width = 520 + * + +ENDDEFINE + +DEFINE CLASS form1 AS form + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + * + *m: jurnal + *m: statusbarclick + *p: ostatusbar + * + + * + AutoCenter = .T. + BackColor = 255,255,255 + BorderStyle = 2 + Caption = "" + Closable = .F. + ControlBox = .F. + DoCreate = .T. + Enabled = .T. + FillColor = 0,0,0 + HalfHeightCaption = .F. + Height = 429 + KeyPreview = .T. + MaxButton = .F. + MinButton = .F. + Movable = .F. + Name = "Form1" + ostatusbar = .F. + Picture = ..\..\ + Width = 797 + WindowState = 2 + * + + PROCEDURE Activate + oprinc.SHOW() + ENDPROC + + PROCEDURE jurnal + ENDPROC + + PROCEDURE KeyPress + + + + ENDPROC + + PROCEDURE RightClick + *!* modificare v 2.0.39 + *!* DO start_firma IN ostartfirma.prg + *!* verifica_drepturi('oprinc','pagefr1') + *!* actualizeaza_drepturi_roacontracte() + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + ENDPROC + + PROCEDURE Show + LPARAMETERS nStyle + + *!* Modificare Pt Statusbar 20.Oct.2007 - Vasile Cristian + *!* Trebuie adaugata o proprietate OstatusBar la forma + *!* si o metoda statusbarclik care sa contina comanda + *!* Thisform.oStatusBar.newtooltip() + *!* + If Not Pemstatus(_Screen,"StatusBar", 5) Then + *!* 31.01.2008 TEST FARA STATUSBAR + *!* _Screen.Newobject("StatusBar","ctl32_statusbar", "ctl32_statusbar.vcx", null, 3) + _Screen.Newobject("StatusBar","ctl32_statusbar", "ctl32_statusbar_fals.vcx", null, 3) + *!* 31.01.2008 TEST FARA STATUSBAR ^ + ENDIF + Thisform.oStatusBar = _Screen.StatusBar + Thisform.oStatusBar.ctlIcon="roastartmic.ico" + Thisform.oStatusBar.ctlMessage = _Screen.Caption + BindEvent(Thisform.oStatusBar, [ctlClick], This, [StatusBarClick]) + *!* end Modificare Pt Statusbar 20.Oct.2007 - Vasile Cristian + + + LOCAL c + IF primadata + primadata = .F. + + *!* modificare v 2.0.39 + *!* DO start_firma IN ostartfirma.prg + *!* ** + *!* DO viz_contracte IN oproceduri_roacontracte.prg + *!* SELECT cContracte + *!* SCATTER NAME goContract BLANK + DO actualizari_schimbare_firma IN oproceduri_roacontracte.prg + *!* modificare v 2.0.39 ^ + oprinc=CREA('princ') + verifica_drepturi('oprinc','pagefr1') + actualizeaza_drepturi_roacontracte() + oprinc.lb_utilizator1.CAPTION=ALLTRIM(gcUserNameApp) + oprinc.lb_utilizator1.VISIBLE=.T. + ENDIF + + + primadata=.F. + + oprinc.SHOW() + + DO lansare_toolbar IN oproceduri_comune.prg + DO lansare_help IN oproceduri_comune.prg + + ENDPROC + + PROCEDURE statusbarclick + Thisform.oStatusBar.newtooltip() + ENDPROC + +ENDDEFINE diff --git a/Ferestre/startfirma.sc2 b/Ferestre/startfirma.sc2 new file mode 100644 index 0000000..b0beeec --- /dev/null +++ b/Ferestre/startfirma.sc2 @@ -0,0 +1,783 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="startfirma.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + * + Name = "Dataenvironment" + * + +ENDDEFINE + +DEFINE CLASS ffergen1 AS ffergen OF "..\clase\ferestrebaza.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmdtermin1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cmdrenunt1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label13" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Text10" UniqueID="" Timestamp="" /> + + * + *m: seriadebaza + *p: ttanul + *p: ttfirma + *p: ttluna + * + + * + AutoCenter = .T. + BackColor = 255,255,255 + BorderStyle = 2 + DoCreate = .T. + Height = 474 + Name = "Ffergen1" + Picture = + Width = 500 + WindowType = 1 + Line1.Name = "Line1" + * + + ADD OBJECT 'Cmdrenunt1' AS cmdrenunt WITH ; + Left = 305, ; + Name = "Cmdrenunt1", ; + TabIndex = 12, ; + Top = 432 + *< END OBJECT: ClassLib="..\clase\ferestrebaza.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Cmdtermin1' AS cmdtermin WITH ; + Left = 396, ; + Name = "Cmdtermin1", ; + TabIndex = 11, ; + Top = 432 + *< END OBJECT: ClassLib="..\clase\ferestrebaza.vcx" BaseClass="commandbutton" /> + + ADD OBJECT 'Label1' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 255,0,0, ; + BackStyle = 0, ; + Caption = "Bun Venit! ", ; + FontBold = .T., ; + FontItalic = .T., ; + FontName = "Comic Sans MS", ; + FontShadow = .F., ; + FontSize = 18, ; + ForeColor = 255,0,0, ; + Height = 37, ; + Left = 48, ; + Name = "Label1", ; + TabIndex = 24, ; + Top = 60, ; + Width = 128, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label10' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "CONT 2003", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 23, ; + ForeColor = 0,0,0, ; + Height = 39, ; + Left = 21, ; + Name = "Label10", ; + TabIndex = 23, ; + Top = 20, ; + Width = 185, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label11' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Anul:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 112, ; + Name = "Label11", ; + TabIndex = 16, ; + Top = 403, ; + Width = 44, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label12' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Strada:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 94, ; + Name = "Label12", ; + TabIndex = 19, ; + Top = 296, ; + Width = 62, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label13' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Numarul:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 80, ; + Name = "Label13", ; + TabIndex = 17, ; + Top = 321, ; + Width = 74, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "CONT 2003", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 23, ; + ForeColor = 0,0,0, ; + Height = 39, ; + Left = 22, ; + Name = "Label2", ; + TabIndex = 13, ; + Top = 18, ; + Width = 185, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Luna contabila:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 30, ; + Name = "Label3", ; + TabIndex = 20, ; + Top = 373, ; + Width = 126, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Cod fiscal:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 71, ; + Name = "Label4", ; + TabIndex = 22, ; + Top = 150, ; + Width = 87, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Nr. Inreg. R.C.:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 32, ; + Name = "Label5", ; + TabIndex = 14, ; + Top = 177, ; + Width = 123, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Banca:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 97, ; + Name = "Label6", ; + TabIndex = 21, ; + Top = 204, ; + Width = 59, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label7' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Cont bancar:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 49, ; + Name = "Label7", ; + TabIndex = 15, ; + Top = 230, ; + Width = 106, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label8' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Localitatea:", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 60, ; + Name = "Label8", ; + TabIndex = 18, ; + Top = 269, ; + Width = 97, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label9' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackColor = 0,0,0, ; + BackStyle = 0, ; + Caption = "Numele firmei: ", ; + FontBold = .T., ; + FontName = "BankGothic Md BT", ; + FontShadow = .F., ; + FontSize = 12, ; + ForeColor = 0,0,0, ; + Height = 22, ; + Left = 42, ; + Name = "Label9", ; + TabIndex = 25, ; + Top = 122, ; + Width = 122, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape1' AS shape WITH ; + BackStyle = 0, ; + Height = 458, ; + Left = 10, ; + Name = "Shape1", ; + SpecialEffect = 0, ; + Top = 8, ; + Width = 480, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Shape2' AS shape WITH ; + BackStyle = 0, ; + Height = 0, ; + Left = 10, ; + Name = "Shape2", ; + SpecialEffect = 0, ; + Top = 356, ; + Width = 480, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Text1' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.cod_fiscal", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K", ; + Height = 23, ; + Left = 192, ; + Name = "Text1", ; + ReadOnly = .F., ; + TabIndex = 2, ; + Top = 148, ; + Value = , ; + Width = 225, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text10' AS textbox WITH ; + Alignment = 1, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.numar", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K", ; + Height = 23, ; + Left = 192, ; + Name = "Text10", ; + ReadOnly = .F., ; + TabIndex = 8, ; + Top = 319, ; + Value = , ; + Width = 102, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text2' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.luU", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K", ; + Height = 23, ; + Left = 192, ; + Name = "Text2", ; + ReadOnly = .F., ; + TabIndex = 9, ; + ToolTipText = "Introduceti (in cifre) numarul lunii contabile cu care doriti sa incepeti.", ; + Top = 371, ; + Value = , ; + Width = 102, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text3' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.an", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K", ; + Height = 23, ; + Left = 192, ; + Name = "Text3", ; + ReadOnly = .F., ; + TabIndex = 10, ; + ToolTipText = "Introduceti anul (inclusiv secolul).", ; + Top = 401, ; + Value = , ; + Width = 102, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text4' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.flung", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K!", ; + Height = 23, ; + Left = 192, ; + Name = "Text4", ; + ReadOnly = .F., ; + TabIndex = 1, ; + ToolTipText = "Introduceti numele complet al noii firme", ; + Top = 120, ; + Value = , ; + Width = 225, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text5' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.reg_com", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K!", ; + Height = 23, ; + Left = 192, ; + Name = "Text5", ; + ReadOnly = .F., ; + TabIndex = 3, ; + Top = 175, ; + Value = , ; + Width = 225, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text6' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.banca", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K!", ; + Height = 23, ; + Left = 192, ; + Name = "Text6", ; + ReadOnly = .F., ; + TabIndex = 4, ; + Top = 202, ; + Value = , ; + Width = 225, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text7' AS textbox WITH ; + Alignment = 1, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.cont_banca", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K", ; + Height = 23, ; + Left = 192, ; + Name = "Text7", ; + ReadOnly = .F., ; + TabIndex = 5, ; + Top = 228, ; + Value = , ; + Width = 225, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text8' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.localitate", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K!", ; + Height = 23, ; + Left = 192, ; + Name = "Text8", ; + ReadOnly = .F., ; + TabIndex = 6, ; + Top = 267, ; + Value = , ; + Width = 225, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Text9' AS textbox WITH ; + Alignment = 0, ; + BackColor = 254,255,240, ; + BackStyle = 0, ; + BorderStyle = 1, ; + ControlSource = "m.strada", ; + FontName = "BankGothic Md BT", ; + FontSize = 11, ; + Format = "K!", ; + Height = 23, ; + Left = 192, ; + Name = "Text9", ; + ReadOnly = .F., ; + TabIndex = 7, ; + Top = 293, ; + Value = , ; + Width = 225, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Activate + *public m.luU,M.FSCURT + m.luU=alltrim(STR(MONTH(DATE()))) + m.luu=right(alltrim('0'+m.luu),2) + + *M.AN=ALLTRIM(STR(YEAR(DATE()))) + M.AN=STR(YEAR(DATE()),4) + m.nl=m.luu + + + ENDPROC + + PROCEDURE seriadebaza + LOCAL SB,SN,I,T,TIPAR + STORE '' TO SB,SN + T=RAND(-1) + *TIPAR='VOICUIONEMIL' + + DO seriadebaza IN proceduri.prg + + + *!* FOR I=1 TO 5 + *!* SB=SB+LITERA() + *!* NEXT + + *!* SELE CUL + *!* REPL RED WITH SB + *!* SN=GREEN + + + *!* IF SUBSTR(SN,3,1)=SUBSTR(SB,1,1) AND; + *!* SUBSTR(SN,6,1)=SUBSTR(SB,2,1) AND; + *!* SUBSTR(SN,9,1)=SUBSTR(SB,3,1) AND; + *!* SUBSTR(SN,12,1)=SUBSTR(SB,4,1) AND; + *!* SUBSTR(SN,15,1)=SUBSTR(SB,5,1) AND; + *!* SUBSTR(SN,VAL(M.NL)+floor((VAL(M.NL)-1)/2),1)=SUBSTR(TIPAR,VAL(M.NL),1) + *!* *DO MESAJ WITH 'Seria este corecta','' + *!* RETURN + *!* ELSE + + *!* FOR I=1 TO 17 + *!* SN=SN+LITERA() + *!* NEXT + + *!* FOR I=1 TO 5 + *!* SN=STUFF(SN, I*3, 1, SUBSTR(SB,I,1)) + *!* NEXT + *!* SN=STUFF(SN, VAL(M.NL)+floor((VAL(M.NL)-1)/2), 1, SUBSTR(TIPAR,VAL(M.NL),1)) + + *!* SELE CUL + *!* REPL GREEN WITH SN + *!* ENDIF + ENDPROC + + PROCEDURE Cmdtermin1.Click + *DO NOT RELEASE + ENDPROC + + PROCEDURE Cmdtermin1.Valid + PUBLIC LAN,LLUN + LOCAL I,J,NI + LAN='AN'+M.AN + LLUN='DATE'+M.NL + I=.F. + + *SCRIE NUMELE SCURT AL FIRMEI___________________ + sele firma + M.firma=upper(alltrim(m.flung)) + M.FSCURT=M.FIRMA + M.fscurt=upper(alltrim(m.fSCURT))+space(7) + M.fscurt=ALLTRIM(LEFT(ALLTRIM(M.fscurt),8)) + M.FSCURT=CHRTRAN(M.FSCURT,SPACE(8),'________') + + tt='Numele noii firme nu trebuie sa coincida cu numele altor firme. '+; + 'O firma al carui nume incepe cu <'+LEFT(STRTRAN(m.fscurt,'_',' ')+SPACE(8),8)+; + '> exista deja! '+; + 'Este important ca primele 8 caractere sa fie diferite de <' + IF LEFT(STRTRAN(m.fscurt,'_',' ')+SPACE(8),8)!=LEFT(m.fscurt+"________",8) + ttt=LEFT(STRTRAN(m.fscurt,'_',' ')+SPACE(8),8)+'> sau <'+LEFT(m.fscurt+"________",8)+'>.' + ELSE + ttt=LEFT(m.fscurt+"________",8)+'>.' + endif + + *!* SCAN + *!* IF UPPER(ALLTRIM(FIRMA))==UPPER(ALLTRIM(M.FIRMA)) OR UPPER(ALLTRIM(Fscurt))==UPPER(ALLTRIM(M.Fscurt)) THEN + *!* I=.T. + *!* omm=crea('textmare') + *!* omm.label2.caption=tt+ttt + *!* omm.show(1) + *!* RETURN + *!* ENDIF + *!* ENDSCAN + SCAN + IF UPPER(ALLTRIM(FIRMA))==UPPER(ALLTRIM(M.FIRMA)) + I=.T. + omm=crea('textmare') + omm.label2.caption='Numele noii firme nu trebuie sa coincida cu numele altor firme.' + omm.show(1) + RETURN + ENDIF + ENDSCAN + + SCAN + IF UPPER(ALLTRIM(Fscurt))==UPPER(ALLTRIM(M.Fscurt)) + I=.T. + m.fscurt=LEFT(m.fscurt,2)+LEFT(STRTRAN(TIME(),':',''),6) + exit + ENDIF + ENDSCAN + + + + *DACA FIRMA NU EXISTA DEJA_______________ + IF !I + appe blank + NFSCURT=M.FSCURT + m.calefirm=dirgen+'\'+nfscurt + calefirma=m.calefirm + *m.loctempo='C:\CONTAFIN\TEMP\' + GATHER MEMVAR + repl permis with '*' + REPL locTEMPO WITH '&DIRGEN\' + + *CONSTRUIESC ARBORE FISIERE FIRMA NOUA______________________________ + set defa to c: + if !directory('contafin') + md contafin + endif + set defa to c:\contafin + if !directory('temp') + md temp + endif + set defa to c:\contafin\temp + MD &NFSCURT + set defa to c:\contafin\temp\&nfscurt + md tempo + SET DEFA TO &DIRGEN + + SET DEFA TO &DIRGEN + MD &NFSCURT + CD &NFSCURT + MD DATEAN + MD LUNA + MD TEMPO + MD &LAN + CD &LAN + MD &LLUN + *COPIEZ FISIERELE STANDARD__________________ + close database + SET DEFA TO &DIRGEN + COPY FILE _ALFA\DATEAN\*.* TO &NFSCURT\DATEAN\*.* + COPY FILE _ALFA\LUNA\*.* TO &NFSCURT\LUNA\*.* + COPY FILE _ALFA\TEMPO\*.* TO &NFSCURT\TEMPO\*.* + COPY FILE _ALFA\AN0000\DATE00\*.* TO &NFSCURT\&LAN\&LLUN\*.* + COPY FILE _ALFA\TEMPO\*.* TO c:\contafin\temp\&NFSCURT\TEMPO\*.* + + + *SCRIU IN CALENDAR___________________ + DIRFIRM=DIRGEN+NFSCURT + sele 0 + USE &calefirma\DATEAN\CALENDAR alias cal + APPE BLANK + REPL NL WITH M.NL + REPL AN WITH M.AN + REPL SCONT WITH .T. + M.antet=ALLTRIM(M.FLUNG) + + THISFORM.RELEASE + *____________ + ENDIF + + DO TOTV + + THISFORM.SERIADEBAZA + + SELE LUNILEAN + SEEK (M.NL) + M.LUNA=NUMELUNA + + *schimb titlul__________________ + capapl="CONT2000 Firma "+UPPER(rTRIM(m.flung))+"- Luna contabila: "+RTRIM(M.luna)+" "+M.AN + goApp.SetCaption(capapl) + + + ENDPROC + + PROCEDURE Text2.Valid + m.nl=RIGHT('0'+ALLTRIM(m.lUU),2) + + + + + ENDPROC + + PROCEDURE Text3.Valid + M.AN=ALLTRIM(THIS.VALUE) + + ENDPROC + + PROCEDURE Text4.MouseMove + LPARAMETERS nButton, nShift, nXCoord, nYCoord + ENDPROC + + PROCEDURE Text4.Valid + if alltrim(m.flung)=="" then + wait wind "Introduceti numele firmei!" + return 0 + endif + + ENDPROC + + PROCEDURE Text4.When + *thisform.label8.caption=thisform.ttFIRMA + ENDPROC + +ENDDEFINE diff --git a/Grafice/C.ico b/Grafice/C.ico new file mode 100644 index 0000000000000000000000000000000000000000..ce97f7109e809635c2b1cee26d4ecb4d6b70dd5d GIT binary patch literal 766 zcmc(dJr2V#2!&s&?&;LoV~^3J`Di{)N8iBxF#f5dE|nq`2YB!T!6?$k3E?J_*G0PH zA80_I=%y=Hig4d0Lc+x84hux1Qc4h|J}Si!%CVHi=SXcfT4ig$&#=Ng5)I_`LieTR zaamU02#_-#V|ztS6FA-cK4=GL$H(s-=do!%=e1zDPoI7rd)}(}rslpVU-rq~)_spn K{|@*a{wi-ZR_c=g literal 0 HcmV?d00001 diff --git a/Grafice/CHECKMRK.ICO b/Grafice/CHECKMRK.ICO new file mode 100644 index 0000000000000000000000000000000000000000..2eb7ca6b7d53df3d529f7db17e6bbf35411c68be GIT binary patch literal 1078 zcmeIxL2iOj5XSKj+oYSuaDXPTYCJ{h$>iO@BlIYJD_wd7O}o%tF)qXunf?c>Zrr$W zqXWNr149TQ^Q1&Q<#{TPWlwr#P1F7LAd&hH(tvw8-jV2$ECrrDAAu&F5cUh15`VTMzr`S<$QDKgVP?|lL*1iM-@ArE+NAN%K z#F-lbp|uQ1$++VnoMm}(_8!NwlrK<;`1qlTXkYFKk?20 z2=v5lYZzDnHh>y{_Ux(Hq}i-T*H+5x?pmmdped*#RDmZ2m36k4Bfo6@PagDAHo&LxCM8i6d#xz!M1-JpqzpZNl0kZDW*Jm;~ zU@{afbG%!n)*dGw7AQg@g+S_1cf9{BTN`_>nXw_0K>7jw$#3yj>r^ulHu}2pq$FPz z>}HFYb`kH+jL~5KM}h4^yj`Pdvw*U{&rYO^Lb#V=5!Uk_2Xiw#ot-9{oaJKi{!7nC zg8qqp@6t`{&wGF+t}i>~P^;QpNoKJs4n{{So*AN02K)MVyzI?l{rWw>`P%4s#z4QD zAT?h~ezT)~a=BWW)@)aDP={>r2zm$(q{J>m?(Qn*w!g;O+r)h5ByEEinfPjsu3?im zJC=GgQ+pRKS6NqT4pj zzzp;Y70Sh`y}G#m$LtT+64u)7;)u1?5qvE|{A7gw6UPaL%0$!mS-O_ae!iKW+4H;= zq5FgJk+UDa?bPijH-4GQ6|yT2f!!Y6uY49!KOKKP_PB9jkeTE-N8N3x{6~Gv~0Nr3QAkWCPbrnNvs-e#TsdXAJi{Jt)?Fk z8!B3Co1(S<~`qIqw)f=<3*WDS9 zS!gpt^lubNg6N_88QHwAH6&kcw0(9zHRj@aH>4jsr ztgKn4wV_(k6pKD1BR=Kv00X$LBo?!=ZHYDlV*mp}fMp4$Dw<+3xNe#4rsnvFB|^N{CLtjV4Z|ZI#ZkkoI?2*zm-^KiekTP+UjyJoFo~qi@Tn4B zMGWDuJQ2q_2A|-=gyQE9`dNo*eqX` zV(qFF%jUV{%l)Xcr|67-lw)s)ESh6c@ietb$>JtSCdrkaTo;hby4<-wPER4kks+B= z$8p-v5q-HIE8-ANl$n3qMxu_yu>~y)ZCc+6IX4I$y|7}5Kv|N@p05E=#xPlhh-(wH zwUL_~#vd6(WT#;*UW7j1!{ihQAvian=z^6Rd&9ZjDGIuWTkyT ztBW55Xb3g<3IZ)LwoPR18iJ#*;-7Kot)>_qf}VawZknWPP!d1-I2$T2v0zq$su{!| z?RIWo;%x005}$u)(0upzmGVA7T>%8@GN39V40m0mClzCI-B%HfH!xI^tjdBg7Oh=^ zhJ!y~^V&3)X`$=srwMw`lAI%P8!VQoa^{J+e5|oIxoUT*{4Jm=p8s1=nLo#lj!nTp z(GX7xR0WLE%$Xs%SkRs^{S8k(qPVB$ z0G!rrX;a^R*{kf4p?c4O9~k^8gDnk(5l#Eqkp6gG5ThoZr2Rnl1BL zu?0HY;n?D#Xfa1q_#OWpR(ND^R4_U<{%FCRV155KpFO5(%3_Rcy) zD#J)1tAKUIL8t&Ds8%)OYb4PKB&$PIj72mV(wW`F>unj3K8FsSK%m(F z+!S`Tm3voiLj*H;WpK0;7?TxW=s<(g;6@FWgj8BGYqm|g#$w8s6h0 z<7JOrasYx72cG&gKlxD$eZ6HK+GVJ|Dd;N@K7Z-bL1578>mBWLQ%hFV<}ztJA~0Gq zRPch6uebKUu>a9FpMC6sXAke+_DJ5V$d$GBl0?;K#up~Z&yIts5CTr!T<+R(o(1MO znG5Ur&c5f4ov2hE2YLh`!D?K3>pfq~&78Ng`}DEy{?1oU1l~j!&;G+M_mOj$gTM)3@?VGl9{^l-n}0WKU;-EbE^*c8{ZGGy VrFQZbWNrWe002ovPDHLkV1hIV{_+3- literal 0 HcmV?d00001 diff --git a/Grafice/Cont12.ico b/Grafice/Cont12.ico new file mode 100644 index 0000000000000000000000000000000000000000..c6360c1f20c899e599d1f471ddaaa3ba3dcc87a1 GIT binary patch literal 766 zcma))u};G<5QeW5;Yvh=iMbf@5e%m)@dkKL)0#vjbE3iw%2CI_QSkuc@z&B4Xy{dqYG24E&uAZB5>0 z%MTuzGyBTQ7Z0$+@N_D>{CRkvZ0ray!A$#`JXgNljUP+x~^-NcCoYju!Tm7YqzNk++?U@D5$82H-ZBdgxz>Ogn<`c zi5G&3C{A?D2`i3OlvS;+YnHA{>qnckF-_AnN!uhR$vHX4n-sj+3-8^_^S224+Iof~i@$vM?W-4~=YS$m-=0&yeA_QosXXrT_#Z3i?Sq=>RrFfP z5gd4NI56;vd-v{EqzepfjM zlgF;b8nNaT4JDqNzcCwMV6zNJfsUYVg3~2P{heTS>>VnZ8EWMX*%$_SR-IcA{U6S9Q zPkk|&zWK*L%$#_uqZA^vT2GId}G|=kw1#{_*`E zHZP|&qW%k>7yM^Dk0i5Ux_;8QW_EJx=+vI7tQh)V=5H8mN`R_PBeg10vqK8!+wg9cWTHM0NC~$on08jyv0BTt5H5JoVDr@9r3A>VK`SlRR zQi+w@Yqg~-#X0>~a|UqyA7E~$%$&BCE8WJ`OmXXY$uiVsdtNbg^yEY?RZr>5+O&R$ w3UOdn+$YVVY1<*7tNAUfxnL8>0%>6VKkKDml2FV|e*gdg07*qoM6N<$f*G=@D*ylh literal 0 HcmV?d00001 diff --git a/Grafice/Contacts 24.png b/Grafice/Contacts 24.png new file mode 100644 index 0000000000000000000000000000000000000000..108da55ba2b99486e42d939d813008357eda0237 GIT binary patch literal 1595 zcmV-B2E_S^P)gi*Lw$Fv5mQ;U_e~l5)oud3QkfYwFy+@sS-k}s^+DNS}92trIlJz zrBxqN6s2k(5LBV5nxq6mnua8#K z)jKy>k8WN!e|z1$*oIKFu|@eCj6ijWf=rUmJ6N61F{z@|h7{vj@C6{g=xb2dTDPL{ zN>|Sq1Av+XXiboKaaZD*wX2uy4mRAMbd#Gg67BdRZTJEv6%9TOUK+9mMXuywS|;@g zfg>Rrwn!zr`1S**AM1HN^D2-#VRaq_kxl~#m9 z24xqdRG5~gvCaeuQbNVi1pI=W4AYoBH2>g<%v(w`ekZ`l72Hf_NTM^z{|QIs-~o`-4qsB2noj*RxrjLvWzkN^h2f%nD_WVUYN!h$YpqndEk zWIC^rp2qbw<7tV~;7O=BCFJ1S7)AtNAcj*OLl~M!BF^;W5D%|i@O2vv=QH zc^JLzF9RS`!n-&)@n&Q09o{)nA{r4SVj=HlV=>b>g|oCF3IcYN}~kD8K?V|(D_K}*hEIB%conK%g) zZ|I3Rlg`FF7 zOGRT<2B93%V=11WR94?tE;W0-`foV1J!uYLEW`AccKuLWeYB<2yT9^_Ba?>?oKi2^ z4sQSh)DoNb#F60BoJoEvlHW)-W&HL-&VSTjQ55C? z0IJN2V;Ro+C->!E=^f)`;51O89y9!X|KSx~4eMfo8j_J1soXgl)RTC7e}!1TmE-ZF zgzFS$1GQ7VMa>u=eGc&Hh`xO2lk(d|hf~0HKI`ws7V+JM--gNxNqrv zE`8j?x|5d~js+QfZ~%Y6z!5IFa=G5=R&N-01DG9qeL!lCvbE-JUyX?n0>P{&0#+5O z{XFqViJ|l#X=siE0yOyRjU-TS-2-sXWkqQAJc%bIu9Q?`B$6x&Gvrm)p5eo zLn?`f!kJVyV0>u++7OO%vE2$qr-IM4&;o4FA^FrA3MHHIi44R2Q{L#YOke4ccMur* z(tyHI_qQsmp02d&dHHI`7&o%o%cx>`$}Q$cDw*6>d$cm-4KT(z%3K7l05f0stGL%I t0Skdfpz5FV{9jTu#1}?xVm1H(002ovPDHLkV1hAC5-$J% literal 0 HcmV?d00001 diff --git a/Grafice/EXCLAM1.ICO b/Grafice/EXCLAM1.ICO new file mode 100644 index 0000000000000000000000000000000000000000..42fcf5990832780d969abb54911a8ad0fbf689d8 GIT binary patch literal 1078 zcmc&zv1-FG5WOUY7z}Oxpq@&`K*tR2CkZmB(4pEa$j=xu*r3Iq(y?R54u$l+JIQe& zbnPXlcTaauXW_HRLYC4r8=-wHMIL~gjq&Y5t4KiYbqh!$6M_L& zgffmJkcqSY<$PuY$B$cBynl%^^WM)`jIG~6P^^makY?s$+|Ow0tKU2o-pi}jRjt)` zQj_;pYv*O&MQ=RUyXd_MSe;VU7GC7u1pS(6$TL5!$SF5LC*+hHcYGdnCuhflQHM$Y7=wup-nM=dAxV=lT8)MKq6>4jVW(;RwY0 z26hfOAaod*E~T{q!*KxCN$L)ABGO1mjcs6vikJXBy{1|dx{Zi5;Jcn1Ieo;pPJc%+ R{qxTJ>t2NZ{RDp#`2oKiW>^3K literal 0 HcmV?d00001 diff --git a/Grafice/EXCLAM2.ICO b/Grafice/EXCLAM2.ICO new file mode 100644 index 0000000000000000000000000000000000000000..351aa72cc39b55b0d4173d28a58e63b11c6b4648 GIT binary patch literal 1078 zcmZuwF>b;@5FE#mY{^pK2e^tTky28SC%L0Y!IhTyjHMJta&u2{nUazMBsW2aBsbpZKAf()T6Y=~<;J1=nLG+2xAvJ& z@+eS!lFvNJCD6Piw;QDC=?1@YyTLqN4ZPe!9{D_ddcZt=;*C>~Y~QEIeEydBjpMFd zG0%icN%P!9WX$D)2MS>XRsuB}f%=1R2TsB_*GdS;3@#5r@P%Pqg)nYHxSm3|g|G#8 zpQwqn=brInb9PDYG$Vo^rFdx9wb{1d|M$E&Mr+t4JMxXvF4`M+rswZX-!=3Xh7A{{ z8-@b(?tG!I22>s8@+`A}ifMY+M$Zk1Pp_nog_vd}>hv}jCN6mX*M*VI!gXc1Z2;kZ HAWpy!B$Yv) literal 0 HcmV?d00001 diff --git a/Grafice/EXCLEM.ICO b/Grafice/EXCLEM.ICO new file mode 100644 index 0000000000000000000000000000000000000000..90fe0f220f56b19b47c57858f693494ddd103840 GIT binary patch literal 1846 zcmeHHJ8pz95PgJ|Hc|@b1c5STsaX8#L^zc zZ7FyYf~~?C=x3mtfW`x61da}<#g<2~Fs@LElXQ9i$Xv>)+^V5ks;S!BbIzY(hnDkd znC)~zH8r-L8h7+&G~W1TN>6w0=Prb~^Jeb7Iq$Jz3OC+NV&ziK+8bASW6`r?)g*;K aHLt_Yv;^6>Zui3NUeIYscj5oI7rp>0MN7;8 literal 0 HcmV?d00001 diff --git a/Grafice/EYE.ICO b/Grafice/EYE.ICO new file mode 100644 index 0000000000000000000000000000000000000000..b1c65e68ad8d5431996db1454f79acff888b2b35 GIT binary patch literal 1078 zcmchWJ#O1T5QU#C2V@hkZXi~HuaJr=*z+1L-ASFNO4#KJK1J#cV!&n6rc)KTaG}D5 z3>cn#vkWZ-a2F&a&Ca~}+22QLrV};ILLql2(mU*8G2-)?bT*gHi8bg7o#~WOGHPEJ zBT2?=G>o{YDd$YW%U|x{q5L8g!@rUBdVMtUWPU?ro1|AHhFsLy560tkhJrgt~(SYk?y)Q&5)uz8m9Vm1A6FR4j*{+z@pO@!5!JE zY={+3!8A{434D|;yHNdcw78 zbyv@tv1an%`2uawiRT&rbumay#%wfz0@8)?OG`(I-`bf-1yd4xM4#xv1@YQskxx`(<8C3^bz|7 Dz}&kL literal 0 HcmV?d00001 diff --git a/Grafice/Email Envelope 16.png b/Grafice/Email Envelope 16.png new file mode 100644 index 0000000000000000000000000000000000000000..daf1ab4968ec2ce1e519957046c912917db27d82 GIT binary patch literal 825 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 S$=itl0000DoyE literal 0 HcmV?d00001 diff --git a/Grafice/FIND.BMP b/Grafice/FIND.BMP new file mode 100644 index 0000000000000000000000000000000000000000..c29fbced912ed4aa2a24c35f487d81407a9a6682 GIT binary patch literal 246 zcmZ{cI}UJbnsf)0=2IqbcT^_CoqBT?DnThL%k9OefLZ2PH>gILjWYtq~Yzitwg zSr43wOgU!;wNbTtLo7eS(g#vV35%ZClROJeMT*{w?48CCj5qB*f0&$PagIIJaREMn BIivsp literal 0 HcmV?d00001 diff --git a/Grafice/Favourites 16.png b/Grafice/Favourites 16.png new file mode 100644 index 0000000000000000000000000000000000000000..668daaefc3cb56343de862d220be7cd75397a841 GIT binary patch literal 687 zcmV;g0#N;lP)6TMbn&!k3C5gZyA)>1;yD=!}PYCLw%OJ2Q2qMaxE~1O*DiXc0 zqMHaZQ*vdgST@Wwrf4?Z)OpU_cFs;08zF1G@WT7OJkP`XJv>mRrh3Ddmj*&}Z?5dU z4g>+M9Ik9ddcy6i?;GOonC_+@=x*Pox<^3c|3p;j;=<`Y=bJlIXVpRmP0!QXW`V}J={wTWo{vF!#=9%|b&1aF^ zaGk2IYw_hejDRBu>Y&Sl2f8ZEx&WWVaFus-)E-+(*wa8#0gjo;Z$JNRMH&ND`r*o* zW1f(LDi3I~K=u~McqK+qXv-5K@pdL10TL2$0Skx?j9b0SYsL!OHuw}668sX!Rcx;) zcV}H;XB6QEEezBG#_n|GhNITP)=upV$xH}Cg2%;-NuJ!xd>tIICWC&N*Og#;F*{!j zlq`*>ok(j#xuko_<2tN=)AP5lrrzCok$erz0V_Zb$O3U7{ZGDQ8{$>;XGM4Np}pt+ zQ*)v}lKKFA0is3co#MA`z!s$ffEQ>6+5rPt1m=rmyA)hbKmb0#U!2XN$@wx^{s2|9 V^UwaLzlZ<;002ovPDHLkV1kEcLmU7A literal 0 HcmV?d00001 diff --git a/Grafice/Favourites 24.png b/Grafice/Favourites 24.png new file mode 100644 index 0000000000000000000000000000000000000000..8ce53f7380e75794edeba4ff1375f436430a531a GIT binary patch literal 1145 zcmV-<1cv*GP)gqfibN=0_1 zG_XFTNZADuNzhGYA@hRfZELk%cU;|_ac1X!=FGf(II|a5cUz(d4$p!2eSiP={h#N3 z4oo7>Y`%Zv`H!2kTHWnlm9}RGh0FfGwZA+|C_+2 zPwxNA^Bc2EnEY;S&Tb7wo9nEHC$nBoG`RMWs%3$Bxn?pB^ya~@&^|-Utp1w) zuhkx$Q*SN%Hvu)#;O=$PHZ-glY*jG_!bPwJXoa*O7|i-t%?&;qjnmZ=aWCdvWA4Qe z{CXvJ4Cn{YT?4tU+Hggpx*|747m8pT(4%%N$9O;b z1fzw80^9KSH4(oSaZdwT0NM83>)nrT99Vhyhx$v&n|>HfL*4~TfyJF!Nw1nLKnd@Z zT7Wf@{eCo%9Qw8jAd%z7-j38h%dMU^H|SeX?j{fg12wh>($cd{m9j30%28PZT4K4% zK62bS8IBcx9~J;87*a&DN}>`}g`o3< z$aHjN4*>bGt)g(b&pF+G$!ULlLGZTNQ= literal 0 HcmV?d00001 diff --git a/Grafice/Games 16.png b/Grafice/Games 16.png new file mode 100644 index 0000000000000000000000000000000000000000..68e5c02c7f5dcbb3555dad4c17e4730219cefa2a GIT binary patch literal 777 zcmV+k1NQuhP)5JgJ6D4~=>!GfEr3z2NaWhpMyqM(aH z7b*(kMpCm;f*TbP47SEb$8-#8(oqwQneTaD^WHocPU=kC3kUAy-23C+!#x838dFD8 zU0PTCdn47eOYe%Od^_*h^9xVRSFgv-#lqO&k1x#T{X+91b9(*oiqAIx5*yf=6qU~b z5BMG2Ih^@<-ri476rR4^*LUb?dijjFJb8Fx?RV0~!Qa{k`jVp3-blTVAOJaHkl50* zEz!T~TKebY#unhoiPV~m(|PKvgH!VHqZ7be-~sRm$RmgzqF2Vro0vg&(pA?SUIrw9 zaEGzCLx?3JT7`4xr}_4qb!-@L0H2^zWIpXOonFUZeMrnYnLr>rR}hXRCRcDv=Ea@sCRX=Z98z~A0V);idQVOkKe8H>$t$|;u5k{M^$7rRY%oh zsA>d7ZX;cat<|%+Barz3SQYmVO)anTERlFLf<+gC)Ja&^(N!H)38N|ovSJ`g9bi-v zaN)xf%H{fKd)WGV_jZlpttJn%c_ywfhZadzwNuOwo>03v_hKbO_I}9sBBke&WPW$?lbgHP&g^n?xyu zAV~;ze*K5DrP1kEt`AfJx49Q0zy_cn_!tNSa^sc(-~$%01Uv@*1eT;G zzyTH-hZY-v^gloW$O2|d4VsFo0(t`yn{svDx2N3*4+!1?uM;08^|Te)T@u z>R({}@&twsIR|V9yb#XM!SjPph@MBbeW}pq%KgKOhCRG+x7~qC5SAv2Ajt`{( z`p3T~es%BeYXxZZjqG4~t%*~HqR-&*L3)P&$-WcsFkdJzQ^>P#c95Y|;m7LOgn6w1 z$xZ2XI6jyMKY;0_Sr1$of&-BWqu?}CRxL|kG}t->f2iG zXzJ<~unKU16DV&wO(EBj8~N8`A3mA+bMwYmHYb}`7XgI&X-|RXnmAGe4bUY>2?}r= z2to*aE+?KM^`)hV${K{$26O;LU;yQfq6#))AqPd9vA+JH#(VyHd$M`;tcD+g>qE(p z$};5g3vzvw6LL}Q=JlyOADo&)h!DsDW55NV1cXsS1WG~k+P2p0!Hoy)a|1%+1q;Ty z2EMk?Sz}=Zp<>=W!kN?*kNsqXxOtKT`!~>Wn;97^RCo!(0HOJa@;vkBrrh@EbRCtu%!T(S zIrVV|qvOjtpKD+$AJAHPIQP|CC*S+u3Iw35g{f;AC`G{^!AjXQ)F&tvJPJhxfe*zz z!t)tBI>G+l8#z7qW#;V(a`uN<;UPAzIQ`CD8y|cyefw`dmiT}dfF{5XKxiOB2*D$Z zsfRdrkta4carYN$=tlUL9|ZE&hBk^p^+r9(Zl9h_+wrOf0S)xc?W2v1GEl_u21kTDkt=)Gc@^Ho3-kcc4Bg~0Dx5lg@F-Q*4`U*!o`SBRZEcZx&3Z!bPLSS$};Gz&K`GBefE ziR-?L=DP^bL3l2qA98LsHn;8XV(+efb9-!;i-04p0=QaS4|D=cfXc4c_|m2-Raa>S z6#)6N?o8TZrf;ZtHdN$*Gr%#x{aN%;8MXT?d=B|2y_0L!teNlc?^mDF we<8ZNyEVW9l0XWmja2;!bl0w3+LdGe3w|(oh{4Ble*gdg07*qoM6N<$f;V@@OaK4? literal 0 HcmV?d00001 diff --git a/Grafice/HLP.BMP b/Grafice/HLP.BMP new file mode 100644 index 0000000000000000000000000000000000000000..4fbb501ddd5c2c3348f5224841d92b2255179f50 GIT binary patch literal 246 zcmZvUF%H5o3`K)Pq-^CF?1&4nBW1CO)N=r1vs4@iF?Gq2x)gPDpA$x$`2YBQE0^on zwR&Jj`ta+W+t(mh{U;^(`D?Zv+xre!VIVeu!&mCHpb~)^Z)<= literal 0 HcmV?d00001 diff --git a/Grafice/H_POINT.CUR b/Grafice/H_POINT.CUR new file mode 100644 index 0000000000000000000000000000000000000000..6d1096b00acf7ed686f37d2d1f4af01e40f1d010 GIT binary patch literal 318 zcmbu3F%G~W3A#8ax$CE$0nP^O}ehDxW$jQQ7_bjf`|pLic}B;sqIyJ)lw+_2i_E~m3rZY z^|GL#EQsI-UT8u4A)*CcHmK3v&F<#QJvk?toSEs(Nlej!m-)>w?~j+~eaGSh>-Wo7 zPtsmI;V3u$s@i(}tkO9D>$$Uk0v*5%zqR_}hc8G^tegBX{ps=Dh5W>kUgd$MwL+^N zm2SR$Z?5spjq9_wfVaaYPG1O-`aW0Ob$WbiD|0t5VWdlGMo`FUvMc38t+?f<8!!(% z3oH4*feZrG@(e5gK1Otw_ zI|5@e7t7b4&gb@*$~U9pvvoC2?C`iNv*uP>TUgXFxWio-lp{-4;l=LA*O6nJH#hUX zlTU77f9WXA>2I0Mr>x-Mn;CDt{G_`W+@V3U&tPEC`YwK9^1$@2jq!rDDZ2?iiZM3z z6+26ZxwCYh#JI-UV2VxOoeuui_W>7BHh}oqJ~_EH@nzfygb~DuQJUDu!rEp2nEQ>< zw2v?`gd-T+6FUTK1I7kj5c$XvJ7&;YqtPg%kt!gOiSWRkC7nuPY%rEVwUq%Tf#f@g z0Ya)CQgrFsT|8W>a+!z~A(0zlp;_hSn*~|^XK|r%-MAo0GSZ31|-l0{193*Ol*aB sx^G|sBS0eDt+3ZBj9wTrJP+pJKjI`hAxHylApigX07*qoM6N<$f{w3tqyPW_ literal 0 HcmV?d00001 diff --git a/Grafice/Help 2 24.png b/Grafice/Help 2 24.png new file mode 100644 index 0000000000000000000000000000000000000000..1437723ba383c06b23c7022f66c9d6adb66c8128 GIT binary patch literal 1364 zcmV-a1*`grP)<9Z!K;y6u6aD-~f5=va8AkhazMNl4jLJKRs(P*yDJx9Me z=lo{`pR<1Y%Fj=q85{kPqpO!H#m7$Fjl7CV{O#_C|M~TwZoK&r@B#B#=f$%&zduEy z=`z?k{@t;!ed9Z?`-`^+g7Q3#of<|*?D!hh{iV{)JF`Fj>tAlZ0qg+!S+T668`r0p z$n_7tT^Kp@i?PXXT`NC&H(UGopO{F})6-9XK9ApUDK9)o<-U0KD^FHS@6~G6a*O2i z6I?#m`P-4gg^Bdggfvc<+_?WXp|7boJeu_tq&rVWu9K7vDx0gFviDSTZhqmxXHnP( zAAay6mXz__cFiSyJb_&;5_*biwL!k8%B9f`P7dYCq*EXT3oAul{oTE@Kn^GZ;r}G~ zU=cH3FkjE4`o?N>Q7y0Hu03FE(C6i^KF7(CVVpz?gal#H)178>+bgX2&#kPl7iWM5 zM+$z30HD@r-pUF6&AQ1Dtbf2O-!9PGokiLXgc?lrU+1`_uOlXXKR5~W17*NF7*8He zuvOG^H~wSgP9xgmtW^)ye`N>7#Yi$Dbkj{3C`0HMI_5LHZx1jC%`7K%`=MJmf(Ar>5a$IXH{jDcW&P)ucWR-YxNkvzpJ>r9N_y3 zr4&lJ+_}H9cH<%c0@m3raNBBQw}rSI*U5ZQtrg$-aN(m`zCM|+eIYshk4;YJ1V6dB zz_C=wOf}^7y6c8{V444a&@P^kmn+hH>D|*hlGh5OpQJaO>f!^=I|WZ(`Fi0g9H9!*XUPY(9<#j~VHk(C+7 z21l5yJS3St&x_+zSiO8&V8Bpmwy9(iS7D5RD6w|R3A1mEMw7GND>>BSAh{A)%J?)>+(|O zMC>IeZ6meBvMp?3VGA1@n}N&#qeE5Rnwe(3xkhfF3kw@dNGxq(JCgXYJ)($)fJLBw zh(J2xiqkJ`6YWWf*}pUz*Y_AJoZ^qO)7-DTN4|G}C<^!eut3Cx1iFEE8-a83jL>+YMLZiL3`45TCJoh~xLIcP$wp9qe`hwh75%x@Ma{MZVadGNm<_JU zVU=()E-@3sGLk6JG=+=y!E+VWT3uJRs=>x`WvjAO+fYw~6+Lg}D6s@A0S|%derFzN zqO`myu83pes+E=}?6gcvBM6&DX;-_tY3h1M*L1~{DN~|O1x>9LtirAy?P=2fkHEnM z66gd5fdL=`#P$GNhkSPR-ep&N+ymyd{0@C^j_S8ySJ&gM``#dGAZl57!1U38N7tuv WP;+?7K&DCn00005SQ#V=BXnD-?6XBQTh zhL5tc{3Ja`ma`VAq?W#aE|hQ2MBc*oJtmMhmB_1__@!dT-!~$!fqLi&tppB;H;T@$ zhaiHVgkT0ErqCeXdjyjHBqh$Ecu5~0cOEW zFgDWjl0Rd*=Q+ngxPx;sCI9>+SofoaowdFLmwK&gHnGgimi?!c>DG_0DSfAd4Wq@$ zXaYOV9c64MaA1Zt!T1*kM0$Zp;hLKJ%a9hAlCRP(a@s_ORis-)Toh@8NKN(l1dGZY zDS5P^#?!_+x}{y*;#RkGTN{VH4kx~o@4o)d@n`shpbHjtsPME4R`7MKLK~~-Vui)s zN*y-06+LZk|E)&14-vU3sdn42c6d-K3y$^TLbY~YKE6Xo@J`4-?N{!1MDKY9JPV!) z&*pZ&>|W5qZVn!o1_HPP)L_I^?*!frdMW6I@VEEE1OY8eLpV+2HGFhT(+8YbN)JY9 z4y+6?OPmP^Ly%5`gogG4D=ZjpO6%*Q#O@%gpSt-%PjtV}S=c l*f3hQlNL}DGG={0FNAn_mC` literal 0 HcmV?d00001 diff --git a/Grafice/Intreb.ico b/Grafice/Intreb.ico new file mode 100644 index 0000000000000000000000000000000000000000..a63d9c35902d94ebff5c3e1dab9f4ced2d29e152 GIT binary patch literal 1078 zcma)*J#HH@5QRrp0H(_722vIH7WR?U(Vf_(5wKTc7Z(fo3hLr=JF^hPd~dk4A;AVr zc{qIYzcXXAmEGBHw=td9JG0;L&8Fe|mD#Vg**&ry^a!o&2e(1@^%M5})p)$YH~QfQ*DD-`D;y&@#-4!CqwpdK_LEAI#h!8m)>;s_ zM}r808w{@1HM@acWpX1K9E8u)i`X3Z!4(T8LXf=MQ^b?wex-P5&#AHb9eWr8cD={{ zz{lpW=#S66fW60`rZTxf+IxOL!@;~hbdC$(s|3gKJUzo_upIFA5A=4(pdG0(Xr*Db zOe{7*`RKQb`11~Nq4$e%t^ZK|l>tPu3sj)&EAntL+n&t^N(Lf*3-6X&o|Hx>U*Afe|}O+%3kw=_({a|tvwGoQP1E!SZ$bH zR5R$B(W9qY_PUuOl(C(+X8!@V0kW+C literal 0 HcmV?d00001 diff --git a/Grafice/Music Player 1 16.png b/Grafice/Music Player 1 16.png new file mode 100644 index 0000000000000000000000000000000000000000..7f020bc75cd7f4dda07c1cdd0741292bc6c86816 GIT binary patch literal 857 zcmV-f1E&0mP)Vry6upmA4;sFt4|7a}g z@&qSxcg|l0RG|AG!Srh%%=p~i!HXAWH&R#5eMdXJVks+EmCVIici_oTI1+tYwwq2+ zsH-Klkq7ME0#Q}$VD`RFwUDWSlL!6)7ICcKjnvFH5ho`coqXl3i6>57djIjrrQ?%{ z=K&cI0L0X0VJ%lM2#rk+1C2d>ej`4f7g zRiF&CCB43J*YF)a==4P5PenuFDeb4=BaSNP2@Y;%S9?c76M#*=kfvj5c3ZT|x?$e3 zEbAViOO8=7JGJHOvHs@J>nFs-RQEhleG{`Ku+Wr%Zl`0|QtiQCEkShV+m>}_AP|Tu zjm8|HOMqh;RqYHnhTLL(I`7*@sH@^qRIaFgvs_OnZAVjm9#_^hjb)c4-Ism7fx4nB z0&UlJ8XaBgyZ;ZCitNMfnzx072Tx zvuQa+)e-yqGOLf-`9kx{ikRF|s&oB*j~sTJOa4G`ZL3tCtyHVOv^$*&PzM^q?wDZ$>`j;{_C~RSCh9EGnq_w=LS1CfMM89#d6pJ z(m=Z2)E4~)rH!_9K$2xK9*Z3d27}e*rKL5%*uB9&O17&w60i@50;7Nh6oCv-`ai+H j5rLlVaRDZv0j<9QMzDj;oC7qI00000NkvXXu0mjfmI9r9 literal 0 HcmV?d00001 diff --git a/Grafice/Music Player 1 24.png b/Grafice/Music Player 1 24.png new file mode 100644 index 0000000000000000000000000000000000000000..77b41f64bfbebd3039ca75478b36be697d976950 GIT binary patch literal 1655 zcmV--28j8IP)V@eC5f<2cJmC8-z0-6!EJg=WuTJ6NnWPvPMu<91!C3b@qPgK}9MC zYlZWZfbD)Ez&G-j)H6?y{AuTouKTIwVfI1^FaPpYsj~3ONmNg~=GH!*@{Gb7A82aw zhg!mcKmdu<@L1vcN7t=-cJ7M++`vG~*YDffJ}#CFaFoG`<5RLa|Ff5YmEXHS)&)#U z{D+`qPmP)*-}-T4&+|{U+}lN(`@Z&ET|9e?dQRnY9X#~x3qOh96YJJh2eqn=({H@= zz9D`1a{vnf8~_x64X2t@YsI%Mw;>sA?j8&aVni>VS2LM3-5HOl3u49iOu*KM5C6!= z2`#!#q1RQ+p83NuOIdyuz@7QpqRAWQXM(J=_rA8)?ylAc_B1y39imqKz<#zcO#Q;O zT-_8mZedHJCM$}Iie$ld2m*nC0l@mK+uWOpumfFNpWi(=G2nA!a9nUc5{T%{I|hr5 zTfX;fbMWt5hldV<5cU?}ldJRRWfhPl1G?!)vTb}2fN*ocQ2#c5pm&4^0ETHuZQ1;d zAGi<#xxxjMr7ZG=OVDe1T;wuv*kIqjRP;rL@cYg3|W9s;4Jroy!| zr#oBxzK-_M!#*zjL(lUL@jR0eglKY8`_5-hO}@n4$W4J^2y{b-q7+egY`D4vnqMqk zsOj%h;3@zR+j3Vt5+4aSjr1!u6`T+c`U&mrXm0*as(tSPe?zJVjL>6S&ZD-i?Q&gP z$mZt=XbqOF!gg55vIxV{0b7NoNtc!k_b3I506^e~wxWp3d}Q-ue4sT_uEJs3E+2*C3!+w839J+^kz}F^ypMzHYS0V^ic*1N>2RoxRokAkS?;*)td}nV z0BYp&s+<=+ZqtLUo$-dXY4VWA;h32MS>P z0@7v)L8XLwHiL3qfo+H$1-^L=*y_C{)G9I6~1pok0 zWqF_duhEA~r^o%yGQbcpltJC*5YuW{G=o?)08Py=$#P-Rc9Z~Nsm?HTPOU3{vmNKJ zhGBk0I8F}*gO3%8#pB%VwSGUNdUIupYq7`CRK9{o%sFt>gO3Fwt_r{dVOd4+bH#8d zbc0ev4a0!n@9)=jeS#%qyg?AYA}dNks#cjh0C|I5?wUA=o{mAhH$@OE=P{u#!L%6^ zT_3=xZeuK(@ca0bZkoUFJkRy}{X?NpXcr;mInVP9P1CZaa(NCw`yGI{>g28cYo)`y zv#`mi*T5JqIN8Lk)r^1JjP03~i+nT~5v9tJic~!TAOv8F5cZ8=L$JehU7{IA-Sa#T zK$+YQ$Z2L}xv(NBh5Tr1;c~FOob}$5sQkMcpS@bjov`ZFW8qM^k1|X~unj9lyv{&l zyn}E)$g-TZY`aD&6|w%&B<6O&r(!r@yxoThk7Z-mE#yJHWdO?ng5hZ6_P%uT`#&Ah zY$KSguRQSG!2IQf#mRS0etUlYQfcEscR08y56DR#rmHTU2IxPr-oDoW#4O9IC14j0 zHMs{XnbAxo*`L@wvAu6>+qSW>ZDaP(&~SBTW?KGSz^9^E@2t*-IR&7;l4cfWvih|p z-IuO;NEY)sljr$NODcUJ9>3?&vomMkRaI5|UlHAnH~Vxuxvzhq zEtyPYW~QfKGfngL{|B&9Apj|?M`!{_W8M9Y{{n@97TOf~X)XW&002ovPDHLkV1krw BHTwVn literal 0 HcmV?d00001 diff --git a/Grafice/Pics 1 16.png b/Grafice/Pics 1 16.png new file mode 100644 index 0000000000000000000000000000000000000000..9d06b03f5f85c3e624910a230451104965752bdc GIT binary patch literal 846 zcmV-U1F`&xP) zU1(bc6vuz}-rOc_zS<^hlYVbzHe*!V2ySya6{Ikxi0DA@srcYP)JMSwUqoLVd+M2Wcz__0e=9i!0w*FGR?|%%?|kdK8&);!+e9nZU?!Nh^l$f zERp!Ahj3`$VUM?W+|YKEc7a&Z?0km=9?|AfN?_qufR*J{a{no;rM{z>{1_v1nI{fL zdM00d?*tG4q&>l|-gpEKs@9}G+D)+fGl{KfrXHQ)esY#q<%@*xokO%OrjAY@1Nwl@ zJwb7|k@Ls`HCrMW5OFs$jCISLIwaB`^`U4YYqEtR-Qf7q#FM?zM7(u{03aQI?ZYEa z?ROu`+Bs=+G)>Jo%z9>&k!OpX9Q=Th9zVE8#}-q|xAoHM7NCpyoU&Ld zy3D!`s=SS>S|L}Es5k>Or3P=kJi)sMK4aJwWjhZC$Ghd&)albe6zC8$cdu_LJC@Qz zghgeQ!H|!7rHERn@aD+?Z@XBw0w8=kyK(-V*L^epR#p0i z7&JAy0)D(6iHZ)E18SwoufN~duKYNEYdwACW-X@NM|hK zL){>NZh{~|HfwV3>|FZqg|Gh7cW$l#o4^L3y8yDA=|7h@r^-VEfnd-tv94H*kIJa3 z%}#6^3SbJ4BmL3YmAT2d@A<3AJ0(YurNq-if%&-$OV=)a zdCf8^nbz_qPyp(H!{act>ONos7yz2Bc@xM3TR;xb0Gl?1wq9-}tg}tv05zc6{=)72 Y51Fuv+Ot}HMsq1Rj)o%y0vD$3!Z4v&5m+|ZwuH+i z2xwLOiixNignSZ8Na9p`=gT0S0FizIpvrb}b<|??R)S2$g(nck9|+;qphk133tGs+ zqO6z5=PNAE*^Fmo5^06*RT?jDhxocpYmn4tMCD09*%T$cY;wP#(9js8CF~%~4Eaoj zg`7olsmgrDMOxP=nIWpO4@Fb41X z*_i}?y9h-yNX79ZTz(YQh3Wz=1RhL`%uQr9jNvqsEkeAbR&9-MeL9yMJ^6Sa;FP4>bE8?RURI*T@#a<3C|`te?>febgD_e5d^b zYNy_2Vm41808ee+x=stWuYUqCJoJxLRh9{OWwN@B=JnDXF>!lAn>&VcyN}MO$t!JV zi99$$DVOEdt}0!P0qn{1B&U)9^ln%cY3kVa!V>^T_AVB5oRC+dVp|leKHBSSd>Tl$ zP9W%IU3@()O%3dh>v+6D2FC?scWtIuD17KS&Ao*sI@{dR`puu)32NP=0N3Zg@n+4+ znE#7)0YgicUHCj6qV5t?88<<{o85K8)TjbIl|j-PDee3g!=V8r|3(5Y?4>_^n0pIj z>}r0Aw9yzH`q$|Xs^x|8c~e8T{BnHTv&+s|l@#0Yv| zYQ82mGIa7Rj*$eA>svQu4JR^FF=ae*g$dEmjGm>fHVk@-k47vKwFeoA9L82!Skr0Y zQ6i-N^DMpQA@+Cuik_AZBuU_Q!86Z&y16O7?=?UIkbn2%jn2($AC6UQs26KV>NmNP zyT*!em})k|Qc|ZjU=gd4Nn~VFX@}-`h97?IHTK2#(;U!H4ahA?B+}5?>0--gzWfTV z65Rgcx@+4*}+_;|M{;W>CTjJpBO>F51BITfv zhWRXH3^1#pDzNLNo$^4YYbaq~{@BfRY8a`1nCo6{-R(TM&${*$!Hp0x)*@-N~EVH&5?)s=IY> z^sDR$=1|KX48r{AoAubfde*jwP=!pk07VOI2OK~MP~6~>V0sqLocbs?aQyA_$%*%l zfstSS5C;xlco76ns?xx5e)i$aVq2yr7R#Bf50;aMR@ z7KJ!-ONc}7EQxhHeld*FbP!nmu*u3pK;nMl;=Q@bck633QY8rb1=C5vQc)%Bhl&M4 z0>}CIs>ci25)2Ne?7lx8yMA@BZ=kYtz8}N|pt3x!A1-F6Mh0(9JipM}6|1)#a4Qnw zpv-i#O3!Nda#BqL-GWOaWlkP@Z{pnFkG`Lu{r3rA6evDEiamx7 z8dN1{X;Qd+9Wq6ThC#RC+8ucJFK3heCyt((8}C03<%>Y}apV7~=UzQ}aBxD1J82f literal 0 HcmV?d00001 diff --git a/Grafice/Security 1 16.png b/Grafice/Security 1 16.png new file mode 100644 index 0000000000000000000000000000000000000000..abf85d7e8c0b9e5e469b9c9aa232e942400c1f3a GIT binary patch literal 743 zcmV?P))_oMv_x$Y*&^`;@ZWD1#McAO}c2olmxN~bk#-wfl^9KHrW=k4CH^v zCW~wWh3*0&gpfrR!Nw4Ov`uZ^-HFaE4%IX(@aTv zL{O{M?oU>$zuLAf`+gU*=y2A+f!A&F@5TzA=aHl-g;I&29~7I-<_o|DhEgeY!!S%KgupT_ z0OB}ib#09(ib#@#yp^Y1sUW08DOCchz&g;Ax~^Z4N+P8~Dn;J5kx~&32E5zZrcfv{ zS*;R=A=_Jw^ElkIj2TC9|c(X?S>yWy{|ulnwRyWcu! zy%~hz2C$jU01YStbHHa=uJeA^lPqFj2n>KOun)Y;@}?^-ORRP5mGV{iX- z&**)noP`;SA%vvc>vQ~U+kf*!;}0h))bWOfX87c|>#$&?+EiEGLk!6UcZrE<>vzn`a`I}7H8h04+)?CP?u0~3DYM;r`vjL}9B0#_} zDWM&^p$LWpFBHn)zTF|iQ1Hfo0;GWPl;GB)WDpn({eX-mIKSL$ErEYSg8Fqi_u5s)+m zw-p5krUVze5pT`wwNQ&15NyWUve25BR}xyNr5$C3Rf5T{LJ6|_0vApJDr1KQY+qq@$ z59xP1q|)h<6^lLEZnr;(qUh4qtZSOxOtpHrFh2eSTI0DMsdO6GaroDJACO39`O8a3 z@thVVYD!oTVGpCIG*=D5W-cLoKB^- z6-%Y(}i?Gi9?jlhh>9#V#Zp#;j<5X4M_UDat8&n?htud{1rhF-6W5Q0oL z3up$ON3mQ%84{%w$}}X9yjEbEJB5%SB~nPFQb?sxhGh1(AK|*hF0|~G3`hg!m34jPPyh@8 kmyP$g4-D9%O@A}~3u_?z#w6js)Bpeg07*qoM6N<$g3;4_iU0rr literal 0 HcmV?d00001 diff --git a/Grafice/Tech Support 16.png b/Grafice/Tech Support 16.png new file mode 100644 index 0000000000000000000000000000000000000000..ef31f1dbf22461c75ab7e4dcf1619adba0d14b0c GIT binary patch literal 733 zcmV<30wVp1P)2bX{Zl`}fA%thwww(b^GE z?>oP^P>KD>Z>*th{-jndk}s^WP)nOq?63(`9LWDEOx?PBV(8%U8`0r2sSPVgt5Kt5 zb)oOQh+j#sFR>M;?Ye$*DjAQ(uJt7o{_b!WlGj6GR|u)GLGjyDKE0kM z5|Rl7WYXyYUnY|o2X+HK09U~8KO2ok_b9TTH(xyz9=t(Z`b;D$(;bb|sdiE~bW~ME zQ4}KG-EklR1h!(d?X)5X5It^I)+_AIm#A%qky8UqT$tE0g~LdaM7dmMc4j6Ac>kX7 zDV0j^)^oYldcCHmLYg-)HbODdVQJarIyQ}bK3BOuKmWT>C>SqazQ{g#{CEy1{4J9J z$Uqv{2dEBNaPn>f4d-D7paVahHWq=V;22~e2uO|@C#IGIYKIvPum$i3^BfB|CHArT P00000NkvXXu0mjfO`;4Lk3GI-#-8h$bLGJ$EyQWflJ?79Yk%MRwAV%O zDfZ1taX1{1zmke*6RvB=YAvf?s(80&7x?v7gV|ae?~~q(PjY_y2{F|jQ=S{?4(FpAdaQN-b?vI(x5E4G+Q2iO(ziz zBP1EucKk`*oZM-9u~L;+0QdhQczjTNKbPhU2$x3FqiIOoZ&*}o7N+Il(=_}(6$#CM)~J>|3UHR`EQ`?wsgzrW2u{YM2(b<2-Z} z$>Z+Qn)l4h)oa@geg(82O5zdfNsLVY;gv=IYi=M=cxQcWZTV9PuFPCLp{UAFyVCLRj-EQLcVc5~NLh?_6{A(5=_u?d8N9;Rh)n%} zbR^2y=+W-%W4R}5yS3)R!uz*Aj`v@~?&p_hCJ%LYU+L}X?XT5$NhIP(LSen(F_cfR z`oRi+d~=PCi1OqY&(W>d*ecz_vORjc57B5etxK1_bLqy7KmX(*1(#>87SgHIwZr** zE}n>yh{v!kn{s)TWXPj#MkpHt{Qla{xb@l$eYvxkCiM6E5VAtOUg!AnV{$x^I(7Z} zt8cVgt@49UzC3f)9}EV6n9Jq*{DAsp4*5 zrzhGVlg*J%CJ~ZAAefw-=p8>d{*C`6F9ArhJk{0J^;9qzz^AGBG!@4cD2jqnuOU>O z3**Dw{pT#(l_vRtAzpp$E#eVBhGDQ!Eb^Jb0fdl<$KsqmeP&FOq|5^XO;s<(V=)v( zMfWKhn=jd>PcPKQ56|kRpF+?c>;ltX57kZnHOI8<;wHFc>YD$8yyNjd2Ma()aYm-8i}I&G!(^S zIOEZuJxlb?CR#Fq*=!LFhsZh^vY9M_fFIj&nZI|>nVXxh{q60ym*05(#_a6Po4<1$ z=XKZ{ega^6`b%SH#>SpGS{NQoC6k&gOUmYUQ$!;Xd{)D2OOjo!R&61K*=#ng``g>~ zxw*N`;!<&?TrMva7mIgWt>!$i4D9l;{rsTOWLZvy!r_9ds6j=MRYei9K*B=8>2xg9 vGA+wAO~-Xj(=?l&>u$5RB3taOqJ8b(Jy}(6nk2AO00000NkvXXu0mjfGGWx> literal 0 HcmV?d00001 diff --git a/Grafice/WZDELETE.BMP b/Grafice/WZDELETE.BMP new file mode 100644 index 0000000000000000000000000000000000000000..c8b8bd4db07460045b26404359d67b028eae8cc3 GIT binary patch literal 358 zcmZvWK?=e!5JjipLQ%*<58*l7dkv4^)@+3yz<`je%+4+Xy-K!$!uV&J#)X~cPhWn1 zhFq?9Ye%#M8qcu;2Mc&UpbRgu3nQNr%e3tw3eH5JAz4Pc_RyjY1;gNU$UkuYu86p$ymzCk&;p?(tUqRm= zhbJ4(wDdJt7ihgr-)c+l4B>$9{P@6QFgQ{6(>J8=|MwoV_U B-!T9H literal 0 HcmV?d00001 diff --git a/Grafice/WZSETUP.INI b/Grafice/WZSETUP.INI new file mode 100644 index 0000000..992baa0 --- /dev/null +++ b/Grafice/WZSETUP.INI @@ -0,0 +1,36 @@ +[Preferences] +DistributionDirectory=C:\VFP\DISTRIB\ +DistributionSourceDirectory=C:\VFP\DISTRIB.SRC\ +SourceDirectory=E:\CONT2000\CONTAB\GRAFICE\ +InstallFoxProRuntime=Y +InstallGraph=N +InstallODBCDrivers=N +AccessDriver=Y +FoxPro2xDriver=Y +dBASEDriver=Y +ParadoxDriver=Y +SQLServerDriver=Y +ExcelDriver=Y +TextDriver=Y +OracleDriver=Y +Oracle7Driver=Y +BtrieveDriver=Y +VFPDriver=Y +InstallWindows95=N +InstallWindowsNT=N +DestinationDirectory=E:\CONTSETUP\ +Make1.44MegDisks=N +Make1.2MegDisks=N +Make720KDisks=N +MakeNetsetup=Y +SetupBanner=gr +Copyright=gr +PostExecute= +UserDefaultDirectory=\GRAFICE\ +ProgManGroup=Visual FoxPro Applications +UserCanModify=1 +SplitSize=363520 +FileCustomizationDelimiter=~ +InstRemoteAuto=N +InstActiveX=N + diff --git a/Grafice/attach.bmp b/Grafice/attach.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a7ada5fab5117fcf43f6eac96b62de2ac25d50f5 GIT binary patch literal 2454 zcmdVaK}!Nb9EahZV;9d6(zzf453OdUC03wy*n%!mSY}Fn0q@Z@h(IYMMM<-;T8M%y z=uqLYLx;Xiz3a*%!7jDUp_Z9phIJo)Gcy0ke6B}nKPuw@y^r2c7fLUqq9i)++l$W7 zdVQ1F6h$Hi_20dxm)6DJZfQfK)pxRw%{%Awaolh7s*#)UR)eBAA`XVckxv}@J@5{s zy+^Wq$XoG?YId7B#_dUI-{;8>3x|~U9y#jc21ZIoHj4^LR`zZe(cUX>YPE=mD1}iE zTPCQ<9LERCOX|4cbQP7dit6QNit4O zMm{{6AqC}l$$;tA#^iXZpq>nn?>r>OONaH;I9_8)nwJjaT}9-0Thn@G67M=H#jB-a zmCPdE&5RV!yrFovvxdi&D=tTWaX&2YK5lsCl98(5>b_aP^MX+itfkxfVgV0xq8RlO zk@`m!bQCVdw@N%qI3UEi%)#`B965G>)Eqs|9txN=|3Jl zdi40gg9m@Rd-v{NZ{NQC@Xnn(Pk!>=dw;octD{@af~ehd21)vH&3cJ11=-`u)&>(6h!`R0A>kFoy(`@? z^Tr#0`rg68AHV(j>-TVd@9^;O-nU+R?RV$To%{VaUw!qXZ@lu#&2#6^zkP6U@X6V; zXFoZ8`t+~QoH_HWQ>RXS__dc`zIEcni4Tq+KmO6llP7=q)t6rS`IldO@#b_oeSc?X z=h|Q}xIPJjcbo0@PaCb)m3pJ`Zl~M*U^bh*|H9th*P-uTxNzb7n{`UfN)FnEHa9o7 z(f$XOH>qucb?pDtE*RwHKPjNjU>F4b;c#cj+TEdcq<}A0YHMGaTgjeXQzk82b}1VG+JWJ;|Y!pb_d5o#CSaJKrNhs>l3=) z-@%tVJp_V12!=gkQ1& z46oPAXqYC=W~W7VIJ7WD;sgd|JQz~^oI(VTAGSJ80VtRKvR5vbH|ve9t!Ae)9#QLd z7nD&CjQ+3}^x+Fzzt4nLv$@qE2W77SS=c?|zz#Ug7DE^_A`~&8UccAt22_CYxY?OI zV1Q*BmT7_G!BM?l2ff)Gv3fv^dfkvg983jdp#uUOAOLb;>C&GzAQVlTV-bYz zcpzMO1;a>cnx<$HG-pT=Tq_Ft)ud4Xq=s-{1(X)~5P~)20;#l;Sa3*kB(f3-eMBHx zbkB@+f>2IcZTOfoM&s@RVQ91cecG^&A2Ik^^lOG$@JdxgLx{FujJx9z5Y0y2FIZFy zk;l(7=J{nvtrkLnM=r+{h={~c73IG$6k9h^o?ohhK>`EgTdhuq%8HVJG0$TpvXPjE z^JAJwEaH*@FmcNr`a;Y)-AVKVk5PAEQH{?YO1vOt+@C+BNCC25!cI?Y7qNqvKmyB z0%b!^hP6#{ff92c_$X?dlw?^&X^NB)2(dJqZIl%@5Q?rT;Y1QABw*oV`3prwFj>Ef zln6$nx!q_qN+nED1BJ!SCez7;r3y!&+I9W(pEJnMuG2VUbnvysVn3TpoqV&lx4usOaZi3I>Zg7GN|UBw zCq@Z*K|1_=!9_5ttstY5$rL|^l#NPdG9{2CRk*)`Nvf_!oeUTt_>_+ldB9fmJqm`( zyMcmEX0n1i+Q~|#La!?Y>znAuD-WT>h(QSQ;S;1(L~Zk43PyBorb+aSX!L4Rsi`)E zDGUzv0}+j8*axgI!-s&N!npWL0q+-0k+i9J$ErG{;?+yeSG*jmi|3NvquG1zzF)3i_f^C!I?lF<^jgc)o{(SSF&GBL5X4tgfz_B%JBb z0GfX2M-B=oJtqOcN;u0_{kYYvqq+$a_>vQ#BEO9(gPVkqUnNs$9II;5#5 z22RWbWG%fcFx)IRn0SR)^EWkeig9q|eyxDuZ!A>7yqn;{r&#GtVmPK4{Y3_wK*K_#SPjK+ruvJnb_ b@dk!K;K<3N`$B;58Ch5wH6Q)iGZ_B{dEiPW literal 0 HcmV?d00001 diff --git a/Grafice/clienti_sus.bmp b/Grafice/clienti_sus.bmp new file mode 100644 index 0000000000000000000000000000000000000000..eebb80b8774389ab2f052dc09e793348d8c2ea01 GIT binary patch literal 4050 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 I{vQJ4TL#NQ4*&oF literal 0 HcmV?d00001 diff --git a/Grafice/cont11.ICO b/Grafice/cont11.ICO new file mode 100644 index 0000000000000000000000000000000000000000..55777dfcf09155b759c9cd1ebb46a0f813266d89 GIT binary patch literal 1078 zcmbu8v2Fq}42J&$r0di$vcXg_GInbprH^o1MzV1muXK;X*pZD4i1c%E2lPZGq#FJt zw*MrynCJ7NuPf38v@3`V%aq5?Cf=cXLO` zhQA4|iT8ERjKs5$Yt~)LSMB4Vv*75LkxsFCe(~$&KRQRb+kRhL`tf=`0T7cr_VMj3 zz}vf|Xz7;pjo}gmvMbv$Q1!OmHCNqPzVW8#V0@7%)Rtaw_Xc|oGsw6wycNvFecGAf#MgkXQ!U4>Hs>%-ls)TBc~0l^eoi3S kL8cU}%0SB|8ptH8hM-! z`d{+$@^L@?=bTGo=9}NTz2sx+_;3!p@816S<3Bvu*?DdItFPX?_4()bZhr8=z0G&t`E2vU54SfqHg3QF-g`ISy>#jJ zFW-1$>&oTJcV2ttl{@Fpox8Js;lhm{UbyhdPcL5Fxqj{1wO?;+T>tU<`j5_?J$wG; zvuD?#D?fSt^>^RAeEH&UZ{7O#+uPfhesJp4`R|`ObN$tqUi#$aGiNqWojm!w@18jE z{_*3-e{Kzh zAgI^#e602RYrQr6E@lr~ok_!BIvx+{95o_!2{Q2kLciZzg8|G(i5l&OGt*oLXSAbd z8@gtLK!5;4>mD(Huu24!%XM8VKi^apmsGFEv7Wa8ZURGISS*wWM9~7mRr8vbN~PqK z{0!knDy3JCA$G);~tr060fU=y%C5uM;hBpONRa#~}M!C*i>!002D zou;d5snTe42(88%joImwOEn1hpsJ=aC&K|T`lttT0T*(qx=#UK(k!Rl8h8vU>9EzX z^Kv=4Z<(W!%!~}k2eN{MHl4gCC#ASFRXj2s(jY$5qJvtj z7?!3)MLtwc#p7{+eTyX?%d9GexUg8Op)j;F)e6P(LWucD!-vCsfPv2_Vv%@mF;|WY zezB6PC^55CQo>=56QwIlyc$% z2Ze>DT}|MTBx2}k)t>kO0$&fESBMc1D|jN-V(#0>)uudD){F2Mh`>$caxW=+%WWY%ow^Kvb$r%)bBz zwuuiwrvfby9G?Y)dbJSKQ<;emq=WLIM-xi{4g|!^$0zl1DI1snM3 zB`>GNk`EBJ`G^4@dM0Z#24w?2(hB9n=dWOmF)wg~Qy;LSLXiXpD6|E}jC49{c|KTK zH0A>j`In6fgBZs6kA457EW{WKIrZ}4`2b?-gP!n%LaN~Zgl8(4s2;)^Tgf6AJOqSo zS@026xXCmW;+fOgjR5iy)e(zrTONaa(7Qi2|Mk<^UGf3OO4hQN4;!nL7`hVM$87JB zfK)B(dOC|(vbbWq1W_}xlHm5wkb#iN2g`@;xX1?*BJ21V?^9eV0UMdD<@sk2J`FLdYx*^A|W4jMgeEG(c@6YJB)igz!1y_ uW7Ms215-s?QL~vWp22fpBX2(S@G*m^tFXd2UQfX63Mqs3M7TO5F#ZckP(j!L literal 0 HcmV?d00001 diff --git a/Grafice/ctr_sus.bmp b/Grafice/ctr_sus.bmp new file mode 100644 index 0000000000000000000000000000000000000000..56b5101f9621a5c1c813d5f52fe9aaa5e04dfb2a GIT binary patch literal 4050 zcmbuBPi))P9mn-wq$0_Y%s&#P(6s)Vl1R#uXvrocue;>X4d`hdT40wI$Zkas?Hm*^ z(k}6~CPfdOn-0ijSceot)(k_pCflK>46wWGkj_aHpatsw$qv~LTd;N;2JHKLBo)O8 zk_`L4$4By!@AJOD-+Pq()vsTk2{A2&L!kv+J%VG1BOKyb|LH6{vF0mi>G;pTZ{7Om z7q@Qx>mN67e)0DkH~#jQ-QAm??d;tA?E3Y;-neq*^Xof1pMJQ#{qePn7eD{g_V%B* zwzjTZ-rD-;)7{;ZSHJx7r2A?ZP|nTsw2-%+~MD zo!dUQxw-TDsZ;NrdhNCMPrUTf`^S$RyZnQVjjiu*Z2a*@Cr`fp%QxTr;jtHAJpRJb zqd$K2l~>MfzWnm5zqxejTfew^b@PQIM~)v|U;p)qXP@2v-un9QkF2d-eCFw=fBW6% zo;&}Y!-vm4bNKM-Z$I_a#`^Qm|NNVeKmNwo9)0v@hYlV3)ss&=@y0hEd+fC1IHv}- zePW^2+U!`?PgY#_^+#4$*J=w3K&_c;XU}%KODO-l?5^E4X&7>N@c+~@7|VBSWqCQM zE6Xc^ZeMvl!Tl5iqnLsrqm|JJ*L0x4$?;FDJ9rD{34_f`ua4Z2>kfx#ha)`j+R}fzPsf1`>1<0pbl!>f#bR(7$TP*g9yu*)x|ihQLoqSb^Y2! z?xzdZqDNZl4_t>RE545r5r!c2x~63smO=Htvg}@uD2SIBE6XEPAO^jjX&9*o`b3iag7w9!|L&V;Cm3oX3ETzHJziobwrcYA=j> zfo{IIL@^V`3mOP|2aqMJmg9Nqno>N44wOQ3 zQB+iHRu&7szyWPAMHEv>K2swEAXc}zq{}oqrR^2E3-gsU`LOLiVnHMlv4)?_^2s@oQX3R1$|C$R_Ci$SC`{)J~OV|St?aN zl}A1#wF4i-7`XjGk9Mgja=Z@6Ty1Vn&uHTsGNQ!+xohJgZ^-GaLW^tL#9%(~u^<+N z!gjly%T}v-+p?;B@}7#*+9DPhp?u({t=FS11|K>0#pLr`dOX(PLvN<;fk-5ie7?Du zrhIrl=r@uv1es5PkiTJcUd$!nPfgnZ4;2d2eugHBhDCM{FlI0 zIo;Cdc`33S9_JeSGxSw3huJ|6RZ+>Qk) z1w#@qSS<=VOXLorlf#a#3FojdZpw#NX%G~4hY$XR@_;r)#|gESgh%m9V`W#RBNkmsXV zDtDL2*+$ zG*L8P6DS?!He;Bbjs+h`h{R1^e9%Qgf^IW9u+cUs7)eZXX^!I(R1(zEwSRm2gkDaN zkd0!w?fU=&2r>eQFq@ue9}&}Dr7JGIk9DNe0t5s?0i%r23_!r}AQCVVy)x0PAfO5Y z2C}i<0|eqBU6kmK$08zLMU6n@!}~g>?Nw+H$WXZ^(rTR;kAO zeAI|2bsd3~t-7uQO$gIZA=r-OvRf?vB8CfYe!@kNPu$PByWoD#oo{D;-^{r4r`G%9 z5zo}$H^%)wapakf{8TsDqP3pXn{3he+IW`HIRHJ$=$rtLZmT~UUuBMd2hY@W<1>9f zuQy%UVD+Zw15&-R;ZaY9N8Jpc`7cWK)?wnysXxLha>f4K$lT7iSWSK{IX}jigqbHA zhRM!SJ%q6u$${+2A7n??8Y?Zv_tLln-+^zX`%>D0uPoWGX|V{K1F0!0u=*H^ z>TCE^{S4o#KjC|I4!`hEv1Q$mC7I{EWB+{A%s2`&Jpn7*|C;kY&hi1Y8Fjr}6Vaa- z7}vYz#Pqt}rmC&o(16~%!RDYnxU-=@9(u#}&h_@XjoVu^&dZUE3tT!L^qHKV^M{cK h_aGg}{cGv=n(zB1r`va(zU>?E7P<$m$^Bml@eh7uYexV8 literal 0 HcmV?d00001 diff --git a/Grafice/curs_jos.bmp b/Grafice/curs_jos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9999ebf3c4c026c1daeb92d3cd922dfe4b95e257 GIT binary patch literal 4050 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 (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* + + + + + 1252 + + + 0x00000030 + Visual FoxPro + + + + FNAME + C + 200 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + FILSIZE + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + FDATE + D + 8 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + FTIME + C + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + FATTRIB + C + 5 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + CPRSNAME + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + CPRSSIZE + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + EXPNDSIZE + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + FILFOUND + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + DEST144 + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + DEST12 + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + DEST720 + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + DESTNET + N + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + SETUPFILE + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + EXTRAFILE + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + EXTRATYPE + C + 10 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + CPRSFLAG + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + COMPRESS + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + PARENT + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + SPLITFILE + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + UNIQUEID + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + VERSION + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + LANGUAGE + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + TARGET + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + PMGROUP + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + DESCRIPT + C + 100 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + COMMAND + C + 100 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + ICON + C + 80 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + REGISTER + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + SERVERTYPE + I + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + NETADDRESS + C + 100 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + PROTOCOL + C + 20 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + AUTHENTICA + I + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + INSTLOCAL + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + + + + + + + + CPRSNAME + REGULAR + UPPER(CPRSNAME) + + ASCENDING + MACHINE + + + CPRSSIZE + REGULAR + STR(100000000-CPRSSIZE,10)+PARENT+CPRSNAME + + ASCENDING + MACHINE + + + CPRSSIZE2 + REGULAR + CPRSNAME+STR(100000000-CPRSSIZE,10) + + ASCENDING + MACHINE + + + DEST12 + REGULAR + STR(DEST12,3)+CPRSNAME + + ASCENDING + MACHINE + + + DEST144 + REGULAR + STR(DEST144,3)+CPRSNAME + + ASCENDING + MACHINE + + + DEST720 + REGULAR + STR(DEST720,3)+CPRSNAME + + ASCENDING + MACHINE + + + DESTNET + REGULAR + STR(DESTNET,3)+CPRSNAME + + ASCENDING + MACHINE + + + FNAME + REGULAR + UPPER(FNAME) + + ASCENDING + MACHINE + + + + + + + + + + + 2000.BMP + 225054 + 1999/01/30 + 18:15:52 + .A... + 2000.BM$ + 55032 + 225054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532372 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + ACHI.BMP + 382 + 2000/01/14 + 4:55:16 + .A... + ACHI.BM$ + 189 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532538 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + ACHIZ.BMP + 382 + 2000/01/06 + 20:28:22 + .A... + ACHIZ.BM$ + 203 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532559 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + AFIS1.BMP + 358 + 1999/01/23 + 9:44:04 + .A... + AFIS1.BM$ + 189 + 358 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532569 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BAL.BMP + 382 + 2000/01/06 + 17:10:58 + .A... + BAL.BM$ + 180 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532578 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BANCA.BMP + 382 + 2000/01/14 + 7:29:38 + .A... + BANCA.BM$ + 158 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532588 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BLUE.BMP + 630 + 1999/03/25 + 18:56:52 + .A... + BLUE.BM$ + 149 + 630 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532598 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BUT.BMP + 382 + 1999/11/25 + 13:01:52 + .A... + BUT.BM$ + 137 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532609 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CALC.BMP + 382 + 1999/11/25 + 13:23:42 + .A... + CALC.BM$ + 169 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532619 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CALENDAR.BMP + 382 + 1995/07/21 + 0:00:00 + .A... + CALENDAR.BM$ + 182 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532629 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CASA.BMP + 382 + 2000/01/14 + 4:49:54 + .A... + CASA.BM$ + 181 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532638 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CLIENT.BMP + 382 + 2000/01/14 + 4:57:38 + .A... + CLIENT.BM$ + 183 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532652 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CLOUDS.BMP + 307514 + 1996/09/24 + 10:00:00 + .A... + CLOUDS.BM$ + 133151 + 307514 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532661 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONT-00.BMP + 225054 + 1999/01/30 + 18:16:06 + .A... + CONT-00.BM$ + 50701 + 225054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532672 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONT-AL.BMP + 54054 + 1999/01/30 + 18:39:46 + .A... + CONT-AL.BM$ + 15478 + 54054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532686 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONT-GA.BMP + 54054 + 1999/01/30 + 18:38:10 + .A... + CONT-GA.BM$ + 15578 + 54054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532709 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONTNOR2.BMP + 720054 + 1999/01/23 + 11:25:44 + .A... + CONTNOR2.BM$ + 227976 + 720054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532725 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CRED.BMP + 382 + 2000/01/06 + 20:31:20 + .A... + CRED.BM$ + 176 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532743 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CREDITOR.BMP + 382 + 2000/01/06 + 18:42:10 + .A... + CREDITOR.BM$ + 200 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532760 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + DELETE.BMP + 246 + 1999/01/27 + 8:20:26 + .A... + DELETE.BM$ + 134 + 246 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532770 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + EDIT1.BMP + 358 + 1999/01/23 + 10:35:16 + .A... + EDIT1.BM$ + 184 + 358 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532780 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + FIND.BMP + 246 + 1995/07/21 + 0:00:00 + .A... + FIND.BM$ + 131 + 246 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532790 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + FURNIZOR.BMP + 382 + 2000/01/14 + 4:58:58 + .A... + FURNIZOR.BM$ + 163 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532800 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + HAND.BMP + 382 + 1999/01/27 + 11:36:02 + .A... + HAND.BM$ + 177 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532810 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + JUR.BMP + 382 + 2000/01/14 + 5:04:28 + .A... + JUR.BM$ + 191 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532820 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + MIJ-AL.BMP + 94734 + 1999/01/30 + 18:44:56 + .A... + MIJ-AL.BM$ + 19929 + 94734 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532831 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + MIJ-GA.BMP + 94734 + 1999/01/30 + 18:44:18 + .A... + MIJ-GA.BM$ + 20270 + 94734 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532855 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + NEW.BMP + 246 + 1999/10/27 + 6:44:50 + .A... + NEW.BM$ + 115 + 246 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532874 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + NOTEP.BMP + 382 + 1999/11/25 + 13:25:46 + .A... + NOTEP.BM$ + 176 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532896 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + PAINT.BMP + 1630 + 1995/07/21 + 0:00:00 + .A... + PAINT.BM$ + 352 + 1630 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532918 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + PER-AL.BMP + 63174 + 1999/01/30 + 18:41:46 + .A... + PER-AL.BM$ + 18798 + 63174 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532929 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + PER-GA.BMP + 63174 + 1999/01/30 + 18:42:26 + .A... + PER-GA.BM$ + 18923 + 63174 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532939 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + TER-AL.BMP + 36054 + 1999/01/30 + 18:46:08 + .A... + TER-AL.BM$ + 8806 + 36054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532958 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + TER-GA.BMP + 36054 + 1999/01/30 + 18:46:46 + .A... + TER-GA.BM$ + 8938 + 36054 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13532989 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VANZ.BMP + 382 + 2000/01/14 + 5:05:14 + .A... + VANZ.BM$ + 178 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533002 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + H_POINT.CUR + 318 + 1999/03/25 + 18:56:52 + .A... + H_POINT.CU$ + 128 + 318 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533023 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BINOCULR.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + BINOCULR.IC$ + 315 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533034 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BOOK01A.ICO + 1078 + 1999/01/30 + 19:04:14 + .A... + BOOK01A.IC$ + 420 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533044 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BOOK01B.ICO + 1078 + 1999/01/30 + 19:15:18 + .A... + BOOK01B.IC$ + 419 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533055 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BOOK01C.ICO + 1078 + 1999/01/30 + 19:10:08 + .A... + BOOK01C.IC$ + 409 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533065 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + BOOK04.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + BOOK04.IC$ + 434 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533076 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONT11.ICO + 766 + 2000/01/16 + 6:38:28 + .A... + CONT11.IC$ + 421 + 766 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533086 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CRDFLE01.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + CRDFLE01.IC$ + 483 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533097 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CRDFLE12.ICO + 1078 + 1999/02/01 + 17:46:48 + .A... + CRDFLE12.IC$ + 506 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533108 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + EXCLAM1.ICO + 1078 + 1999/03/25 + 18:56:52 + .A... + EXCLAM1.IC$ + 465 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533127 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + EXCLAM2.ICO + 1078 + 1999/03/25 + 18:56:52 + .A... + EXCLAM2.IC$ + 531 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533138 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + EXCLEM.ICO + 1846 + 1999/03/25 + 18:56:52 + .A... + EXCLEM.IC$ + 503 + 1846 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533149 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + EYE.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + EYE.IC$ + 520 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533159 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + FILES04.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + FILES04.IC$ + 534 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533170 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + INTREB.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + INTREB.IC$ + 544 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533181 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + MFIX.ICO + 766 + 2000/01/15 + 5:21:42 + .A... + MFIX.IC$ + 432 + 766 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533192 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + NET13.ICO + 1078 + 1999/01/27 + 19:52:56 + .A... + NET13.IC$ + 418 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533203 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + NOTE14.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + NOTE14.IC$ + 541 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533213 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + NOTE16.ICO + 1078 + 1996/01/12 + 0:00:00 + .A... + NOTE16.IC$ + 555 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533224 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + PC02.ICO + 1078 + 1999/01/27 + 19:07:34 + .A... + PC02.IC$ + 562 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533235 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + PERICOL.ICO + 766 + 1999/12/06 + 17:56:36 + .A... + PERICOL.IC$ + 264 + 766 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533246 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + POINT04.ICO + 1078 + 1999/11/02 + 23:31:06 + .A... + POINT04.IC$ + 388 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533257 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SA.ICO + 1078 + 1999/01/30 + 14:04:32 + .A... + SA.IC$ + 360 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533267 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SG.ICO + 1078 + 1999/01/30 + 14:04:48 + .A... + SG.IC$ + 360 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533278 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CUMP.BMP + 1078 + 2000/01/14 + 7:26:42 + .A... + CUMP.BM$ + 559 + 1078 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533289 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONTALBASTRU1.BMP + 1440054 + 2000/01/24 + 4:03:24 + .A... + 13540551.001 + 192347 + 727040 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .T. + 13533300 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + PLUS.BMP + 382 + 1999/11/25 + 13:36:30 + .A... + PLUS.BM$ + 165 + 382 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .T. + .T. + + .F. + 13533335 + + + AppDir + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SETUP.EXE + 74192 + 1996/10/29 + 0:00:00 + .A... + SETUP.EXE + 74192 + 74192 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533400 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SETUP.INI + 149 + 1996/08/21 + 0:00:00 + .A... + SETUP.INI + 149 + 149 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533402 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + ACMSETUP.EX_ + 172454 + 2000/01/30 + 22:52:46 + .A... + ACMSETUP.EX_ + 172454 + 172454 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533404 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + ACMSETUP.HL_ + 7079 + 2000/01/30 + 22:52:46 + .A... + ACMSETUP.HL_ + 7079 + 7079 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533406 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SETUP32.STF + 3337 + 2000/02/01 + 3:45:34 + .A... + SETUP32.STF + 3337 + 3337 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533409 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SETUP.TDF + 84 + 1996/08/21 + 0:00:00 + .A... + SETUP.TDF + 84 + 84 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533411 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + MSSETUP.DL_ + 141323 + 2000/01/30 + 22:53:36 + .A... + MSSETUP.DL_ + 141323 + 141323 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533414 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + WIZSET32.DL_ + 26212 + 2000/01/30 + 22:53:58 + .A... + WIZSET32.DL_ + 26212 + 26212 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533417 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + HLP95EN.DL_ + 19145 + 2000/01/30 + 22:54:00 + .A... + HLP95EN.DL_ + 19145 + 19145 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533420 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SETUP.LST + 1136 + 2000/02/01 + 3:45:44 + .A... + SETUP.LST + 1136 + 1136 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533423 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFPOLE50.DL_ + 84383 + 2000/01/30 + 22:53:18 + .A... + VFPOLE50.DL_ + 84383 + 174592 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533481 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + FOXPRO.IN_ + 21579 + 2000/01/30 + 22:52:50 + .A... + FOXPRO.IN_ + 21579 + 48606 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533485 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP500.DL_ + 346860 + 2000/01/30 + 22:52:54 + .A... + VFP500.DL_ + 346860 + 461824 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .T. + 13533488 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP501.DL_ + 336840 + 2000/01/30 + 22:52:54 + .A... + VFP501.DL_ + 336840 + 459776 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533488 + .T. + 13533490 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP502.DL_ + 333354 + 2000/01/30 + 22:52:56 + .A... + VFP502.DL_ + 333354 + 471040 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533488 + .T. + 13533494 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP503.DL_ + 344327 + 2000/01/30 + 22:52:58 + .A... + VFP503.DL_ + 344327 + 487936 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533488 + .T. + 13533498 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP504.DL_ + 343355 + 2000/01/30 + 22:53:00 + .A... + VFP504.DL_ + 343355 + 488960 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533488 + .T. + 13533501 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP505.DL_ + 345648 + 2000/01/30 + 22:53:00 + .A... + VFP505.DL_ + 345648 + 491520 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533488 + .T. + 13533505 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP506.DL_ + 250121 + 2000/01/30 + 22:53:02 + .A... + VFP506.DL_ + 250121 + 362768 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533488 + .T. + 13533508 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP5ENU.DL_ + 271043 + 2000/01/30 + 22:53:38 + .A... + VFP5ENU.DL_ + 271043 + 727040 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .T. + 13533513 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + VFP5ENV.DL_ + 19595 + 2000/01/30 + 22:53:40 + .A... + VFP5ENV.DL_ + 19595 + 43520 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + 13533513 + .T. + 13533516 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CTL3DNT.DL_ + 15600 + 2000/01/30 + 22:53:16 + .A... + CTL3DNT.DL_ + 15600 + 27136 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533528 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + MSVCRT20.DL_ + 154559 + 2000/01/30 + 22:52:46 + .A... + MSVCRT20.DL_ + 154559 + 253952 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533531 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + MSVCRT40.DL_ + 183001 + 2000/01/30 + 22:53:18 + .A... + MSVCRT40.DL_ + 183001 + 326656 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + 13533534 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + OLEPRO32.DL_ + 15904 + 2000/01/30 + 22:53:18 + .A... + OLEPRO32.DL_ + 15904 + 32528 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533538 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + OLEAUT32.DL_ + 323508 + 2000/01/30 + 22:54:00 + .A... + OLEAUT32.DL_ + 323508 + 491792 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533541 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + ASYCFILT.DL_ + 75818 + 2000/01/30 + 22:54:00 + .A... + ASYCFILT.DL_ + 75818 + 120592 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533545 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + STDOLE.TL_ + 7136 + 2000/01/30 + 22:54:02 + .A... + STDOLE.TL_ + 7136 + 16896 + .T. + 0 + 0 + 0 + 1 + .F. + .T. + + .F. + .F. + + .F. + 13533549 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + CONTALBASTRU1.BMP + 0 + 2000/01/24 + 4:03:24 + .A... + 13540551.002 + 209019 + 713014 + .T. + 0 + 0 + 0 + 1 + .F. + .F. + + .F. + .T. + 13533300 + .T. + 13543016 + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + SETUP.INF + 8759 + 2000/02/01 + 3:45:44 + .A... + SETUP.INF + 8759 + 8759 + .T. + 0 + 0 + 0 + 1 + .T. + .T. + + .F. + .F. + + .F. + + + + + .F. + + + + .F. + 0 + + + 0 + .F. + + + + + +
+ diff --git a/Grafice/downArrow.bmp b/Grafice/downArrow.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1f06b079cb5804d7b64b4f6ed8dd83dfb9110b5b GIT binary patch literal 1998 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 literal 0 HcmV?d00001 diff --git a/Grafice/entitati2.bmp b/Grafice/entitati2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2928dfbf993d6a0d0614fa15476e5c252845be1c GIT binary patch literal 7534 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 C7v!b@ literal 0 HcmV?d00001 diff --git a/Grafice/f1.jpg b/Grafice/f1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3bff03ecdd2b1bcc3196cfd52bed5e9071bf408c GIT binary patch literal 9291 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 literal 0 HcmV?d00001 diff --git a/Grafice/f2.jpg b/Grafice/f2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8e5353965dc7453a7b864594ccd0be5401c83f64 GIT binary patch literal 6403 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 literal 0 HcmV?d00001 diff --git a/Grafice/fact_sus.bmp b/Grafice/fact_sus.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e07603dfb0df6dcdf8511e58e33664e7adb0c545 GIT binary patch literal 1282 zcmb`F%}>){9LGDhZgrzq6 z0m6Z3;>i#bf@UX=hJ-{fcu_*4i3e{UH6|W>iTLZ-EF*g3n>;Uho=?6{zrSCvTyMd# znve;@MA(I3urN#*Q9FNat}V6cGR*oo27Lj&0Uht`?0m0Qt3Ov)SC6;0whq_U)^q@a zdu)GyA3HcWXgNAMD!<*_EFErdW5C!qHa3W-ySr2G_Vy|-7ZxfnCMGJ+2M2FHDHbcw zBx!uzW-C3SDCIte{a#vH`n9sM@@-~j=4+)=`7u8~|9N_P`s2Oj| zaw1hz8(V!f9+Df7f{=>-&BOpwRTcF@Vjt2@L57bQi^($50fu3;Tux5*_MX@oOk5N+ zP4ab8bXJnmAUom6^{WUe1`~-OpO5j76s@`JL`{x_i1Gu-V8W4*{rvZUKh z(!e+p(NxCn6wWY#U?i4cNSb0Ygk2F5`iFPtnteFjCZwcJFV*I9I-Jg0wzG^arAwnc zw7aVwjBqvka5hC%QmF*(@pN=I7$O7RHF9x6LQ#@JRPs`cR4*byWT0^d!{SI$1VM~u z87Av&7-gF3!`hOUP&6h&Hb(o)xS*|u4{o*C@F;XYnnk%fWA92Urx~l+Vlm^va5xga z7#7-F+mp$pAj(aQ*=#YJalfBs*&u5ZgpfZFj)*b%JB_!%#cajdAjfe5T|5t#qW*U_ UF;?8q0>IY=Ok9Ty=6rU40Qt_nPyhe` literal 0 HcmV?d00001 diff --git a/Grafice/facturi_jos.bmp b/Grafice/facturi_jos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..327e09bb0ad201e62eccc8ce38c65bac5aba38fe GIT binary patch literal 4050 zcma);O^6%k9mYqRFMYo=EA8%#b~KW9^{v&{N*c}VNOD?yirqMn()8dQj5o0l=_RIH z6Jt_B4h9#t(7H()Q)p;{8&i6SDVVyak_JlMrD-UIo=Oh|_ipH|&;Na;{Q$T0KN?9p z(*HNl^SmG0uYT`q{q51CKYsVEx8D2JE3dqIm$ALyT)Oo8n>TKJcH_-A zfBWrg*FOKw{{HW-z46Ac_xJZ7ee3ntAM9Pe{P60PE5Eq%+G}?&@9q8M)vH(Exq0*E zrx!0?{PdeIzkL7eFTL~$UVnD(+_?|Wo;~~X^XJch{NjZRAD(~y`MY5l-q{%r-}fey zJFQOVcB9$+L2oel>1;m#@pJPzZn1yk`t|F;UwQGu3ol%+Hk*A^DxFL^?M!C;jaqGM z@1u`4QJteFdLwFUbL(Vn;&1)|U992|f8i1`-2Fdl=j3-5f9&io4ls89OAQy*>-C1c z;cze*?C=NPoUUgu@YS82Awuf);Jn)%^+$LG>2&AuU&jn|;pjmWZc8<$8g-ELs52UO zy8sRF2?-kXj|lxi|Ck{h?E#mA4981*&qPywzwlI-O># z)f#oVFA9r_ds*hsQ|R}{trh@{a=DD=6e@-jZ@0?jD&#bq&DIDQ0T>OCH@pZ2rHJbw zG@C@=fLKh`HI&LYr%ZFJ4h&I7G+Kj^@Iu|xj61!(}ZOhz$1l%|pz$SH$^ zY>2|E4-|9&u*8g8O+t_d1_3fNDn^AfGMWlZnoPOnYPH^Ow%QBKh%p%s7T7n$_fA|2*Rb% zkQB+Md}T;stWYY}1OyDE((1NGt!BMZbPF-lH%xOS5?NhaUx$YI+&39N$QT1dk{Fu= zMhXzPL4iT*ktFePO(hIpjzp!kwbk`(b{#eX1-(@Gc_D_curQp4MjE42s{uh?s2|1W zhMS5RGj1T8&Ej<)pc&s;6c|1-IdcZi(zaWyatJ;Y2wEmpL>kk~*&0a@j1WI(#}$bv z(=$W}Of_9_O4V8$N{$#vv|e?Ip-qW_G{6bMV*uV6hCv8Syo{c*3t$igA7D>tLIvWe zmf=OscrcM&2LozCQ(00JW}YD%GoLXT)0OKWGsF;8uM01#EcN3t!5qW#=R)vlt=0emX}A_Hn3e@#M+4Hj-TIK_xW zneSH=Sp_4H2?9t7j0PcUMY58PsRqq~5F1x8C&qd(Er>k=p>I zR3aTEA;U!;WTt{~F=bH|OcJQVmv|8i3m+RIeyP&&+y=}*2(H2hS#e278mTgs;fF4h z$$(?bX3RKZNV25){=}d9s;Vcz;1I3@0M0-l7L@3^DheFgFeID`ZpE+>qD-S;7-~k> z6S=rR95Ys@lsDz#d06q|g10l%6+Q`96o{}gy zu1$vnCB)#TMOr{Xz-b*%c$Y{45YNS}oW&yrhIHf|EFL`a^gtZ>4LXPdF-VwGsGR`G zBo~1(u>i5a%5fcJCC`(fL~V!=MF@NakYqds187gib9msOkrfq>LkDkMJ|PCe(7}s; z4-DcEEQvcW`pFb3cani_(I;+C@5yv>p#%&eL$scFCLPqw?~N{+8N79=6qb|F&wU8Y cQ8(=I2N)zzsW2)(hX z-8gZQ215y{AvFX;*{i@}==Q1!Z3@m+9O}~KqA5w~MF^!3=zafyKJWL9w5!xtdA>Pl zXZ8N(dEW1v*?r>spQR#9&RQhW#;5OMcd@TU672es#!l?;9UN)@?7v@s{m*}Y_0{M9 z`tr+1|M}vJzx?CVPanR2a`N}vZ@ls7m$z>}y!ZCo508(I-v9l{$sg{%`R1Kp-??)i zKR@{7!GkNGfAGO4ufO{0N58mr>u;~W_S(r?H*P$CluAASrz=eZtwIREI`XWzU0%rn1x`qHKQKfHYT z`26|v?;ac+{Px0y3&&4gym<7zgM*_VT)cSlB%R5ZnfJ({9aLI*|0Tj^7Qt0 z^YHk%TCH|4zKtqX8tCDZ0pep8t$wz zc1EKe8hj(d?(TRv9`bLq5`O5N`5ZD(OZQ~=MHL2)(C%P77!1(salb#t9ciHalt4f9 z-~*-S=!PpA?4BF!4hECKWHM=E9}I}eH0%$DJ#6Eh-WVpwLt;RogEJW1AElEHR~sB$ zVT=Kp8uw`Q;9|&ppj+f0*7=Rb6oBsESj#PX3jLtO10VPV12dF8yl1rg$z#Uj|bzP4Fk+UrD~cvS(YGG&S5QeJKG(E zVw?qJ4f1KO2rY<&a9kHpsN-lF1!5dv7^St> zI%N>TMt#q=(MmFrLlZQ`bzOfR%oT6uxT>H@#32&Qber34tHme)!AB3pT&+oGyKCl> zqNq8J=li|~#nhSaxoS+1s4go#k1G|prI|R zgKnrkCRB^XHuB8FeD2|AOtQ*?1)ht}sE)5>Dn^4KTh!CNHZdT}YE~+8&J&O#4?-%n zff)Ys&ji7MXpr9Ab|lyD63gDbMA}ii^?od7C0k_G6o|=VMLqm6Tw%Ln45Z|9{On6pjb$PEM3!7 z#VIi;%SOr%qES}Awib;>qOPKFgd)nhve5;izEy`+UQP&NPoj+3t=AcZ7)v#p-HIuzqDK&x1?x*CMl>o2=mbnmJx{{IPsnDuRs$sT z5i%N9v(c^Q;;JSnfI#4+rV=3{QZS3=jW_-LXxBus2ZPAaqpe7v%J z@_{t-6(48_o?S;v$T=NpnBare<6x9cGa>nbKMiL1T1;b$BtKjAvBnspNMXt~16d4W zbUDQ^FtJGlA&QGv4b2T2yK02_aA{)TgBdA@K5FO>d?1TNufo80v8YtO;^)C?LnsS; z$hyv>Fb3)w!z702q9K7J34##gkImy4G%*={6HXxbAPY=p84N5TJfI4_ku`z6(;mkV zlL@(~myJyW`zfPLJ5LaNhA_U>~cJT=7=s< zI{s9^0sRlalyj9NY{X0O!L;y!))-|NF*9+QMg}7e8Zv1D+9PUg{rWjvfJGn*#RY_X zoRMzoxeS+{Axe@c?70<0fi)>a#7o(bQCel_q)agsSPKfTX648khYE!fDZ5!(FtFyr zP1lQzM2BJ#U#9-R4K!S6pHCI-8_y{I?XNc`fMo1Apd+X7E1_$odUBX6|w3i0e7ZxDq_&RF__4F zp-6>ils=`v$!RhFvR4qOMd|hI`Zq)j+!q5I06?%owb;XB gJR4tM?%yD+lMjwy0hsBt#?$L*6#rk<>IE?V2l~$sqW}N^ literal 0 HcmV?d00001 diff --git a/Grafice/info_jos.bmp b/Grafice/info_jos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e4fbfde86d123fd81509b545284b61c52494b58d GIT binary patch literal 4050 zcma)<-HRLN6~;B1(Z@<7&F<=BB(0>;*GQw0wCRpMR?@CCY4L^2IwX)_Nb#Kwu8VKd z&~3qOQyN2Jw%~wcTxvtXjWIOjqOEZ;x=gt5@$|xpL*g@c1%Ub=kwcOTri@yXr0cYRNuJc&Mj{5bLG(WA;s3$v=Mg^y!bjcjnC1lc!Go z`t+GIzdv!}#2=0yKmOrsufF=>cV2(}#@^oEZ;l)}^4nv_j@@|W<(EHrX>acdwEs5} zi9E_?v-cgxxwf;j^Q-<~aM|g0uM9_{_w9E3z-l(%dtqzq`eZV>I(6M2nU?j_O~-k0 zcQV;Ldi3bufA-c})oQhkV>a@s7;4p8t%_q_v(M?(tXee-f3HFZe)|8^?o#dS?(S^U zMg#414#xI#Yq&ie4*UK7c#IuGztvMA_HM5`=+c+yg||5aj-Y*edzW5NyZv2(XjoOV zW|pd!)o$Bx)P`uFF(XSU(RShX?nieWT zjcK);Fhp~S#0AEDt~e7(f?!r^MG!)v;QC~uX|k#kq|pLoBrrgL?Y^|4`e*as8HMM#$YzV&IE7?PrdJSp&F z1LKva1M|Ctar$F)lMulK#V@T-Q_1O6!<{HD2SX}SF)fmEh#^L|=ky$>?{ppV(QI4D z5;j6XS&@8-mPsd*(6NfI#ubK?OBPy=S{G%L7tHo*3^ta7l0cG*EGY?TZ8}YY0UZe` zA;tYN{1_EL8Vn%}F}&(KV~C&yWf9~;!!2W~69ajm)+EWV1QCi+w(2v8J!jaCZ8tlJ z!l+OZicgzpQWr-Aan`Yc5CD@#tyC~_~zB= zOs-UB>#!{EGrn{*&puw7#U9mUQ#+Yn;$)&H%cW?z(BH;XGzHLJ(Ho$8Q$Xf<(OLBD4TWD z)6v4RiXQiCb0<9SD>|Trt{wyu&KU-+FLa>o@%S)H26{tQwDiol_-T)^^x<@}s!_-1 zHeg100l}JCiGM8}Xjkf0b;Bss4U=>bqf{yzIW;Ih$ID_KbSGGamtdH5n5JM@2nMT? zLxX)i9kV(W6^pl`RqI>(}0>K9d%-0GzBAuMqgc67wXd&xW^Xy zgV!bD^W)B%+aMhVF#su*SqFPr(1AY9P-#njhqYC(EHP%72CXg0FipW&yjr}rN}(1y zESXAYrfWV#8jEK01_@yuWQ7^3j62x!tpoQjU0<87CHm=pxgtd8R3S$`8Dt>Sps`7zXP= ze*uBDMT4Nr79c5|S7meau*Xum7AGgcSj1znjxsaK1!E(J2TRb;5HH4b^&3Q~3u%Z& z*A!oz(ul0MS;(M*7l>dTFase-B#!IdIAq_LIlH+rx^fHK}QZt12=JBA~TOsKvF4vZQVn_$;wI|Rlt^q7Xd)G zKnDw9B|ZuLsVAw!P{}mjC73{YhF4ayd3X^;4C*xy&>(q0)L4)pai63}3GOf&5_sYh zA}-4TgyE8o8ARwPVo|U&BoYY$BIE1$o3@Ig=OX}=gp4=?VK8R%NeMB~^$9P!l5D1Jz1Y5~PT^CBiA*PTTQ9uR)v2ZwoW#vQ( z1sKkWu~6^=B~gNeV*OLz@8-^*kLBR5~hj;AO?FZh_e_(Kt)u{ zTpWp!rRj456h=XT5~>&q^NA1vf*SPc0)r5|WwUM;fUFyJqbsyw)?z&q03aCu1B6Z; A)&Kwi literal 0 HcmV?d00001 diff --git a/Grafice/info_sus.bmp b/Grafice/info_sus.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a9c617f22ebc4c51853f835fc8ce7de3143cb91a GIT binary patch literal 4050 zcmbW4+lw3b6~|{r(&#d~x{X#E-B&AVW~9+JJEPTYwJW*BVA9kCib*l}A;G4Q;+HgK zTjD~BvkxvCD5ThRsG+85HVu9$q}XXmpX$1$O=}wZP$+#V_&+Fqb-(A#j5Mk-y`10Z zHzQf+GvD()M`Qa7XFp2`979nMOk8~)uMu9N5aZ8pCHchLDeUz6`-2A${&x57-M{|y zgAaax_ujp~ynFNJXGd?n_2;*bkNwY~iV)3V;)?skvcruoiuJ3Bu-; ze{hg74CD06ue`EFVFh-+T-_SWw~eg^zr#jnyr5s`CIQBfNyG7II35mgAVw6EzT@oL_U>-q8B7+Lfr}+$G#=4SM#I4b zYcz4wNr63`_IhTgW7`g-42KTq)9%o<0|pdR{!=j_PJd+Ey`FCAx@B3mje-WCy2ao` z$AB1%;Cn;7_W>JWPb~|b*laX(tJmAL`x7iLoIZ5)`^0c%PbRo2-y0N8M-}$8XX%Yf zr4m<^SVQl1Yz$JL7cO>(y9lZU-|vsebfQoT@FE`_kFZ&Z#iVsbiB}jx=I-K85xXu0 z4BXvsp2IRHxDNrK0U|bIv3PPmR}`rNh}oF}g7jsO4wAME_u95Qoi2<-8L_04oX=*8 zBF43fuAAK{QG!9WutQWM(@=^HMAy_CM2JgbYL=ZJC~JZgk3osmMVI$5FMEEtIy@<4 zm;)p2scGq3Ajlv9kxql52ri_d8{N)c#|PjH25R>Y$7Vtoh(<+&50a2n=2>Q};j5%% zv#uM)3WOLoEezq*nc@T|tabyilVFsrF8ea1sxt>ie}>Ipbnmh1k&-unGqtrF~d7RphiSJ)kfPe zpoQdg$q!=S5k^5G+Vuu?LqI=gR0c<81MlD~K_t{ut+zZ#x7!87OP_Y8oxKGjc`(bW zD%|uUqpB)TiL%a0Ds@rhogtR zXST@;Am-{yw*MyUx)Mroj{)KE7(`$MtH5CTS^s{fVRMbG)>;_EOwcvQJ6q!0%4 znK7SHlS8Nmz6Ke1(Dh8ypwU7{atjr?oki#_HIrpe&>UF8LRtoNms46#EFDkzA%&ythsyw=2}E-fZ3%-Bkc~Oz@z@T| z2lXX{M{BeQ9Y9bm%|;7^W}S4zR~eX7H&*5@Gn3uFf{!$ul?!F}C=kQT$EjQaBu`2pB_yO$JYlrugj50| z7y%ij0`k4(=_rE(M6p`*A*d$-Eo%z?%|M5Uw`2vYAQ@f|h;>wuN{d3%w0s_85{4E^ z6nMD=jFv3tQ40A%n;XQ?`1VYot)!Juj?5G(;R=8R(jd#xe1Q>uKF$#^wDKaIWk89h zML{79k)Q}05n@qNu>y&d@?ap5DH_#LDrlur9ubX37nHC}02$L6%>&^@gwBzCgmv(Z zmm6w%=;;cIm*L(xbfROWCH;26r@a+L&WUx@Ml`|M5P)Hqd7Z^ZGQ29dd`s(>)tVPF>~e z8et^a~BKr?a>j#H)*+Pu^iFE5nEs41hqufaMEj4|rM7d2J zv3zZObP}T{VKq#Pp~6D3Cv&3y6;Kmu#Zcz_pQ&G2A4_!%U!rwYJA~DuSHuBjwkE|B Xnm!P3%@{8d?5{)ojX7kD24S8v)8{ND literal 0 HcmV?d00001 diff --git a/Grafice/open.bmp b/Grafice/open.bmp new file mode 100644 index 0000000000000000000000000000000000000000..59c9eeb7fff7e857e23e896341e79badcb888b78 GIT binary patch literal 246 zcmZ`xu?@p83}es^0z5cpbS#h$viF_N8hK7Wh_CA6!J({91xkygK*`!)A0*zghq!*Z z;GToO>VOLFX;QVKqqU~Nn1wN-6ZImJ@CO!C){L3Su%>k-1 z;Z4!MDtZ@>?%AVr@@OADS_esUFKO%~^{u3~ajC9dDl3<=Dcm|^<@BnttU@#aA27|$1Fc=I5i@{(p7z_rmVqT~KEWl108@emd;t}`a-9GG literal 0 HcmV?d00001 diff --git a/Grafice/outlook2003bar_3.bmp b/Grafice/outlook2003bar_3.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1308d00d5b68d5c66f78ac463fb7d9ef171e6ecc GIT binary patch literal 182 zcmZ?r-Npa`W{Q1B6_Rs(A_kRBG Re(>{u|Knf(CqMo59{^*PWQ+g+ literal 0 HcmV?d00001 diff --git a/Grafice/outlook2003bar_4.bmp b/Grafice/outlook2003bar_4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c5bfbdfae1dd52e531635aa346d7230cbb9a1ce8 GIT binary patch literal 182 zcmXwq>k7dD07mBpJcFN}zytX2p`;`!DJdx_X)X6lYq_muXf2W?iR6Bp>s&{DHgf8m zW46%550g5hs!rALz1APRo**>;j7cjdlnv9U9kaLt^Q05=lnaZD8_S#rE82@S-NR1QL7L)dX)>?;u*sw9qe3MV0kvzUO~NJDOBacR-Gwi(CzOJbEmieGbZi Ohcc|;H4^Y1i}(Oe2X24> literal 0 HcmV?d00001 diff --git a/Grafice/outlook2003bar_5.bmp b/Grafice/outlook2003bar_5.bmp new file mode 100644 index 0000000000000000000000000000000000000000..bc0f6279a263240f8131e285dba87fe97376bb0f GIT binary patch literal 182 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 literal 0 HcmV?d00001 diff --git a/Grafice/plcont2.bmp b/Grafice/plcont2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..23d4e7df8226819c52c53df4c6622f49dda9b147 GIT binary patch literal 7534 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%0DC|1gzxIf>{6%&6_s|KENP4LSX@exQWxJ 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 literal 0 HcmV?d00001 diff --git a/Grafice/roafurnizori.bmp b/Grafice/roafurnizori.bmp new file mode 100644 index 0000000000000000000000000000000000000000..649cd5c2c2845dc03f085b748e88d90547e7da3d GIT binary patch literal 367014 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 htwyL;%>I>6;45Y (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +*4 +*REPLACE + +* +DEFINE POPUP Shortcut SHORTCUT RELATIVE FROM MROW(),MCOL() +DEFINE BAR 1 OF Shortcut PROMPT "Grupate dupa luna \ + +* +PROCEDURE BAR_1_OF_Shortcut_FB2P + DO incasari_facturi_lunac IN orap_terti_comun WITH .t. +ENDPROC && BAR_1_OF_Shortcut_FB2P + +PROCEDURE BAR_2_OF_Shortcut_FB2P + DO incasari_facturi_lunac IN orap_terti_comun WITH .f. +ENDPROC && BAR_2_OF_Shortcut_FB2P + +* diff --git a/Meniuri/roacontracte.mn2 b/Meniuri/roacontracte.mn2 new file mode 100644 index 0000000..8655fd3 --- /dev/null +++ b/Meniuri/roacontracte.mn2 @@ -0,0 +1,125 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="roacontracte.mnx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +*1 +*REPLACE + +* +DEFINE MENU _msysmenu BAR +DEFINE PAD _000000001 OF _msysmenu PROMPT "\ + +* +PROCEDURE BAR_1_OF_Utile_FB2P + *!* do form start00 + DO start_firma IN ostartfirma.prg +ENDPROC && BAR_1_OF_Utile_FB2P + +PROCEDURE BAR_3_OF_Utile_FB2P + DO apeleaza_calc IN oproceduri_comune.prg +ENDPROC && BAR_3_OF_Utile_FB2P + +PROCEDURE BAR_4_OF_Utile_FB2P + DO apeleaza_notepad IN oproceduri_comune.prg +ENDPROC && BAR_4_OF_Utile_FB2P + +PROCEDURE PAD__000000002_OF__msysmenu_FB2P + DO viz_alerte_garantii IN oproceduri_roacontracte.prg +ENDPROC && PAD__000000002_OF__msysmenu_FB2P + +PROCEDURE BAR_1_OF_Operatii_FB2P + lnRaspuns=aMessagebox('Doriti sa importati in baza de date ca atasamente fisierele din sistemul de fisiere (local/retea)?' ,4,'Import atasamente') + If lnRaspuns=6 + Do import_atasamente In oproceduri_atasamente.prg + Endif +ENDPROC && BAR_1_OF_Operatii_FB2P + +PROCEDURE BAR_1_OF_Ajutor_FB2P + DO arata_manual IN oproceduri_comune.prg +ENDPROC && BAR_1_OF_Ajutor_FB2P + +PROCEDURE BAR_3_OF_Ajutor_FB2P + DO arata_modificari IN oproceduri_comune.prg +ENDPROC && BAR_3_OF_Ajutor_FB2P + +PROCEDURE BAR_4_OF_Ajutor_FB2P + DO arata_versiune IN oproceduri_comune.prg +ENDPROC && BAR_4_OF_Ajutor_FB2P + +* diff --git a/Programe/1proverb.prg b/Programe/1proverb.prg new file mode 100644 index 0000000..1b90d6b --- /dev/null +++ b/Programe/1proverb.prg @@ -0,0 +1,107 @@ + +WAIT WIND 'Se genereaza raportul. Asteptati...' nowait +SET SAFETY OFF +COPY FILE &DIRGEN\DEVIZE\DATE\TEMPO\PROVERB.* TO &LOC\&NFSCURT\TEMPO\PROVERB.* + +SELE 0 +USE &LOC\&NFSCURT\TEMPO\PROVERB EXCL ALIAS PROVERB +sele proverb +zap + +public m.g,m.nrinmat,m.tipauto +LOCAL M.DENUMIRE,M.CODMAT,M.CODFURN,M.CANT,M.PRET +STORE '' TO M.DENUMIRE,M.CODMAT,M.CODFURN,m.tipauto +STORE ' ' TO m.nrinmat +STORE 0 TO M.CANT,M.PRET,m.g +sele rul +set filter to subs(nrord,1,1)='G' +SCAN +m.nrord = nrord +M.DENUMIRE = DENUMIRE +M.CODMAT=CODMAT +M.CODFURN=EXP4 +M.CANT=CANTE +M.PRET=PRETV +m.fel = 'A' +do nrcirc +SELE PROVERB +APPE BLANK +GATHER MEMVAR +SELE RUL +ENDSCAN +sele OPER +set filter to subs(nrord,1,1)='G' +SCAN +m.nrord = nrord +M.DENUMIRE = DENOP +M.CODMAT=CODOP +M.CODFURN=codfurn +M.CANT=TIMPN +M.PRET=PRET +m.fel = 'B' +do nrcirc +sele oper +SELE PROVERB +APPE BLANK +GATHER MEMVAR +SELE OPER +ENDSCAN +sele proverb +set order to tag codfel +TOTAL ON DENUMIRE+STR(PRET,10) FIELDS CANT TO &LOC\&NFSCURT\TEMPO\PROVERB1 +SELE 0 +*USE C:\CONTAFIN\AUTOSTAL\TEMPO\PROVERB1 +USE &LOC\&NFSCURT\TEMPO\PROVERB1 +************** +INDEX ON TIPAUTO+CODFURN+DENUMIRE+STR(PRET,10) to &LOC\&NFSCURT\TEMPO\PROVERB1 +*************** +report format proverb TO PRINTER PROMPT preview +USE IN PROVERB +USE IN PROVERB1 +RETURN +************* +procedure nrcirc +m.g=1 +m.tipauto='' +m.nrinmat='' +do case + case subs(nrord,1,1)='/' + m.g=2 + case subs(nrord,2,1)='/' + m.g=3 + case subs(nrord,3,1)='/' + m.g=4 + case subs(nrord,4,1)='/' + m.g=5 + case subs(nrord,5,1)='/' + m.g=6 + case subs(nrord,6,1)='/' + m.g=7 + case subs(nrord,7,1)='/' + m.g=8 + case subs(nrord,8,1)='/' + m.g=9 + case subs(nrord,9,1)='/' + m.g=10 + case subs(nrord,10,1)='/' + m.g=11 + case subs(nrord,11,1)='/' + m.g=12 + case subs(nrord,12,1)='/' + m.g=13 + case subs(nrord,13,1)='/' + m.g=14 + case subs(nrord,14,1)='/' + m.g=15 + case subs(nrord,15,1)='/' + m.g=16 +endcase +m.nrinmat = subs(nrord,m.g,20-m.g) +sele masini +loca for ALLT(m.nrinmat) = ALLT(nrinmat) +if found() +m.tipauto = masina +else +m.tipauto='' +endif +return \ No newline at end of file diff --git a/Programe/Log_mesaje.prg b/Programe/Log_mesaje.prg new file mode 100644 index 0000000..c008f4a --- /dev/null +++ b/Programe/Log_mesaje.prg @@ -0,0 +1,96 @@ +*!* in programul principal : +*!* public poLog && obiect pt logarea mesajelor sistemului +*!* poLog = NEWOBJECT("Log_Mesaje","Log_Mesaje.prg") + +*!* pe parcursul programului: +*!* lcLog = [1] +*!* poLog.Log(lcLog,PROGRAM()) + + + + +DEFINE CLASS log_mesaje as Relation + +cLogFile = "c:\log.txt" +lLogging = .F. + +&& ------------------------------INCEPUT: Init ------------------------------ +*!* Procedura: Init +*!* Parametri: +*!* Data/Ora generarii: 20/02/2004 12:41:53 +*!* Autor: MARIUS.MUTU +PROCEDURE Init +LPARAMETERS tcLogFile, tlAdditive + + + + + lLog = IIF(FILE(ADDBS(JUSTPATH(SYS(16,0)))+"LOG.txt"),.T.,.F.) && daca exista fisierul log + this.lLogging = lLog or this.lLogging && creez log daca exista in directorul aplicatiei fisierul sau daca proprietatea lLogging = .T. + + IF !this.lLogging + RETURN + ENDIF + + SET console off + SET TALK OFF + + cLogFile = IIF(EMPTY(tcLogFile),ADDBS(JUSTPATH(SYS(16,0)))+"LOG_"+JUSTSTEM(SYS(16,0))+".txt","") + this.cLogFile = cLogFile + + IF PARAMETERS() < 2 + llAdditive = IIF(FILE(cLogFile),.T.,.F.) + ELSE + llAdditive = tlAdditive + ENDIF + + IF llAdditive + SET TEXTMERGE ON TO (cLogFile) ADDITIVE + ELSE + SET TEXTMERGE ON TO (cLogFile) + ENDIF + + \ + \\<> + + SET TEXTMERGE TO + + + +ENDPROC +&& ------------------------------SFARSIT: Init ------------------------------ + +&& ------------------------------INCEPUT: Log ------------------------------ +*!* Procedura: Log +*!* Parametri: tcText +*!* Data/Ora generarii: 20/02/2004 12:48:57 +*!* Autor: MARIUS.MUTU +PROCEDURE Log +LPARAMETERS tcText, tcProgram + +IF !this.lLogging + RETURN +ENDIF + +LOCAL lcText, lcLogFile + +SET console off +SET TALK OFF + +lcText = IIF(EMPTY(tcText),"",ALLTRIM(tcText)) +lcProgram = IIF(EMPTY(tcProgram),"",ALLTRIM(tcProgram)) +lcSpatiu = SPACE(10) + +lcLogFile = this.cLogFile +lcAddText = TIME() + IIF(!EMPTY(lcProgram),lcSpatiu+lcProgram,"") + IIF(!EMPTY(lcText),lcSpatiu+lcText,"") + +SET TEXTMERGE ON TO (lcLogFile) ADDITIVE + +\ <> + +SET TEXTMERGE TO + +ENDPROC +&& ------------------------------SFARSIT: Log ------------------------------ + +ENDDEFINE && log_mesaje \ No newline at end of file diff --git a/Programe/actualizari.prg b/Programe/actualizari.prg new file mode 100644 index 0000000..a071f76 --- /dev/null +++ b/Programe/actualizari.prg @@ -0,0 +1,270 @@ + + +SELE CALENDAR +M=4*RECCOUNT()+4 +OP=CREA('PROGRESBAR') +op.titlu.caption='Actualizari' +OP.SHOW() + + + +close database +IF !USED('FISTOTVdev') + do deschidf with '&dirgen\devize\date\datean\','&dirgen\devize\date\datean\','fistotvdev','fistotv','CALE','' +ENDIF + +sele 0 +use &calefirma\datean\calendar alias calendar +sele calendar +J=0 +scan +scatter memvar +date=calefirma+'\AN'+m.an+'\DATE'+M.nl +if file('&date\oper.dbf') +*DO PR WITH J +*do pfactura +DO PR WITH J +do pordl +DO PR WITH J +do poper +DO PR WITH J +do popersal +DO PR WITH J +do psalarii +endif +endscan +*** +DO PR WITH J +do pclie +DO PR WITH J +DO PSECTIE +DO PR WITH J +DO PMECANICI +DO PR WITH J +do pmasini +DO PR WITH J +DO PMARCI +OP.RELEASE +RETURN + + + + +*____________________________________________ +procedure pfactura +dele file &date\facturaa.* +dele file &date\facturav.* +copy file &dirgen\devize\date\date00\factura.* to &date\facturaa.* +sele 0 +use &date\facturaa.dbf AGAIN ALIAS facturaa exclusive +sele facturaa +zap +sele facturaa +append from &date\factura +sele facturaa +reindex +use +rename &date\factura.* to &date\facturav.* +rename &date\facturaa.* to &date\factura.* +*do refRULL +return + +*____________________________________________ +procedure psalarii +dele file &date\salariia.* +dele file &date\salariiv.* +copy file &dirgen\devize\date\date00\salarii.* to &date\salariia.* +sele 0 +use &date\salariia.dbf AGAIN ALIAS salariia exclusive +sele salariia +zap +sele salariia +append from &date\salarii +sele salariia +reindex +use +rename &date\salarii.* to &date\salariiv.* +rename &date\salariia.* to &date\salarii.* +*do refRULL +return + +*____________________________________________ +procedure pordl +dele file &date\ordla.* +dele file &date\ordlv.* +copy file &dirgen\devize\date\date00\ordl.* to &date\ordla.* +sele 0 +use &date\ordla.dbf AGAIN ALIAS ordla exclusive +sele ordla +zap +sele ordla +append from &date\ordl +sele ordla +reindex +use +rename &date\ordl.* to &date\ordlv.* +rename &date\ordla.* to &date\ordl.* +&&&&&&do refact +return + + +*____________________________________________ +procedure poper +dele file &date\opera.* +dele file &date\operv.* +copy file &dirgen\devize\date\date00\oper.* to &date\opera.* +sele 0 +use &date\opera.dbf AGAIN ALIAS opera exclusive +sele opera +zap +sele opera +append from &date\oper +sele opera +reindex +use +rename &date\oper.* to &date\operv.* +rename &date\opera.* to &date\oper.* + +return + +*____________________________________________ +procedure popersal +dele file &date\opersala.* +dele file &date\opersalv.* +copy file &dirgen\devize\date\date00\opersal.* to &date\opersala.* +sele 0 +use &date\opersala.dbf AGAIN ALIAS opersala exclusive +sele opersala +zap +sele opersala +append from &date\opersal +sele opersala +reindex +use +rename &date\opersal.* to &date\opersalv.* +rename &date\opersala.* to &date\opersal.* + +return + + +*______________________________________________________________ +procedure pclie +dele file &calefirma\datean\cliea.* +dele file &calefirma\datean\cliev.* +copy file &dirgen\devize\date\datean\clie.* to &calefirma\datean\cliea.* +sele 0 +use &calefirma\datean\cliea.dbf AGAIN ALIAS cliea exclusive +sele cliea +zap +sele cliea +append from &calefirma\datean\clie +sele cliea +reindex +use + +rename &calefirma\datean\clie.* to &calefirma\datean\cliev.* +rename &calefirma\datean\cliea.* to &calefirma\datean\clie.* +*DO refRUL +return + +*______________________________________________________________ +procedure pSECTIE +dele file &calefirma\datean\SECTIEa.* +dele file &calefirma\datean\SECTIEv.* +copy file &dirgen\devize\date\datean\SECTIE.* to &calefirma\datean\SECTIEa.* +sele 0 +use &calefirma\datean\SECTIEa.dbf AGAIN ALIAS SECTIEa exclusive +sele SECTIEa +zap +sele SECTIEa +append from &calefirma\datean\SECTIE +sele SECTIEa +reindex +use + +rename &calefirma\datean\SECTIE.* to &calefirma\datean\SECTIEv.* +rename &calefirma\datean\SECTIEa.* to &calefirma\datean\SECTIE.* +*DO refRUL +return + +*______________________________________________________________ +procedure pMECANICI +dele file &calefirma\datean\MECANICIa.* +dele file &calefirma\datean\MECANICIv.* +copy file &dirgen\devize\date\datean\MECANICI.* to &calefirma\datean\MECANICIa.* +sele 0 +use &calefirma\datean\MECANICIa.dbf AGAIN ALIAS MECANICIa exclusive +sele MECANICIa +zap +sele MECANICIa +append from &calefirma\datean\MECANICI +sele MECANICIa +reindex +use + +rename &calefirma\datean\MECANICI.* to &calefirma\datean\MECANICIv.* +rename &calefirma\datean\MECANICIa.* to &calefirma\datean\MECANICI.* +*DO refRUL +return + + + + +*______________________________________________________________ +procedure pmasini +dele file &calefirma\datean\masinia.* +dele file &calefirma\datean\masiniv.* +copy file &dirgen\devize\date\datean\masini.* to &calefirma\datean\masinia.* +sele 0 +use &calefirma\datean\masinia.dbf AGAIN ALIAS masinia exclusive +sele masinia +zap +sele masinia +append from &calefirma\datean\masini +sele masinia +reindex +use + +rename &calefirma\datean\masini.* to &calefirma\datean\masiniv.* +rename &calefirma\datean\masinia.* to &calefirma\datean\masini.* +return + +*______________________________________________________________ +procedure pMARCI +dele file &calefirma\datean\MARCIa.* +dele file &calefirma\datean\MARCIv.* +copy file &dirgen\devize\date\datean\MARCI.* to &calefirma\datean\MARCIa.* +sele 0 +use &calefirma\datean\MARCIa.dbf AGAIN ALIAS MARCIa exclusive +sele MARCIa +zap +sele MARCIa +append from &calefirma\datean\MARCI +sele MARCIa +reindex +use + +rename &calefirma\datean\MARCI.* to &calefirma\datean\MARCIv.* +rename &calefirma\datean\MARCIa.* to &calefirma\datean\MARCI.* +return + + + +*____________________________________ +PROC PR +PARAM J +IF J>M +RETURN +ENDIF +OP.PRBAR.VALUE=J +OP.P=ROUND(100*OP.PRBAR.VALUE/OP.PRBAR.MAX,2) +OP.REFRESH +J=J+1 +RETURN + + + + + + + diff --git a/Programe/genhtml.db2 b/Programe/genhtml.db2 new file mode 100644 index 0000000..e458690 --- /dev/null +++ b/Programe/genhtml.db2 @@ -0,0 +1,2183 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="genhtml.dbf" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* + + + + + 1252 + + + 0x00000030 + Visual FoxPro + + + + TYPE + C + 12 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + ID + C + 24 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + LINKS + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + TEXT + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + DESC + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + CLASSNAME + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + CLASSLIB + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + MODULE + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + PICTURE + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + PROPERTIES + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + HTML + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + STYLE + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + SCRIPT + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + PRESCRIPT + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + GENSCRIPT + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + POSTSCRIPT + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + HEADSTART + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + HEADEND + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + BODYSTART + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + BODYEND + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + UPDATED + T + 8 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + COMMENT + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + USER + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + VERSION + M + 4 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + SAVE + L + 1 + 0 + .F. + .F. + + + + + + + + + + + 0 + 0 + + + + + + + + + DEFAULT + VFPDefault + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + LAYOUT + ListTable + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + LAYOUT + DetailTable + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + LAYOUT + TabCtlList + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + LAYOUT + TabCtlDetail + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + LAYOUT + TabCtlHierarchical + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + OPTIONS + ListOptions + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + OPTIONS + TabListOptions + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + OPTIONS + TabDetailOptions + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + OPTIONS + TabHierOptions + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + OPTIONS + StaticOptions + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + GLOBALSTYLE + GlobalTableStyle + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + TropicalParadiseStyle + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + DesertCalmStyle + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + Graffiti + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + TitleHeader + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + LedgerList + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00486 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00516 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00531 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00546 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00673 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00703 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00720 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00742 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00756 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00760 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00780 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00785 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB00819 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01231 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01276 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01306 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01308 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01741 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01844 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01845 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01846 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + STYLE + WB01847 + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + SortTableColumn + + + + + + + + + + +Dim cField +Dim lSortAscend +cField = "" +lSortAscend = True + +Sub tblvfpdataheader_OnClick + Dim cID + cID = window.event.srcElement.ID + if cID = cField then + lSortAscend = Not lSortAscend + else + cField = cId + lSortAscend = true + end if + if lSortAscend = True then + {{_oHTML.cDataSrc}}.SortColumn = "+" & cField + else + {{_oHTML.cDataSrc}}.SortColumn = "-" & cField + end if + {{_oHTML.cDataSrc}}.Reset() + {{IIF(_OHTML.lSkipFrame,"rem ","")}}parent.Frames("Frame2").datafilter({{_oHTML.cDataSrc}}.recordset.Fields(0).Value) +End Sub + + +]]> + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + NavButtonsCode + + + + + + + + + + +Sub backward_onClick() + if {{_oHTML.cDataSrc}}.recordset.AbsolutePosition > 1 then + {{_oHTML.cDataSrc}}.recordset.movePrevious() + end if +End Sub + +Sub forward_onClick() + if {{_oHTML.cDataSrc}}.recordset.AbsolutePosition <> {{_oHTML.cDataSrc}}.recordset.RecordCount then + {{_oHTML.cDataSrc}}.recordset.moveNext() + end if +End Sub + +Sub first_onClick() + {{_oHTML.cDataSrc}}.recordset.moveFirst() +End Sub + +Sub end_onClick() + {{_oHTML.cDataSrc}}.recordset.moveLast() +End Sub + + +]]> + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + NavButtons + + + + + + + + + + + + + + + +
+
+
+


+]]> + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + SetBodyImage + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + DataPaging + + + + + + + + + +' Page methods for use with Tab Data Control + +Sub PagePrevious + {{_oHTML.cTableID}}.previousPage() + nPageSize = 0 - ( {{_oHTML.cTableID}}.rows.length-1) + nCurrentPos = {{_oHTML.cDataSrc}}.recordset.AbsolutePosition + if nCurrentPos+nPageSize > 0 then + {{_oHTML.cDataSrc}}.recordset.Move nPageSize + else + {{_oHTML.cDataSrc}}.recordset.MoveFirst + end if + {{IIF(_OHTML.lSkipFrame,"rem ","")}}parent.Frames("Frame2").datafilter({{_oHTML.cDataSrc}}.recordset.Fields(0).Value) +End Sub + +Sub PageNext + {{_oHTML.cTableID}}.nextPage() + nPageSize = {{_oHTML.cTableID}}.rows.length-1 + nCurrentPos = {{_oHTML.cDataSrc}}.recordset.AbsolutePosition + if nCurrentPos+nPageSize < {{_oHTML.cDataSrc}}.recordset.RecordCount then + {{_oHTML.cDataSrc}}.recordset.Move nPageSize + else + {{_oHTML.cDataSrc}}.recordset.MoveLast + end if + {{IIF(_OHTML.lSkipFrame,"rem ","")}}parent.Frames("Frame2").datafilter({{_oHTML.cDataSrc}}.recordset.Fields(0).Value) +End Sub + + +]]> + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + FrameScript + + + + + + + + + + +Sub selectrecord(oTableRow) + {{_OHTML.cDataSrc}}.recordset.AbsolutePosition=oTableRow.RecordNumber + HilightTableRow("{{_OHTML.cHighlightColor}}") + {{IIF(_OHTML.lSkipFrame,"rem ","")}}parent.Frames("Frame2").datafilter({{_OHTML.cDataSrc}}.recordset.Fields({{TRANS(_OHTML.nLinkField)}}).Value) +End sub + +Sub {{_OHTML.cTableID}}_onreadystatechange() + if {{_OHTML.cTableID}}.readyState = "complete" then + {{_OHTML.cDataSrc}}_onrowenter = HandleRowEnter() + end if +End sub + +Function HandleRowEnter() + HilightTableRow("{{_OHTML.cHighlightColor}}") +End function + +Sub {{_OHTML.cDataSrc}}_onrowexit() + HilightTableRow("") +End sub + +Sub HilightTableRow(cColor) + nRow = {{_OHTML.cDataSrc}}.recordset.AbsolutePosition + nPage = {{_OHTML.cDataSrc}}.recordset.AbsolutePage + nPageMax = {{_OHTML.cTableID}}.rows.length-1 + nPageRows = {{_OHTML.cTableID}}.datapagesize + if nPageMax < 1 then + exit sub + end if + nRow = nRow MOD nPageRows + if nRow = 0 then + nRow = nPageMax + end if + if nRow > nPageRows then + nRow = 1 + end if + {{_OHTML.cTableID}}.rows(nPageMax).style.backgroundColor = "" + {{_OHTML.cTableID}}.rows(nRow).style.backgroundColor = cColor +End sub + + +]]> + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + FilterScript + + + + + + + + + + +function DataFilter(vFilterValue) + {{_OHTML.cDataSrc}}.object.Filter = {{_OHTML.cDataSrc}}.recordset.Fields({{TRANS(_OHTML.nLinkField)}}).Name & " = " & vFilterValue + {{_OHTML.cDataSrc}}.Reset() +end function + + +]]> + + + + + + + + + + / / : : + + + + .F. + + + + SCRIPT + PageButtons + + + + + + + + + +
+ + + "," > ")}}" onclick="PageNext()"> + + +
+
+
+
]]> + + + + + + + + + + / / : : + + + + .F. +
+ + + WIZARD + WIZARD + + + + + + + + + + + + + + + + + + + / / : : + + + + .F. + + + + + + + diff --git a/Programe/mesaje.prg b/Programe/mesaje.prg new file mode 100644 index 0000000..db77adf --- /dev/null +++ b/Programe/mesaje.prg @@ -0,0 +1,43 @@ +*_________________________________________ +PROCEDURE anunta_rezultat + LPARAMETERS lcCategorie, lcSursa, lcMesaj, llEroare, llInTabel, lnId_ref + IF llInTabel + scrie_in_mesaje(lcCategorie, lcSursa, lcMesaj, llEroare, lnId_ref) + ELSE + DO mesaj With lcMesaj, '' + ENDIF +ENDPROC + +PROCEDURE scrie_in_mesaje + LPARAMETERS lcCategorie, lcSursa, lcMesaj, llEroare, lnId_ref + LOCAL lnOrdine + SELECT mesaje + CALCULATE MAX(ordine) TO m.lnOrdine + m.lnOrdine = m.lnOrdine + 1 + APPEND BLANK + replace ordine WITH m.lnOrdine, sursa WITH lcSursa, mesaj WITH lcMesaj, ; + eroare WITH llEroare, categorie WITH lcCategorie, id_ref WITH lnId_ref +ENDPROC + +PROCEDURE sterge_mesaje + ZAP IN mesaje +ENDPROC + +PROCEDURE raport_mesaje + PARAMETERS tcPerioada + PRIVATE pcTitlu,pcPerioada,pcDataOra +*!* PRIVATE toFirma +*!* SELECT FIRMA +*!* LOCATE FOR NFSCURT=FSCURT +*!* SCATTER NAME m.toFirma +*!* SELECT mesaje +*!* IF RECNO() > 0 +*!* SET ORDER TO ordine +*!* REPORT FORM mesaje TO PRINTER PROMPT PREVIEW +*!* ENDIF + pcTitlu=[VERIFICARE GLOBALA] + pcPerioada=[Perioada ] + pcdataora = get_ora(2) + SELECT crsverificari + REPORT FORM rap_mesaje TO PRINTER PROMPT preview +ENDPROC \ No newline at end of file diff --git a/Programe/onom_clienti.prg b/Programe/onom_clienti.prg new file mode 100644 index 0000000..b846bdb --- /dev/null +++ b/Programe/onom_clienti.prg @@ -0,0 +1,214 @@ +******************************************* +Procedure viz_delegati +Lparameters tnidpartener +Private podelegati,pcschema1,pcselect1,odetalii +LOCAL llAfiseaza +Store '' To podelegati +If Used('v_delegati') + Use In v_delegati +Endif +pcschema1=[''] +pcselect1=['select * from ] + gcS + [.vnom_delegati where 1=2'] +pcorder1 = [nume] +*!* pcfiltru1=[sters=0] +pcfiltru1=[1=2] +llAfiseaza=.F. +gencursor('podelegati','v_delegati',pcselect1,pcfiltru1,pcschema1,pcorder1,llAfiseaza) +podelegati.ca_baza1.afisare() +ofrmdelegati=Createobject('frm_delegati',tnidpartener) +ofrmdelegati.Show(1) + +Select v_delegati +Scatter Name odetalii +Use In v_delegati +Release podelegati +Return odetalii +ENDPROC && viz_delegati +**********************sfarsit procedura viz_delegati******************* +******************************************* INCEPUT:viz_responsabili ******************************************* +PROCEDURE viz_responsabili( ) + + PRIVATE poresponsabili, pcschema1, pcselect1 + STORE '' TO poresponsabili + pcschema1 = [''] + pcselect1=['select * from ] + gcS + [.vnom_responsabili where 1=2'] + pcorder1=[nume] + pcfiltru1 = [2=2] + llAfiseaza = .F. + gencursor('poresponsabili','v_responsabili',pcselect1,pcfiltru1,pcschema1,pcorder1,llAfiseaza) + poresponsabili.ca_baza1.afisare() + ofrmres=CREATEOBJECT('frm_responsabili') + ofrmres.SHOW(1) + RELEASE poresponsabili + + +ENDPROC && viz_responsabili +******************************************* SFARSIT: viz_responsabili ******************************************* +Procedure viz_curs + +Private poCurs +Store '' To poCurs + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = ['id_curs N(10), nume_val C(10), curs N(10,4), data D(8), data2 D(8), id_valuta N(5)'] +lcSelect1 = [select id_curs, nume_val, curs, data, data2, id_valuta from ] + gcS + [.vcrm_curs] +lcOrder1 = [data desc] +lcFiltru1 = [1=2] +lcFiltruOriginal = [] +llModParam = .T. +llAfiseaza = .F. +lcgroup = [] +*gencursor('poCurs','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +gencursor('poCurs','tCurs', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +poCurs.ca_baza1.afisare() + +Select tCurs +lovc = Createobject("frm_curs") +lovc.Show(1) + +Release poCurs + +Endproc && viz_curs +***----------------------------------------------------------------------------------------------------------------------------- +Procedure viz_tipc + +Private poTipc +Store '' To poTipc + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = [select * from ] + gcS + [.crm_tipc] +lcOrder1 = [id_tipc] +lcFiltru1 = [2=2] +lcFiltruOriginal = [] +llModParam = .T. +llAfiseaza = .F. +lcgroup = [] +gencursor('poTipc','tTipc', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +poTipc.ca_baza1.afisare() + +Select tTipc +lotc = Createobject("frm_tipc") +lotc.Show(1) + +Release poTipc + +Endproc && viz_tipc +***----------------------------------------------------------------------------------------------------------------------------- +********* Inceput: viz_articole +Procedure viz_articole + +Private poArticole +Store '' To poArticole + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = [select * from ] + gcS + [.nom_articole] +lcOrder1 = [denumire] +lcFiltru1 = [1=2] +lcFiltruOriginal = [] +llModParam = .T. +llAfiseaza = .F. +lcgroup = [] +gencursor('poArticole','tArticole', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +poArticole.ca_baza1.afisare() + +of_art = Createobject('frm_articole') +of_art.Show(1) + +Endproc +********* Sfarsit: viz_articole +****************************************************************************************************************** +Procedure viz_clienti() +Private poClie,pcschema1,pcselect1 +Local llAfiseaza +Store .F. To llAfiseaza +Store '' To poClie +If Used('v_clie') + Use In v_clie +Endif + +pcschema1=[''] +pcselect1=['select b.* from vcoresp_tip_part a left join vnom_parteneri b '+]+; + ['on a.id_part=b.id_part where a.id_tip_part=16 and b.inactiv=0'] +pcorder1=[b.nume] +pcfiltru1 = [1 = 2] +llAfiseaza = .F. +gencursor('poclie','v_clie',pcselect1,pcfiltru1,pcschema1,pcorder1,llAfiseaza) +poClie.ca_baza1.afisare() + +ofrmclienti=Createobject('frm_clienti') +ofrmclienti.Show(1) +Release ofrmclienti,poClie +Endproc && viz_clienti +****************************************************************************************************************** +****************************************************************************************************************** +Procedure viz_agenti +Private poagenti,pcschema1,pcselect1 +Local llAfiseaza +Store .F. To llAfiseaza +Store '' To poagenti +If Used('crsagenti') + Use In crstagenti +Endif + +pcschema1=[''] +pcselect1=['select * from ]+gcS+[.vnom_agenti where 2=2'] +pcorder1=[nume_agent] +pcfiltru1 = [1 = 2] +llAfiseaza = .F. +gencursor('poagenti','crsagenti',pcselect1,pcfiltru1,pcschema1,pcorder1,llAfiseaza) +poagenti.ca_baza1.afisare() + +ofrmagenti=Createobject('frm_agenti') +ofrmagenti.Show(1) +Release ofrmtipuri,potipurieven +Endproc && viz_agenti +****************************************************************************************************************** +***************************************************************************** +function cauta_zona +Lparameters tnIdZona,tcNumeZona +Local locauta,llReturn +Store "" To locauta +Store .F. To llReturn +pcselect = ["select id_zona,zona from ] + gcS + [.crm_vzone where inactiv=0"] +pcfiltru = [1=2] +pcschema = [''] +pcorder = [2] +pccoloane = [Zona] +pcTitlu = [Zona] +pcTitluColoane = [Zona] +locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitluColoane,"") +If !Empty(locauta.id_zona) + tnIdZona=locauta.id_zona + tcNumeZona=Alltrim(locauta.zona) + llReturn=.T. +Endif +Return llReturn +Endfunc && cauta_zona +***************************************************************************** +Procedure update_clienti( ) +LPARAMETERS tnid_partener + +LOCAL lcFiltru +IF !EMPTY(tnid_partener) + lcFiltru = [ and p.id_part=]+ALLTRIM(STR(tnid_partener)) +ELSE + lcFiltru = [] +ENDIF +If Used('v_clienti') + Use In v_clienti +Endif + +lcSql = [select distinct p.nume, p.cod_fiscal, p.id_part FROM ] + gcS + [.vcoresp_tip_part p ] + ; + [join ] + gcS + [.vcoresp_tip_cont c on p.id_tip_part=c.id_tip_part where c.cont ='4111' ] + ; + [and p.inactiv=0 ]+lcFiltru+[ order by p.nume ] +lcCursor = 'v_clienti' +lnSucces = goExecutor.oExecute(lcSql,lcCursor) +goExecutor.oReset() +Return lnSucces + +Endproc +**********************sfarsit procedura update_clienti******************* + + diff --git a/Programe/oparteneri.prg b/Programe/oparteneri.prg new file mode 100644 index 0000000..5d7ecaa --- /dev/null +++ b/Programe/oparteneri.prg @@ -0,0 +1,687 @@ + +*!* APEL DE PROCEDURA +*!* DO lans_ireg_parteneri WITH tlTest,tcCont,tlActiv + +*----------------------------------------------------------- + +PROCEDURE lans_ireg_parteneri + PARAMETERS tlTest,tcCont,tlactiv,tlTitluTot,tcDenumire,tcDenDebit,tcDenCredit + *!* tlTitluTot = daca denumirea titlului este totala i.e.: Nu trebuie sa mai adaug Balanta parteneri + *!* tcDenumire = titlul balantei + *!* tcDenDebit = peste tot pe unde apare debit se va inlocui cu aceasta denumire + *!* tcDenCredit = peste tot pe unde apare credit se va inlocui cu aceasta denumire + + LOCAL lcCont, llActiv, llParametri,llTitluTot,lcDenumire,lcDenDebit,lcDenCredit + llParametri = .F. + + IF EMPTY(tlTitluTot) + llTitluTot = .F. + ELSE + llTitluTot = tlTitluTot + ENDIF + + IF EMPTY(tcDenumire) + lcDenumire = "" + ELSE + lcDenumire= tcDenumire + ENDIF + + IF EMPTY(tcDenDebit) + lcDenDebit = "Debit" + ELSE + lcDenDebit = tcDenDebit + ENDIF + IF EMPTY(tcDenCredit) + lcDenCredit = "Credit" + ELSE + lcDenCredit = tcDenCredit + ENDIF + + IF !EMPTY(tcCont) + lcCont = ALLTRIM(tcCont) + ELSE + lcCont = '' + ENDIF + + IF !EMPTY(tlactiv) + llActiv = tlactiv + ELSE + llActiv = .F. + ENDIF + + llParametri = .F. + *If PCOUNT() = 3 + *!* IF !EMPTY(tlActiv) AND !EMPTY(tcCont) AND !EMPTY(tlActiv) + *!* llParametri = .T. + *!* Endif + IF !EMPTY(tcCont) + llParametri = .T. + ENDIF + LOCAL NOU, lnTdeb, lnTcred, lnSold, lcContPart, lclista + STORE 0 TO lnTdeb, lnTcred, lnSold + NOU=.T. + + IF glPrimaLuna + NOU = .F. + ENDIF + + PRIVATE plActiv + STORE .T. TO plActiv + PRIVATE eActiv + STORE .T. TO eActiv + IF !llParametri + PRIVATE polista,pcschema1,pcselect1,pcfiltru1,pcorder1 + STORE "" TO polista + IF USED('clista') + USE IN clista + ENDIF + pcschema1=['cont c(4),acont c(4),explicatie c(50)'] + pcselect1=['select distinct cont,rpad(CHR(32),4,CHR(32)) as acont,explicatie from ]+gcS+[.vcoresp_tip_cont where 1=2'] + pcfiltru1=[2=2] + pcorder1=[cont] + llAfisare=.F. + gencursor('polista','clista',pcselect1,pcfiltru1,pcschema1,pcorder1,llAfisare) + polista.ca_baza1.afisare() + + SELECT clista + loCont=myscatter('blank') + + Ol=CREATEOBJECT("frm_sel_cont") + WITH Ol + .Lb_titlu_alb_b121.CAPTION= 'Selectati contul' + IF EMPTY(.cboCont.ROWSOURCE) + .cboCont.ROWSOURCE="clista.cont,acont" + ENDIF + .ocont=loCont + IF EMPTY(.cAlias) + .cAlias=LEFT(.cboCont.ROWSOURCE,AT(".",.cboCont.ROWSOURCE)-1) + ENDIF + .HEIGHT = 190 + ENDWITH + Ol.SHOW(1) + + IF buton = 2 + USE IN clista + RETURN + ENDIF + + lcContPart = loCont.CONT + IF !llTitluTot AND EMPTY(lcDenumire) + lcDenumire = "Inregistrari " + ALLTRIM(clista.explicatie) + "( " + lcContPart + " )" + ELSE + IF !EMPTY(lcDenumire) AND !llTitluTot + lcDenumire = "Inregistrari " + lcDenumire + "( " + lcContPart + " )" + ENDIF + ENDIF + USE IN clista + plActiv = eActiv + ELSE + eActiv = llActiv + plActiv = llActiv + lcContPart = lcCont + IF !llTitluTot AND EMPTY(lcDenumire) + lcDenumire = "Inregistrari " + "( " + lcContPart + " )" + ELSE + IF !EMPTY(lcDenumire) AND !llTitluTot + lcDenumire = "Inregistrari " + lcDenumire + "( " + lcContPart + " )" + ENDIF + ENDIF + ENDIF + + + *** verificare INAINTE_DE + DO inainte WITH "IREG_PARTENERI",lcContPart IN oinainte_de.prg + IF tlTest + DO test_ireg WITH lcContPart,llActiv + ENDIF + + pcCont = lcContPart + + PRIVATE poireg_parteneri,pcschema1,pcselect1 + STORE '' TO poireg_parteneri + pcschema1 = ['id_ireg_part n(20),an n(4), luna n(2),ID_FACT N(20),id_part n(20),cont c(4),acont c(4), ID_VALUTA N(5), ID_VENCHELT N(5), PROC_TVA N(8,2),' +] + ; + ['PRECDEB N(20,4),PRECCRED N(20,4),PRECVALDEB N(20,4),PRECVALCRED N(20,4),' +] + ; + ['debit n(20,4),credit n(20,4),valdebit n(20,4), valcredit n(20,4),' +] + ; + ['NRACT N(14),DATAACT D,DATAIREG D,DATASCAD D,CURS N(9,3),' +] + ; + ['COD N(20),EXPLICATIA C(100),EXPLICATIA4 C(100),EXPLICATIA5 C(100), ' +] + ; + ['ID_RESPONSABIL N(5),ID_FDOC N(5),ID_LUCRARE N(5),ID_SET N(20),ID_ACT N(20),' +] + ; + ['NUME C(100),COD_FISCAL C(30),FDOC C(50),NRESP C(50),NRORD C(50),NUME_VAL C(10),VENCHELT C(50)' ] + +pcselect1=['SELECT I.ID_IREG_PART, I.AN, I.LUNA, ID_FACT, I.ID_PART, I.CONT, I.ACONT, I.ID_VALUTA, I.ID_VENCHELT, I.PROC_TVA,' + ] +; +['I.PRECDEB, I.PRECCRED, I.PRECVALDEB, I.PRECVALCRED, ' + ] +; +['I.DEBIT, I.CREDIT, I.VALDEBIT, I.VALCREDIT, ' + ] +; +['I.NRACT, I.DATAACT, I.DATAIREG, I.DATASCAD, I.CURS,' + ] +; +['I.COD, I.EXPLICATIA, I.EXPLICATIA4, I.EXPLICATIA5,' + ] +; +['I.ID_RESPONSABIL, I.ID_FDOC, I.ID_LUCRARE, I.ID_SET, I.ID_ACT,' + ] +; +['I.NUME,I.COD_FISCAL,I.FDOC,I.NRESP,I.NRORD,I.NUME_VAL,I.VENCHELT' + ] + ; +[' FROM ] + GCS + [.VIREG_PARTENERI I WHERE 1=2'] + +*!* pcselect1=['select i.*,p.cod_fiscal from ] + gcS + [.vireg_parteneri i join ] + gcS + ; +*!* [.vnom_parteneri p on p.id_part = i.id_part where 1=2'] + pcorder1=[dataact] + pcfiltru1 = [1=2] + *!* pcfiltru1 = [cont = '] + Alltrim(pcCont) + [' and luna = ] + Alltrim(Str(gnLuna)) + [ and an = ] + Alltrim(Str(gnAn)) + gencursor('poireg_parteneri','actcv',pcselect1,pcfiltru1,pcschema1,pcorder1) + poireg_parteneri.ca_baza1.afisare() + + + SELECT actcv + + tcFis2 = "ActCv" + tlVisible = .T. + + LOCAL c + c="nume+ALLTRIM(STR(YEAR(dataact)))+RIGHT('0'+ALLTRIM(STR(MONTH(dataact))),2)+RIGHT('0'+ALLTRIM(STR(DAY(dataact))),2)" + buton=1 + + IF tlTest AND .F. + + PRIVATE pcCampVerif + pcCampVerif = ofis.camp_verif + SELECT (tcFis2) + SET FILTER TO + lcProc='inainte_'+ALLTRIM(tcFis2) + DO &lcProc IN inaintede.prg + IF buton=2 + RETURN + ENDIF + ENDIF + + SELE actcv + + + PRIVATE pcAnalitic,pcLucrare + STORE '' TO pcAnalitic,pcLucrare + + Oreg=CREATEOBJECT("FRM_IREG_PARTENERI") + WITH Oreg + .lActiv = llActiv + .cCont = lcContPart + *!* .LABEL10.Caption=Proper(tctitlu)&&& trebuie facut + .LABEL10.CAPTION= PROPER(lcDenumire) + .grid1.column12.VISIBLE=.T. + .CONT=ALLT(pcCont) + .fisier=ALLTRIM(tcFis2) + .Ck_valuta.VISIBLE=tlVisible + .CK_explicatia.VISIBLE=tlVisible + .CHECK7.VISIBLE=tlVisible + .CHECK9.VISIBLE=tlVisible + .grid1.column2.VISIBLE=tlVisible + .grid1.column11.VISIBLE=tlVisible + .grid1.column13.VISIBLE=tlVisible + .grid1.column14.VISIBLE=tlVisible + .grid1.column7.VISIBLE=tlVisible + .grid1.column8.VISIBLE=tlVisible + .grid1.column10.VISIBLE=tlVisible + IF !tlVisible + .CHECK3.CAPTION='Regularizate' + .CHECK4.CAPTION='Neregularizate' + .check10.CAPTION='Regularizat' + .grid1.column12.header1.CAPTION='Regularizat' + .grid1.column2.WIDTH=0 + ENDIF + IF !plActiv + + .grid1.column9.CONTROLSOURCE = "(preccred+credit)-(precdeb+debit)" + .grid1.column14.CONTROLSOURCE ="(precvalcred+valcredit)-(precvaldeb+valdebit)" + .ck_sold.camp_nume = "credit+preccred-precdeb-debit" + .grid1.column1.CONTROLSOURCE = "preccred+credit" + .grid1.column12.CONTROLSOURCE = "precdeb+debit" + .grid1.column11.CONTROLSOURCE = "precvalcred+valcredit" + .grid1.column13.CONTROLSOURCE = "precvaldeb+valdebit" + .grid1.column20.CONTROLSOURCE = "credit" + .grid1.column21.CONTROLSOURCE = "debit" + .grid1.column22.CONTROLSOURCE = "valcredit" + .grid1.column23.CONTROLSOURCE = "valdebit" + .grid1.column18.CONTROLSOURCE = "preccred" + .grid1.column19.CONTROLSOURCE = "precdeb" + + .grid1.column1.header1.CAPTION = "Total " + lcDenCredit + .grid1.column12.header1.CAPTION = "Total " + lcDenDebit + .grid1.column11.header11.CAPTION = "Total " + lcDenCredit + " valuta" + .grid1.column13.header1.CAPTION = "Total " + lcDenDebit + " valuta" + .grid1.column20.header1.CAPTION = lcDenCredit + .grid1.column21.header1.CAPTION = lcDenDebit + .grid1.column22.header1.CAPTION = lcDenCredit + " valuta" + .grid1.column23.header1.CAPTION = lcDenDebit + " valuta" + .grid1.column18.header1.CAPTION = "Prec " + lcDenCredit + .grid1.column19.header1.CAPTION = "Prec " + lcDenDebit + ELSE + .grid1.column9.CONTROLSOURCE = "(precdeb+debit)-(preccred+credit)" + .grid1.column14.CONTROLSOURCE ="(precvaldeb+valdebit)-(precvalcred+valcredit)" + .ck_sold.camp_nume = "precdeb+debit-credit-preccred" + .grid1.column1.header1.CAPTION = "Total " + lcDenDebit + .grid1.column12.header1.CAPTION = "Total " + lcDenCredit + .grid1.column11.header11.CAPTION = "Total " + lcDenDebit + " valuta" + .grid1.column13.header1.CAPTION = "Total " + lcDenCredit + " valuta" + .grid1.column20.header1.CAPTION = lcDenDebit + .grid1.column21.header1.CAPTION = lcDenCredit + .grid1.column22.header1.CAPTION = lcDenDebit + " valuta" + .grid1.column23.header1.CAPTION = lcDenCredit + " valuta" + .grid1.column18.header1.CAPTION = "Prec " + lcDenDebit + .grid1.column19.header1.CAPTION = "Prec " + lcDenCredit + ENDIF + IF TYPE('pcTotctva')#'U' AND TYPE('pcAchitat')#'U' + .grid1.column12.header1.CAPTION=pcAchitat + .grid1.column1.header1.CAPTION=pcTotctva + ENDIF + IF TYPE('pcSumaTotal')#'U' AND TYPE('pcSumaAchi')#'U' + .CHECK13.CAPTION=pcSumaTotal + .check10.CAPTION=pcSumaAchi + ENDIF + IF TYPE('actcv.nresp') # 'U' + .grid1.column17.VISIBLE= .T. + .grid1.column17.CONTROLSOURCE = 'nresp' + .Ck_responsabil.VISIBLE = .T. + ENDIF + ENDWITH + Oreg.SHOW(1) + *!* Select actcv + *!* If Used('actcv') + *!* Use In actcv + *!* Endif + *!* Release ofis + RELEASE Oreg + USE IN actcv + +ENDPROC && lans_ireg_parteneri +*--------------------------------------------------------------------------------- + +PROCEDURE lans_balanta_parteneri + LPARAMETERS tcCont,tlactiv,tlTitluTot,tcDenumire,tcDenDebit,tcDenCredit &&initital cu 2 parametrii + *!* tlTitluTot = daca denumirea titlului este totala i.e.: Nu trebuie sa mai adaug Balanta parteneri + *!* tcDenumire = titlul balantei + *!* tcDenDebit = peste tot pe unde apare debit se va inlocui cu aceasta denumire + *!* tcDenCredit = peste tot pe unde apare credit se va inlocui cu aceasta denumire + + LOCAL llParametri, lcCont, llActiv,llTitluTot,lcDenumire,lcDenDebit,lcDenCredit + + llParametri = .F. + lcCont = '' + llActiv = .F. + IF EMPTY(tlTitluTot) + llTitluTot = .F. + ELSE + llTitluTot = tlTitluTot + ENDIF + + IF EMPTY(tcDenumire) + lcDenumire = "" + ELSE + lcDenumire= tcDenumire + ENDIF + + IF EMPTY(tcDenDebit) + lcDenDebit = "Debit" + ELSE + lcDenDebit = tcDenDebit + ENDIF + IF EMPTY(tcDenCredit) + lcDenCredit = "Credit" + ELSE + lcDenCredit = tcDenCredit + ENDIF + *!* IF PCOUNT() < 2 + IF EMPTY(tcCont) AND EMPTY(tlactiv) + llParametri = .F. + ELSE + llParametri = .T. + lcCont = ALLTRIM(tcCont) + llActiv = tlactiv + ENDIF + + LOCAL NOU, lnTdeb, lnTcred, lnSold, lcContPart, lclista + STORE 0 TO lnTdeb, lnTcred, lnSold + NOU=.T. + + IF .F. + SELECT calendar + GO TOP + IF an=pcAn AND NL=pcNl + NOU=.F. + ENDIF + ENDIF + *!* IF glPrimaLuna + *!* nou = .F. + *!* ENDIF + + PRIVATE polista,pcschema1,pcselect1,pcfiltru1,pcorder1 + STORE "" TO polista + + + IF !llParametri + + IF USED('clista') + USE IN clista + ENDIF + + + pcschema1=['cont c(4),acont c(4),explicatie c(50)'] + pcselect1=['select distinct cont,rpad(CHR(32),4,CHR(32)) as acont,explicatie from ]+gcS+[.vcoresp_tip_cont where 1=2'] + pcfiltru1=[2=2] + pcorder1=[cont] + llAfisare=.F. + gencursor('polista','clista',pcselect1,pcfiltru1,pcschema1,pcorder1,llAfisare) + polista.ca_baza1.afisare() + + *!* SELECT DISTINCT cont, '' as acont FROM coresp_tip_cont INTO CURSOR clista + SELECT clista + loCont=myscatter('blank') + + PRIVATE eActiv + STORE .T. TO eActiv + + Ol=CREATEOBJECT("frm_sel_cont") + WITH Ol + .Lb_titlu_alb_b121.CAPTION= 'Selectati contul' + IF EMPTY(.cboCont.ROWSOURCE) + .cboCont.ROWSOURCE="clista.cont,acont" + ENDIF + .ocont=loCont + IF EMPTY(.cAlias) + .cAlias=LEFT(.cboCont.ROWSOURCE,AT(".",.cboCont.ROWSOURCE)-1) + ENDIF + .HEIGHT = 190 + ENDWITH + Ol.SHOW(1) + + IF buton = 2 + USE IN clista + RETURN + ENDIF + + lcContPart = loCont.CONT + IF !llTitluTot AND EMPTY(lcDenumire) + lcDenumire = "Balanta " + ALLTRIM(clista.explicatie) + "( " + lcContPart + " )" + ELSE + IF !EMPTY(lcDenumire) AND !llTitluTot + lcDenumire = "Balanta " + lcDenumire + "( " + lcContPart + " )" + ENDIF + ENDIF + USE IN clista + ELSE + lcContPart = lcCont + eActiv = llActiv + + IF !llTitluTot AND EMPTY(lcDenumire) + lcDenumire = "Balanta " + "( " + lcContPart + " )" + ELSE + IF !EMPTY(lcDenumire) AND !llTitluTot + lcDenumire = "Balanta " + lcDenumire + "( " + lcContPart + " )" + ENDIF + ENDIF + ENDIF + + IF eActiv + lnSemn = -1 + ELSE + lnSemn = 1 + ENDIF + + + *** verificare INAINTE_DE + DO inainte WITH "BALANTA_parteneri",lcContPart IN oinainte_de.prg + + + + + PRIVATE pobalpartext,pcschema2,pcselect2,pcfiltru2,pcorder2,pobalpartint,pcschema3,pcselect3,pcfiltru3,pcorder3,pcgroup3 + STORE "" TO pobalpartext,pobalpartint + pcschema2=['PRECDEB1 N(19,2),PRECCRED1 N(19,2),PRECDEB N(19,2),PRECCRED N(19,2),'+]+; + ['DEB N(19,2),CRED N(19,2),PRECVALDEB1 N(19,2),PRECVALCRED1 N(19,2),PRECVALDEB N(19,2),'+]+; + ['PRECVALCRED N(19,2),VALDEBIT N(19,2),VALCREDIT N(19,2),NUME_VAL C(5),ID_PART N(10),'+]+; + ['NUME C(50),COD_FISCAL C(30),CONT C(4),ACONT C(4),AN N(4),LUNA N(2),TOTCRED N(19,2),TOTDEB N(19,2),'+]+; + ['TOTVALCRED N(19,2),TOTVALDEB N(19,2),ID_VALUTA N(5)'] + pcselect2=['select PRECDEB1,PRECCRED1,PRECDEB,PRECCRED,'+]+; + ['DEBIT as DEB,CREDIT as CRED,PRECVALDEB1,PRECVALCRED1,PRECVALDEB,'+]+; + ['PRECVALCRED,VALDEBIT,VALCREDIT,NUME_VAL,ID_PART,'+]+; + ['NUME,COD_FISCAL,CONT,ACONT,AN,LUNA,'+]+; + ['PRECCRED+CREDIT as TOTCRED,PRECDEB+DEBIT as TOTDEB,'+]+; + ['PRECVALCRED+VALCREDIT as TOTVALCRED,PRECVALDEB+VALDEBIT as TOTVALDEB,ID_VALUTA '+]+; + ['from ]+gcS+[.vbalanta_parteneri where 1=2'] + pcfiltru2=[1=2] + pcorder2=[nume,acont] + llAfisare=.F. + gencursor('pobalpartext','xtemp',pcselect2,pcfiltru2,[''],pcorder2,llAfisare) + pobalpartext.ca_baza1.afisare() + + pcschema3=['PRECDEB1 N(19,2),PRECCRED1 N(19,2),PRECDEB N(19,2),PRECCRED N(19,2),'+]+; + ['DEB N(19,2),CRED N(19,2),PRECVALDEB1 N(19,2),PRECVALCRED1 N(19,2),PRECVALDEB N(19,2),'+]+; + ['PRECVALCRED N(19,2),VALDEBIT N(19,2),VALCREDIT N(19,2),NUME_VAL C(5),ID_PART N(10),'+]+; + ['NUME C(50),COD_FISCAL C(30),CONT C(4),ACONT C(4),AN N(4),LUNA N(2),TOTCRED N(19,2),TOTDEB N(19,2),'+]+; + ['TOTVALCRED N(19,2),TOTVALDEB N(19,2),ID_VALUTA N(5)'] + pcselect3=['select SUM(PRECDEB1) AS PRECDEB1,SUM(PRECCRED1) AS PRECCRED1,SUM(PRECDEB) AS PRECDEB,SUM(PRECCRED) AS PRECCRED,'+]+; + ['SUM(DEBIT) as DEB,SUM(CREDIT) as CRED,0 AS PRECVALDEB1,0 AS PRECVALCRED1,0 AS PRECVALDEB,'+]+; + ["0 AS PRECVALCRED,0 AS VALDEBIT,0 AS VALCREDIT,'LEI' AS NUME_VAL,ID_PART,"+]+; + ['NUME,COD_FISCAL,CONT,ACONT,AN,LUNA,'+]+; + ['SUM(PRECCRED+CREDIT) as TOTCRED,SUM(PRECDEB+DEBIT) as TOTDEB,'+]+; + ['SUM(PRECVALCRED+VALCREDIT) as TOTVALCRED,SUM(PRECVALDEB+VALDEBIT) as TOTVALDEB,0 AS ID_VALUTA '+]+; + ['from ]+gcS+[.vbalanta_parteneri where 1=2'] + pcfiltru3=[1=2] + pcorder3=[nume,acont] + pcgroup3=[CONT,ACONT,AN,LUNA,ID_PART,NUME,COD_FISCAL] + llAfisare=.F. + gencursor('pobalpartint','xtemp',pcselect3,pcfiltru3,[''],pcorder3,llAfisare,pcgroup3) + pobalpartint.ca_baza1.afisare() + + OVIZ=CREATEOBJECT("frm_bal_parteneri") + WITH OVIZ + *!* .LABEL10.Caption='SITUATIA ANALITICA - BALANTA PARTENERI (' + Alltrim(lcContPart) + ')' + .LABEL10.CAPTION = PROPER(lcDenumire) + IF eActiv + .grid1.column6.CONTROLSOURCE='- cred + deb' + .grid1.column10.CONTROLSOURCE='- totcred + totdeb' + .grid1.column9.CONTROLSOURCE='- preccred + precdeb' + + .grid1.column21.CONTROLSOURCE='- totvalcred + totvaldeb' + .grid1.column18.CONTROLSOURCE='- precvalcred + precvaldeb' + *!* .grid1.column6.header1.Caption='Sold (deb-cred)' + *!* .grid1.COLUMN4.header1.Caption='Debit' + *!* .grid1.COLUMN5.header1.Caption='Credit' + .grid1.column6.header1.CAPTION= "Sold("+ALLTRIM(lcDenDebit)+"-"+ALLTRIM(lcDenCredit)+")"&&'Sold (cred-deb)' + .grid1.COLUMN4.header1.CAPTION= lcDenDebit&&Debit' + .grid1.COLUMN5.header1.CAPTION= lcDenCredit&&'Credit' + .grid1.column11.header1.CAPTION= "Prec." + lcDenDebit&&Debit' + .grid1.column12.header1.CAPTION= "Prec." + lcDenCredit&&'Credit' + .grid1.COLUMN15.header1.CAPTION= "Total" + lcDenDebit&&Debit' + .grid1.COLUMN16.header1.CAPTION= "Total" + lcDenCredit&&'Credit' + .pcfel='A' + ELSE + .grid1.column6.CONTROLSOURCE='cred - deb' + .grid1.column10.CONTROLSOURCE='totcred - totdeb' + .grid1.column9.CONTROLSOURCE='preccred - precdeb' + + .grid1.column21.CONTROLSOURCE='totvalcred - totvaldeb' + .grid1.column18.CONTROLSOURCE='precvalcred - precvaldeb' + .grid1.column6.header1.CAPTION= "Sold("+ALLTRIM(lcDenCredit)+"-"+ALLTRIM(lcDenDebit)+")"&&'Sold (cred-deb)' + .grid1.COLUMN4.header1.CAPTION= lcDenDebit&&Debit' + .grid1.COLUMN5.header1.CAPTION= lcDenCredit&&'Credit' + .grid1.column12.header1.CAPTION= "Prec." + lcDenCredit&&'Credit' + .grid1.column11.header1.CAPTION= "Prec." + lcDenDebit&&'Debit' + *!* .grid1.column11.controlsource = "preccred" + *!* .grid1.column12.controlsource = "precdeb" + .grid1.COLUMN16.header1.CAPTION= "Total" + lcDenCredit&&'Credit' + .grid1.COLUMN17.header1.CAPTION= "Total" + lcDenDebit&&'Debit' + *!* .grid1.COLUMN15.controlsource= "totCred" &&Credit' + *!* .grid1.COLUMN16.controlsource= "TotDeb" &&'Debit' + .pcfel='P' + + ENDIF + .grid1.column18.VISIBLE=.F. + .grid1.column19.VISIBLE=.F. + .grid1.column20.VISIBLE=.F. + .grid1.column21.VISIBLE=.F. + .grid1.column22.VISIBLE=.F. + .TABEL = 'BALANTA_PARTENER' + .pcCont = ALLTRIM(lcContPart) + .grid1.column8.WIDTH=0 + .grid1.column13.WIDTH=0 + .grid1.column14.WIDTH=0 + .grid1.column8.VISIBLE=.F. + .grid1.column13.VISIBLE=.F. + .grid1.column14.VISIBLE=.F. + .label7.VISIBLE=.F. + .text4.VISIBLE=.F. + .TEXT5.VISIBLE=.F. + .text9.VISIBLE=.F. + ENDWITH + IF !NOU + WITH OVIZ.grid1 + .column2.COLUMNORDER=2 + FOR I=9 TO 16 + lcViz='.column'+ALLTRIM(STR(I))+'.visible=.f.' + *lcWidth='.column'+ALLTRIM(STR(i))+'.width=0' + &lcViz + *&lcWidth + ENDFOR + ENDWITH + ENDIF + + OVIZ.SHOW(1) + USE IN xtemp + *!* ENDIF +ENDPROC && lans_balanta_parteneri +*---------------------------------------------------------------------------------------------- + + +*---------------------------------- Inceput lans_balanta_cumulata ---------------------------------- +PROCEDURE lans_balanta_cumulata + + +pcselect = [select explicatie, id_coloana from ] + gcs + [.coloane where 2=2] +pcfiltru = [2=2] +pcschema = [''] +pcorder = [explicatie] +pccoloane = [explicatie] +pcTitlu = [Alegeti Balanta] +pcFiltruOriginal = [camp is null and tabel is null and id_prg_owner = 2 and configurabil = 1] +locauta = cauta_alfa(pcselect,pcfiltru,pcschema,pcorder,pccoloane,pcTitlu,pcTitlu,"",.f.,pcFiltruOriginal) + +IF EMPTY(locauta.id_coloana) OR ISNULL(locauta.id_coloana) + RETURN +ENDIF + +pnIdBal = locauta.id_coloana + + +pcTitluCol = [] +pcNumeCol = [] +lcSel = [{call pack_balante_cumulate.balante_cumulate(?@pcNumeCol,?@pcTitluCol,?gcS,?pnIdBal,?gnAn,?gnLuna)}] +lcSchema = [] +lcCursor = 'crs_bal' +lnSucces = goExecutor.oExecute(lcSel,lcCursor) + +IF lnSucces < 0 + MESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + RETURN +ENDIF + + +pcNumeCol = [nume;cod_fiscal;acont;] + pcNumeCol +pcTitluCol = [Partener,Cod Fiscal,Analitic,] + pcTitluCol +SELECT (lcCursor) +SCATTER NAME loto BLANK + + +obalp = CREATEOBJECT('frm_bal_parteneri_cumulata') +obalp.ototal = loto +WITH obalp.ct_grid_order1 + .cselect = lcSel + .cschema = lcSchema + .cTitlu_coloane = pcTitluCol + .cNume_coloane = pcNumeCol + .cFiltruOriginal = [] + .cFiltru = [] + .cOrder = [] + .cTitlu = [] + .cnumeCursor = lcCursor + .lmodparam = .T. +ENDWITH +obalp.ctitlu = locauta.explicatie +obalp.show() + +IF USED(lcCursor) + USE IN (lcCursor) +ENDIF + +ENDPROC && lans_balanta_cumulata +*---------------------------------- Sfarsit lans_balanta_cumulata ---------------------------------- + + +*---------------------------------- Inceput configurare_balanta_cumulata ---------------------------------- +PROCEDURE configurare_balanta_cumulata +PRIVATE pnIdBalanta, pnIdColoana +STORE 0 TO pnIdBalanta, pnIdColoana + +pcselect1 = [select explicatie,explicatie2, id_coloana from ] + gcs + [.coloane ] +pcfiltru1 = [camp is null and tabel is null and id_prg_owner = 2 and configurabil = 1] +pcschema1 = [''] +pcorder1 = [explicatie] +pccoloane1 = [explicatie; explicatie2] +pcTitluCol1 = [Titlu Balanta,Conturi] +pcTitlu1 = [Lista Balante Configurate] + +pcselect2 = [select f.id_calcul, f.id_op_col , f.ordine, f.id_coloana, c.camp, c.explicatie from ] + gcs + [.sal_calcul f left join ] + ; + gcs +[.coloane c on f.id_op_col = c.id_coloana and f.coloana = 1] +pcfiltru2 = [f.id_coloana =?pnIdBalanta] +pcschema2 = [''] +pcorder2 = [f.ordine] +pccoloane2 = [explicatie; ordine] +pcMask2 = '[1]=;[2]=REPLICATE("9",3)' +pcTitluCol2 = [Titlu coloana, Ordine] +pcTitlu2 = [Coloane Balanta] + +pcselect3 = [select id_calcul, id_coloana, id_op_col, explicatie, camp, coloana, ordine from ] + gcs + [.cont_vformule_balante ] +pcfiltru3 = [id_coloana =?pnIdColoana] +pcschema3 = [''] +pcorder3 = [ordine] +pccoloane3 = [camp;explicatie;ordine] +pcMask3 = '[1]=;[2]=;[3]=REPLICATE("9",3)' +pcTitluCol3 = [Camp,Explicatie,Ordine] +pcTitlu3 = [Formula Coloane] + + +obalp = CREATEOBJECT('config_balante_parteneri') +WITH obalp.Ct_grid_search1 + .cselect = pcselect1 + .cschema = pcschema1 + .cTitlu_coloane = pcTitluCol1 + .cNume_coloane = pccoloane1 + .cFiltruOriginal = pcfiltru1 + .cFiltru = [2=2] + .cOrder = pcorder1 + .cTitlu = pcTitlu1 + .cnumeCursor = 'crs_NumeBal' + .lmodparam = .T. +ENDWITH +WITH obalp.Ct_grid_search2 + .cselect = pcselect2 + .cschema = pcschema2 + .cTitlu_coloane = pcTitluCol2 + .cNume_coloane = pccoloane2 + .cFiltruOriginal = pcfiltru2 + .cFiltru = [2=2] + .cOrder = pcorder2 + .cTitlu = pcTitlu2 + .cMask = pcMask2 + .cnumeCursor = 'crs_ColoaneBal' + .lmodparam = .t. +ENDWITH +WITH obalp.Ct_grid_search3 + .cselect = pcselect3 + .cschema = pcschema3 + .cTitlu_coloane = pcTitluCol3 + .cNume_coloane = pccoloane3 + .cFiltruOriginal = pcfiltru3 + .cFiltru = [2=2] + .cOrder = pcorder3 + .cTitlu = pcTitlu3 + .cMask = pcMask3 + .cnumeCursor = 'crs_FormulaBal' + .lmodparam = .t. +ENDWITH +obalp.show() + +ENDPROC && configurare_balanta_cumulata +*---------------------------------- Sfarsit configurare_balanta_cumulata ---------------------------------- + diff --git a/Programe/oparteneri_contracte.prg b/Programe/oparteneri_contracte.prg new file mode 100644 index 0000000..a6b89e6 --- /dev/null +++ b/Programe/oparteneri_contracte.prg @@ -0,0 +1,379 @@ + +*!* APEL DE PROCEDURA +*!* DO lans_ireg_parteneri WITH tlTest,tcCont,tlActiv + +*----------------------------------------------------------- +Procedure lans_ireg_parteneri +Parameters tlTest,tcCont,tlactiv,tlTitluTot,tcDenumire,tcDenDebit,tcDenCredit, tlContract +*!* tlTitluTot = daca denumirea titlului este totala i.e.: Nu trebuie sa mai adaug Balanta parteneri +*!* tcDenumire = titlul balantei +*!* tcDenDebit = peste tot pe unde apare debit se va inlocui cu aceasta denumire +*!* tcDenCredit = peste tot pe unde apare credit se va inlocui cu aceasta denumire + +*!* 07.08.2008 +*!* am copiat frm_ireg_parteneri din comun\clase\oparteneri.vcx +*!* am sters butoanele cmdModifica, cmdSterge, init - referinte la butoane, do_cauta - fara an si luna +*!* 07.08.2008 ^ + +Local lcCont, llActiv, llParametri,llTitluTot,lcDenumire,lcDenDebit,lcDenCredit +llParametri = .F. + +If Empty(tlTitluTot) + llTitluTot = .F. +Else + llTitluTot = tlTitluTot +Endif + +If Empty(tcDenumire) + lcDenumire = "" +Else + lcDenumire= tcDenumire +Endif + +If Empty(tcDenDebit) + lcDenDebit = "Debit" +Else + lcDenDebit = tcDenDebit +Endif +If Empty(tcDenCredit) + lcDenCredit = "Credit" +Else + lcDenCredit = tcDenCredit +Endif + +If !Empty(tcCont) + lcCont = Alltrim(tcCont) +Else + lcCont = '' +Endif + +If !Empty(tlactiv) + llActiv = tlactiv +Else + llActiv = .F. +Endif + + +llParametri = .F. +If !Empty(tcCont) + llParametri = .T. +Endif +Local NOU, lnTdeb, lnTcred, lnSold, lcContPart, lclista +Store 0 To lnTdeb, lnTcred, lnSold +NOU=.T. + +If glPrimaLuna + NOU = .F. +Endif + +Private plActiv +Store .T. To plActiv +Private eActiv +Store .T. To eActiv + +If llParametri + eActiv = llActiv + plActiv = llActiv + lcContPart = lcCont + If !llTitluTot And Empty(lcDenumire) + lcDenumire = "Inregistrari " + "( " + lcContPart + " )" + Else + If !Empty(lcDenumire) And !llTitluTot + lcDenumire = "Inregistrari " + lcDenumire + "( " + lcContPart + " )" + Endif + Endif +Endif + +pcCont = lcContPart + +Private poireg_parteneri,pcschema1,pcselect1 +Store '' To poireg_parteneri + +*!* lcschema1 = [id_ireg_part n(20), an n(4), luna n(2), ID_FACT N(20), rate_acoperite C(200), id_part n(20), cont c(4), acont c(4), ID_VALUTA N(5), ID_VENCHELT N(5), PROC_TVA N(8,2), ] + ; +*!* [PRECDEB N(20,4), PRECCRED N(20,4), PRECVALDEB N(20,4), PRECVALCRED N(20,4), ] + ; +*!* [debit n(20,4), credit n(20,4), valdebit n(20,4), valcredit n(20,4), ] + ; +*!* [NRACT N(14), DATAACT D, DATAIREG D, DATASCAD D, CURS N(10,4), ] + ; +*!* [COD N(20), EXPLICATIA C(100), EXPLICATIA4 C(100), EXPLICATIA5 C(100), ] + ; +*!* [ID_RESPONSABIL N(5), ID_FDOC N(5), ID_LUCRARE N(10), ID_CTR N(5), ID_SET N(20), ID_ACT N(20), ] + ; +*!* [NUME C(100), COD_FISCAL C(30), FDOC C(50), NRESP C(50), NRORD C(50), CONTRACT C(30), NUME_VAL C(10), VENCHELT C(50) ] + +*!* modificare v 2.0.6 : am adaugat serie_act +lcschema1 = [ an n(4), luna n(2), ID_FACT N(20), rate_acoperite C(200), id_part n(20), cont c(4), acont c(4), ID_VALUTA N(5), ]+; + [ ID_VENCHELT N(5), PROC_TVA N(8,2), ] + ; + [PRECDEB N(20,4), PRECCRED N(20,4), PRECVALDEB N(20,4), PRECVALCRED N(20,4), ] + ; + [debit n(20,4), credit n(20,4), valdebit n(20,4), valcredit n(20,4), ] + ; + [NRACT N(14),serie_act c(50), DATAACT D, DATAIREG D, DATASCAD D, CURS N(10,gnPCurs2), ] + ; + [COD N(20), EXPLICATIA C(100), EXPLICATIA4 C(100), EXPLICATIA5 C(100), ] + ; + [ID_RESPONSABIL N(5), ID_FDOC N(5), ID_LUCRARE N(10), ID_CTR N(5), ID_SET N(20), ID_ACT N(20), ] + ; + [NUME C(100), COD_FISCAL C(30), FDOC C(50), NRESP C(50), NRORD C(50), CONTRACT C(30), NUME_VAL C(10), ]+; + [ VENCHELT C(50), ] + ; + [ID_SUCURSALA N(5), SUCURSALA C(100), NR N(10)] + +lcPA = Alltrim(Str(gnPA)) +*!* lcSelect1 = [ select i.an, i.luna, i.id_fact, ra.rate_acoperite, i.id_part, i.cont, i.acont, i.id_valuta, ]+; +*!* [ i.id_venchelt, i.proc_tva, ] + ; +*!* [ 000000000000000.0000 as PRECDEB, 000000000000000.0000 as PRECCRED, 000000000000000.0000 as PRECVALDEB, 000000000000000.0000 as PRECVALCRED, ]+; +*!* [ s2.debit, s2.credit, s2.valdebit, s2.valcredit, ]+; +*!* [ i.nract, i.dataact, i.dataireg, i.datascad, i.curs, ]+; +*!* [ i.cod, i.explicatia, i.explicatia4, i.explicatia5, ]+; +*!* [ i.id_responsabil, i.id_fdoc, i.id_lucrare, i.id_ctr, i.id_set, i.id_act, ]+; +*!* [ p.nume, p.cod_fiscal, f.FEL_DOCUMENT as fdoc, r.nume as nresp, l.nrord, ]+; +*!* [ (case when ctr.numar is not null then ctr.numar || '/' else '' end) || TO_CHAR(ctr.data, 'DD.MM.YYYY') as contract, ]+; +*!* [ v.nume_val, vc.explicatie as VENCHELT ]+; +*!* [ from (select an, luna, id_fact, id_part, cont, acont, id_valuta, ]+; +*!* [ id_venchelt, proc_tva, nract, dataact, dataireg, datascad, ]+; +*!* [ curs, cod, explicatia, explicatia4, explicatia5, id_responsabil, id_fdoc, id_lucrare, id_ctr, id_set, id_act ]+; +*!* [ from ireg_parteneri ]+; +*!* [ WHERE extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna and id_part = ]+ ALLTRIM(STR(goContract.id_part))+[ and cont = '4111') i ]+; +*!* [ left join (select id_fact, cont,]+; +*!* [ sum(pack_sesiune.suma_ron(debit,an,luna,]+ lcPA + [)) as debit, ]+; +*!* [ sum(pack_sesiune.suma_ron(credit,an,luna,]+ lcPA + [)) as credit, ]+; +*!* [ sum(pack_sesiune.suma_ron(valdebit,an,luna,]+ lcPA + [)) as valdebit, ]+; +*!* [ sum(pack_sesiune.suma_ron(valcredit,an,luna,]+ lcPA + [)) as valcredit ]+; +*!* [ from ireg_parteneri where id_part = ]+ ALLTRIM(STR(goContract.id_part)) + [ and cont = '4111' group by id_fact,cont) s2 ]+; +*!* [ on i.id_fact = s2.id_fact ]+; +*!* [ left join (select s.id_ctr, ]+; +*!* [ rf.id_fact, stringAgg(s.den_rata) as rate_acoperite from vctr_rate_facturi rf ]+; +*!* [ left join (select * from vctr_scadentar order by id_ctr, den_rata) s on s.id_rata = rf.ID_RATA ]+; +*!* [ group by s.id_ctr, rf.id_fact) ra ]+; +*!* [ on i.id_fact = ra.id_fact ]+; +*!* [ LEFT JOIN CONTRACTE CTR ON i.ID_CTR = CTR.ID_CTR ]+; +*!* [ LEFT JOIN nom_venit_cheltuieli VC ON i.ID_VENCHELT = VC.ID_VENCHELT ]+; +*!* [ LEFT JOIN NOM_VALUTE V ON i.ID_VALUTA = V.ID_VALUTA ]+; +*!* [ LEFT JOIN VNOM_LUCRARI L ON i.ID_LUCRARE = L.ID_LUCRARE ]+; +*!* [ LEFT JOIN NOM_PARTENERI R ON i.ID_RESPONSABIL = R.ID_part ]+; +*!* [ LEFT JOIN NOM_FDOC F ON i.ID_FDOC = F.ID_FDOC ]+; +*!* [ LEFT JOIN NOM_PARTENERI P ON i.ID_PART = P.ID_PART ] + +If tlContract + lcSelect1 = [ select i.* from (select ir.an, ir.luna, ir.id_fact, ra.rate_acoperite, ir.id_part, ir.cont, ir.acont, ir.id_valuta, ]+; + [ ir.id_venchelt, ir.proc_tva, ] + ; + [ 000000000000000.0000 as PRECDEB, 000000000000000.0000 as PRECCRED, 000000000000000.0000 as PRECVALDEB, 000000000000000.0000 as PRECVALCRED, ]+; + [ s2.debit, s2.credit, s2.valdebit, s2.valcredit, ]+; + [ ir.nract, ir.serie_act, ir.dataact, ir.dataireg, ir.datascad, ir.curs, ]+; + [ ir.cod, ir.explicatia, ir.explicatia4, ir.explicatia5, ]+; + [ ir.id_responsabil, ir.id_fdoc, ir.id_lucrare, ir.id_ctr, ir.id_set, ir.id_act, ]+; + [ p.nume, p.cod_fiscal, f.FEL_DOCUMENT as fdoc, r.nume as nresp, l.nrord, ]+; + [ (case when ctr.numar is not null then ctr.numar || '/' else '' end) || TO_CHAR(ctr.data, 'DD.MM.YYYY') as contract, ]+; + [ v.nume_val, vc.explicatie as VENCHELT, ir.id_sucursala, s.sucursala, atvanz.nr ]+; + [ from (select an, luna, serie_act, id_fact, id_part, cont, acont, id_valuta, ]+; + [ id_venchelt, proc_tva, nract, dataact, dataireg, datascad, ]+; + [ curs, cod, explicatia, explicatia4, explicatia5, id_responsabil, id_fdoc, id_lucrare, id_ctr, id_set, id_act, id_sucursala ]+; + [ from ireg_parteneri ]+; + [ WHERE extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna and ]+; + [ id_part = ]+ Alltrim(Str(goContract.id_part))+; + [ and id_ctr = ] + Alltrim(Str(goContract.id_ctr)) +; + [ and cont = ] + tcCont + [) ir ]+; + [ left join (select id_fact, cont,acont,]+; + [ sum(pack_sesiune.suma_ron(debit,an,luna,]+ lcPA + [)) as debit, ]+; + [ sum(pack_sesiune.suma_ron(credit,an,luna,]+ lcPA + [)) as credit, ]+; + [ sum(pack_sesiune.suma_ron(valdebit,an,luna,]+ lcPA + [)) as valdebit, ]+; + [ sum(pack_sesiune.suma_ron(valcredit,an,luna,]+ lcPA + [)) as valcredit ]+; + [ from ireg_parteneri ]+; + [ where id_part = ]+ Alltrim(Str(goContract.id_part)) + ; + [ and id_ctr = ] + Alltrim(Str(goContract.id_ctr)) +; + [ and cont = ] + tcCont + [ group by id_fact,cont,acont) s2 ]+; + [ on ir.id_fact = s2.id_fact and ir.acont = s2.acont ]+; + [ left join (select s.id_ctr, ]+; + [ rf.id_fact, stringAgg(s.den_rata) as rate_acoperite from vctr_rate_facturi rf ]+; + [ left join (select * from vctr_scadentar order by id_ctr, den_rata) s on s.id_rata = rf.ID_RATA ]+; + [ group by s.id_ctr, rf.id_fact) ra ]+; + [ on ir.id_fact = ra.id_fact ]+; + [ LEFT JOIN CONTRACTE CTR ON ir.ID_CTR = CTR.ID_CTR ]+; + [ LEFT JOIN nom_venit_cheltuieli VC ON ir.ID_VENCHELT = VC.ID_VENCHELT ]+; + [ LEFT JOIN NOM_VALUTE V ON ir.ID_VALUTA = V.ID_VALUTA ]+; + [ LEFT JOIN VNOM_LUCRARI L ON ir.ID_LUCRARE = L.ID_LUCRARE ]+; + [ LEFT JOIN NOM_PARTENERI R ON ir.ID_RESPONSABIL = R.ID_part ]+; + [ LEFT JOIN NOM_FDOC F ON ir.ID_FDOC = F.ID_FDOC ]+; + [ LEFT JOIN vNOM_SUCURSALE S ON ir.ID_SUCURSALA = S.ID_SUCURSALA ]+; + [ LEFT JOIN NOM_PARTENERI P ON ir.ID_PART = P.ID_PART ] + ; + [left join (select count(*) as nr,cod from vatasamente_vanzari group by cod) atvanz on ir.cod = atvanz.cod) i ] +Else + lcSelect1 = [ select i.* from (select ir.an, ir.luna, ir.id_fact, ra.rate_acoperite, ir.id_part, ir.cont, ir.acont, ir.id_valuta, ]+; + [ ir.id_venchelt, ir.proc_tva, ] + ; + [ 000000000000000.0000 as PRECDEB, 000000000000000.0000 as PRECCRED, 000000000000000.0000 as PRECVALDEB, 000000000000000.0000 as PRECVALCRED, ]+; + [ s2.debit, s2.credit, s2.valdebit, s2.valcredit, ]+; + [ ir.nract, ir.serie_act, ir.dataact, ir.dataireg, ir.datascad, ir.curs, ]+; + [ ir.cod, ir.explicatia, ir.explicatia4, ir.explicatia5, ]+; + [ ir.id_responsabil, ir.id_fdoc, ir.id_lucrare, ir.id_ctr, ir.id_set, ir.id_act, ]+; + [ p.nume, p.cod_fiscal, f.FEL_DOCUMENT as fdoc, r.nume as nresp, l.nrord, ]+; + [ (case when ctr.numar is not null then ctr.numar || '/' else '' end) || TO_CHAR(ctr.data, 'DD.MM.YYYY') as contract, ]+; + [ v.nume_val, vc.explicatie as VENCHELT, ir.id_sucursala, s.sucursala, atvanz.nr ]+; + [ from (select an, luna, id_fact, id_part, cont, acont, id_valuta, ]+; + [ id_venchelt, proc_tva, nract, serie_act, dataact, dataireg, datascad, ]+; + [ curs, cod, explicatia, explicatia4, explicatia5, id_responsabil, id_fdoc, id_lucrare, id_ctr, id_set, id_act, id_sucursala ]+; + [ from ireg_parteneri ]+; + [ WHERE extract(year from dataireg) * 12 + extract(month from dataireg) = an * 12 + luna and id_part = ]+ Alltrim(Str(goContract.id_part))+[ and cont = ] + tcCont + [) ir ]+; + [ left join (select id_fact, cont,]+; + [ sum(pack_sesiune.suma_ron(debit,an,luna,]+ lcPA + [)) as debit, ]+; + [ sum(pack_sesiune.suma_ron(credit,an,luna,]+ lcPA + [)) as credit, ]+; + [ sum(pack_sesiune.suma_ron(valdebit,an,luna,]+ lcPA + [)) as valdebit, ]+; + [ sum(pack_sesiune.suma_ron(valcredit,an,luna,]+ lcPA + [)) as valcredit ]+; + [ from ireg_parteneri ]+; + [ where id_part = ]+ Alltrim(Str(goContract.id_part)) + ; + [ and cont = ] + tcCont + [ group by id_fact,cont) s2 ]+; + [ on ir.id_fact = s2.id_fact ]+; + [ left join (select s.id_ctr, ]+; + [ rf.id_fact, stringAgg(s.den_rata) as rate_acoperite from vctr_rate_facturi rf ]+; + [ left join (select * from vctr_scadentar order by id_ctr, den_rata) s on s.id_rata = rf.ID_RATA ]+; + [ group by s.id_ctr, rf.id_fact) ra ]+; + [ on ir.id_fact = ra.id_fact ]+; + [ LEFT JOIN CONTRACTE CTR ON ir.ID_CTR = CTR.ID_CTR ]+; + [ LEFT JOIN nom_venit_cheltuieli VC ON ir.ID_VENCHELT = VC.ID_VENCHELT ]+; + [ LEFT JOIN NOM_VALUTE V ON ir.ID_VALUTA = V.ID_VALUTA ]+; + [ LEFT JOIN VNOM_LUCRARI L ON ir.ID_LUCRARE = L.ID_LUCRARE ]+; + [ LEFT JOIN NOM_PARTENERI R ON ir.ID_RESPONSABIL = R.ID_part ]+; + [ LEFT JOIN NOM_FDOC F ON ir.ID_FDOC = F.ID_FDOC ]+; + [ LEFT JOIN vNOM_SUCURSALE S ON ir.ID_SUCURSALA = S.ID_SUCURSALA ]+; + [ LEFT JOIN NOM_PARTENERI P ON ir.ID_PART = P.ID_PART ] + ; + [left join (select count(*) as nr,cod from vatasamente_vanzari group by cod) atvanz on ir.cod = atvanz.cod) i ] +Endif + +lcOrder1 = [i.dataact] +lcgroup = [] + +lcFiltru1 = [] +lcFiltruOriginal = [] +llModParam = .T. +llAfiseaza = .F. + +&& DACA SUNT PE O SUCURSALA - SELECTEZ DOAR INREGISTRARILE DE PE SUCURSALA CURENTA +IF !ISNULL(gnIdSucursala) + lcFiltruOriginal = SUBSTR(gcCondSucursala,6) +ENDIF + +gencursor('poireg_parteneri','actcv', lcSelect1, lcFiltru1, lcschema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +poireg_parteneri.ca_baza1.afisare() +******** + +tcFis2 = "ActCv" +tlVisible = .T. + +Local c +c="nume+ALLTRIM(STR(YEAR(dataact)))+RIGHT('0'+ALLTRIM(STR(MONTH(dataact))),2)+RIGHT('0'+ALLTRIM(STR(DAY(dataact))),2)" +buton=1 + +If tlTest And .F. + Private pcCampVerif + pcCampVerif = ofis.camp_verif + Select (tcFis2) + Set Filter To + lcProc='inainte_'+Alltrim(tcFis2) + Do &lcProc In inaintede.prg + If buton=2 + Return + Endif +Endif + +lnsucces=update_jtva_coloane(,"jtva_temp") + +Sele actcv + + +Private pcAnalitic,pcLucrare +Store '' To pcAnalitic,pcLucrare + +Oreg=Createobject("FRM_IREG_PARTENERI") +With Oreg + .lActiv = plActiv + .cCont = lcContPart + *!* .LABEL10.Caption=Proper(tctitlu)&&& trebuie facut + .Lb_titlu_alb_b121.CAPTION = PROPER(lcDenumire) + .grid1.cTotCred.VISIBLE = .T. + .CONT = ALLT(pcCont) + .fisier = ALLTRIM(tcFis2) + *.Ck_valuta.VISIBLE = tlVisible + *.CK_explicatia.VISIBLE = tlVisible + *.ck_scadente.VISIBLE = tlVisible + * .CHECK9.VISIBLE = tlVisible + .grid1.cDataScad.VISIBLE = tlVisible + .grid1.cTotDebVal.VISIBLE = tlVisible + .grid1.cTotCredVal.VISIBLE = tlVisible + .grid1.cSoldVal.VISIBLE = tlVisible + .grid1.cNume_val.VISIBLE = tlVisible + .grid1.cCurs.VISIBLE = tlVisible + .grid1.cExplicatia.VISIBLE = tlVisible + IF !tlVisible + .CHECK3.CAPTION = 'Regularizate' + .CHECK4.CAPTION = 'Neregularizate' + .check10.CAPTION = 'Regularizat' + .grid1.cTotCred.header1.CAPTION = 'Regularizat' + .grid1.cDataScad.WIDTH = 0 + ENDIF + IF !plActiv + + .grid1.cSoldFinal.CONTROLSOURCE = "(Preccred+credit)-(precdeb+debit)" + .grid1.cSoldVal.CONTROLSOURCE ="(precvalcred+valcredit)-(precvaldeb+valdebit)" + *.ck_sold.camp_nume = "credit+preccred-precdeb-debit" + .grid1.cTotDeb.CONTROLSOURCE = "preccred+credit" + .grid1.cTotCred.CONTROLSOURCE = "precdeb+debit" + .grid1.cTotDebVal.CONTROLSOURCE = "precvalcred+valcredit" + .grid1.cTotCredVal.CONTROLSOURCE = "precvaldeb+valdebit" + .grid1.cDebit.CONTROLSOURCE = "credit" + .grid1.cCredit.CONTROLSOURCE = "debit" + .grid1.cValDebit.CONTROLSOURCE = "valcredit" + .grid1.cValCredit.CONTROLSOURCE = "valdebit" + .grid1.cPrecDeb.CONTROLSOURCE = "preccred" + .grid1.cPrecCred.CONTROLSOURCE = "precdeb" + + .grid1.cTotDeb.header1.CAPTION = "Total " + lcDenCredit + .grid1.cTotCred.header1.CAPTION = "Total " + lcDenDebit + .grid1.cTotDebVal.header1.CAPTION = "Total " + lcDenCredit + " valuta" + .grid1.cTotCredVal.header1.CAPTION = "Total " + lcDenDebit + " valuta" + .grid1.cDebit.header1.CAPTION = lcDenCredit + .grid1.cCredit.header1.CAPTION = lcDenDebit + .grid1.cValDebit.header1.CAPTION = lcDenCredit + " valuta" + .grid1.cValCredit.header1.CAPTION = lcDenDebit + " valuta" + .grid1.cPrecDeb.header1.CAPTION = "Prec " + lcDenCredit + .grid1.cPrecCred.header1.CAPTION = "Prec " + lcDenDebit + .grid1.cPrecValDeb.header1.CAPTION = "Prec Valuta " + lcDenCredit + .grid1.cPrecValCred.header1.CAPTION = "Prec Valuta " + lcDenDebit + ELSE + .grid1.cSoldFinal.CONTROLSOURCE = "(precdeb+debit)-(preccred+credit)" + .grid1.cSoldVal.CONTROLSOURCE ="(precvaldeb+valdebit)-(precvalcred+valcredit)" + *.ck_sold.camp_nume = "precdeb+debit-credit-preccred" + .grid1.cTotDeb.header1.CAPTION = "Total " + lcDenDebit + .grid1.cTotCred.header1.CAPTION = "Total " + lcDenCredit + .grid1.cTotDebVal.header1.CAPTION = "Total " + lcDenDebit + " valuta" + .grid1.cTotCredVal.header1.CAPTION = "Total " + lcDenCredit + " valuta" + .grid1.cDebit.header1.CAPTION = lcDenDebit + .grid1.cCredit.header1.CAPTION = lcDenCredit + .grid1.cValDebit.header1.CAPTION = lcDenDebit + " valuta" + .grid1.cValCredit.header1.CAPTION = lcDenCredit + " valuta" + .grid1.cPrecDeb.header1.CAPTION = "Prec " + lcDenDebit + .grid1.cPrecCred.header1.CAPTION = "Prec " + lcDenCredit + .grid1.cPrecValDeb.header1.CAPTION = "Prec Valuta " + lcDenDebit + .grid1.cPrecValCred.header1.CAPTION = "Prec Valuta " + lcDenCredit + ENDIF + IF TYPE('pcTotctva')#'U' AND TYPE('pcAchitat')#'U' + .grid1.cTotCred.header1.CAPTION = pcAchitat + .grid1.cTotDeb.header1.CAPTION = pcTotctva + ENDIF + IF TYPE('pcSumaTotal')#'U' AND TYPE('pcSumaAchi')#'U' + .CHECK13.CAPTION = pcSumaTotal + .check10.CAPTION = pcSumaAchi + ENDIF + IF TYPE('actcv.nresp') # 'U' + .grid1.cNresp.VISIBLE= .T. + .grid1.cNresp.CONTROLSOURCE = 'nresp' + *.Ck_responsabil.VISIBLE = .T. + ENDIF +*!* IF plActiv +*!* .grid1.SETALL("DynamicForeColor", "IIF(ABS((preccred+credit)-(precdeb+debit))=0,RGB(0,0,0), iif(((precdeb+debit) < (preccred+credit)),RGB(255,0,0),RGB(0,0,255)))", "Column") +*!* ELSE +*!* .grid1.SETALL("DynamicForeColor", "IIF(ABS((preccred+credit)-(precdeb+debit))=0,RGB(0,0,0), iif(((precdeb+debit) > (preccred+credit)),RGB(255,0,0),RGB(0,0,255)))", "Column") +*!* ENDIF + IF plActiv + .grid1.SETALL("DynamicForeColor", "IIF(ABS((preccred+credit)-(precdeb+debit))=0,RGB(0,0,0), iif(((precdeb+debit) < (preccred+credit)), RGB(166,0,0), RGB(0,89,168)))", "Column") + ELSE + .grid1.SETALL("DynamicForeColor", "IIF(ABS((preccred+credit)-(precdeb+debit))=0,RGB(0,0,0), iif(((precdeb+debit) > (preccred+credit)), RGB(166,0,0), RGB(0,89,168)))", "Column") + ENDIF +Endwith +Oreg.do_cauta() +Oreg.Show(1) + +Release Oreg +Use In actcv + +Endproc && lans_ireg_parteneri +*--------------------------------------------------------------------------------- diff --git a/Programe/oproceduri_preluari.prg b/Programe/oproceduri_preluari.prg new file mode 100644 index 0000000..1db6705 --- /dev/null +++ b/Programe/oproceduri_preluari.prg @@ -0,0 +1,41 @@ +***----------------------------------------------------- +Procedure preluare_curs +PARAMETERS tcTabelCurs + +LOCAL lcTabelCurs +lcTabelCurs = ALLTRIM(tcTabelCurs) + +Select (lcTabelCurs) +SCAN + WAIT WINDOW ALLTRIM(STR(RECNO()))+"/"+ALLTRIM(STR(RECCOUNT())) NOWAIT + pnCurs = Curs + pdData1 = Data + pdData2 = data2 + lnId_valuta = id_tipv + Do Case + Case lnId_valuta = 1 + pnId_valuta = 41695 + Case lnId_valuta = 2 + pnId_valuta = 41692 + Case lnId_valuta = 3 + pnId_valuta = 41694 + Case lnId_valuta = -1 + pnId_valuta = 41697 + OTHERWISE + pnId_valuta = 41696 + Endcase + + + lcSql = [begin pack_crm.adauga_curs(?gcS, ?pnCurs, ?pdData1, ?pdData2, ?pnId_valuta); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.adauga_curs'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +ENDSCAN + +WAIT WINDOW "Preluarea s-a terminat!" +Endproc && preluare_curs +***----------------------------------------------------- + diff --git a/Programe/oproceduri_registretva.prg b/Programe/oproceduri_registretva.prg new file mode 100644 index 0000000..8881db0 --- /dev/null +++ b/Programe/oproceduri_registretva.prg @@ -0,0 +1,57 @@ +****************************************************************** +PROCEDURE listare_registru_tva +LPARAMETERS tcRegistru + + pcRegistru = UPPER(ALLTRIM(tcRegistru)) + DO CASE + CASE 'VANZ'$pcRegistru + pcContTVA = [4427] + pcListaContTVA = [411,4111,4112,4113,4114,4115,4116,4117,461,635,5311,5121,428,4281,4282,4426,4428] + pcListaContBaza = [411,4111,4112,4113,4114,4115,4116,4117,461,428,4281,4282] + pcListaContExceptii = [667,419] + OTHERWISE + pcContTVA = [4426] + pcListaContTVA = [401,404,5121,5124,542,4427,4428] + pcListaContBaza = [401,404] + pcListaContExceptii = [767] + ENDCASE + + + lcSql = [{call PACK_REGISTRE_TVA.REGISTRUTVA(?gcS, ?gnAn, ?gnLuna, ] + ; + [?pcRegistru, ?pcContTVA, ?pcListaContTVA, ?pcListaContBaza, ?pcListaContExceptii )}] + lcCursor = 'crsRegistruTemp' + lnSucces = goExecutor.oExecute(lcSql,lcCursor) + IF lnSucces < 0 + AMESSAGE(goExecutor.cEroare,0+16,"Eroare") + ELSE + + SELECT nract, dataact, PART AS nume, cod_fiscal, fdoc, baza, proc_tva, tva, baza + tva as totctva, 00000000000.0000 as total ; + FROM crsRegistruTemp ; + INTO CURSOR crsRegistru ; + READWRITE ORDER BY nract, dataact, nume + USE IN crsRegistruTemp + + SELECT nract, dataact, nume,sum(totctva) as total ; + from crsRegistru ; + INTO CURSOR tgrup ; + GROUP BY nract, dataact, nume + + SELECT tgrup + SCAN + SCATTER NAME ot + SELECT crsRegistru + LOCATE FOR nume = ot.nume AND nract = ot.nract AND dataact = ot.dataact + IF FOUND() + REPLACE total WITH ot.total + ENDIF + SELECT tgrup + ENDSCAN + USE IN tgrup + + SELECT crsRegistru + REPORT FORM registru_tva_simplu TO PRINTER PROMPT PREVIEW + USE IN crsRegistru + ENDIF +ENDPROC + +****************************************************************** \ No newline at end of file diff --git a/Programe/oproceduri_roaclienti.prg b/Programe/oproceduri_roaclienti.prg new file mode 100644 index 0000000..4356371 --- /dev/null +++ b/Programe/oproceduri_roaclienti.prg @@ -0,0 +1,1814 @@ +Procedure viz_contracte + +Private poCtr +Store '' To poCtr + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +*!* lcSchema1 = [id_ctr N(5), id_part N(10), nume C(30), nr_ctr N(10), data_ctr D(8), obiect C(200), tip N(1), durata N(3), valftva N(20,4), proc_tva N(5,2), avans N(20,4), proc_avans N(5,2),]+; +*!* [val_finant N(20,4), proc_finant N(5,2), dobanda N(20,4), proc_dobanda N(5,2), val_rezid N(20,4), proc_rezid N(5,2), ]+; +*!* [rata N(20,4), comision N(20,4), proc_comision N(5,2), proc_asigurare N(5,2), val_asigurare N(20,4), val_ctr N(20,4), id_valuta N(5), nume_val C(4), curs N(10,4), zi_plata N(2), incetat N(1), sters N(1) ] +*!* +*!* lcSelect1 = [select c.id_ctr, c.id_part, p.nume, c.nr_ctr, c.data_ctr, c.obiect, c.tip, c.durata, c.valftva, c.proc_tva, c.avans, c.proc_avans, ]+; +*!* [c.val_finant, c.proc_finant, c.dobanda, c.proc_dobanda, c.val_rezid, c.proc_rezid, ]+; +*!* [c.rata, c.comision, c.proc_comision, c.proc_asigurare, c.val_asigurare, c.val_ctr, c.id_valuta, v.nume_val, c.curs, c.zi_plata, c.incetat, c.sters from ] + gcS + ; +*!* [.cf_contracte c join ] + gcS + [.nom_parteneri p on p.id_part = c.id_part]+; +*!* [ join ] + gcS + [.nom_valute v on c.id_valuta = v.id_valuta] +lcSelect1 = [select * from ] + gcS + [.vcontracte] +lcOrder1 = [] +lcgroup = [] +lcFiltru1 = [1=2] +lcFiltruOriginal = [] +llModParam = .T. +llAfiseaza = .F. + +gencursor('poCtr','cContracte', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +poCtr.ca_baza1.afisare() + +Select cContracte + +lovcL = Createobject("frm_contracte") +lovcL.lb_titlu_alb_b121.Caption = "CONTRACTE CLIENTI" +lovcL.Show(1) + +Release poCtr + +Endproc && viz_contracte +***----------------------------------------------------------------------------------------------------------------------------- +Procedure adauga_contract +Parameters tcAlias + +Local lcAlias +lcAlias = tcAlias + +Private pnId_ctr, pcNr_ctr +Store 0 To pnId_ctr +Store '' To pcNr_ctr + + +Local lnTip, lnCurs_ctr, lnNr_rate +Local lcId_tipc, lcId_tipc, lcId_tipcurs, lcValvaluta, lcvalctva, lcZi_fact, lcziscad, lcId_responsabil, lcId_sectie, lcId_venchelt, lcCoef_pen, lcDescriere + +Store "" To lcId_tipc, lcId_tipc, lcId_tipcurs, lcValvaluta, lcvalctva, lcZi_fact, lcziscad, lcId_responsabil, lcId_sectie, lcId_venchelt, lcCoef_pen, lcDescriere +Store '1' To lcZi_fact + +Select (lcAlias) && cContracte +Scatter Name poRec Blank +poRec.data_ctr = Datetime() +poRec.zi_fact = 1 +poRec.proc_tva = 19 +**--------------------- + +lcSql = [begin pack_crm.next_id_ctr(?gcS, ?@pnId_ctr); end;] +lnSucces = goExecutor.oExecute(lcSql) + +If lnSucces < 0 + Messagebox('pack_crm.next_id_ctr'+goExecutor.cEroare,0+16,"Eroare") + Return +Endif +**--------------------- +poRec.id_ctr = pnId_ctr +**--------------------- +*!* pcTabel = "crm_nrcontr" +*!* pcCamp = "nrcontr" +*!* lcSql = [begin pack_crm.read_nr(?gcS, ?pcTabel, ?pcCamp, ?@pnNr_ctr); end;] +*!* lnSucces = goExecutor.oExecute(lcSql) + +*!* If lnSucces < 0 +*!* Messagebox('pack_crm.read_nr'+goExecutor.cEroare,0+16,"Eroare") +*!* Return +*!* Endif +*!* **--------------------- +*!* poRec.nr_ctr = pnNr_ctr +*!* **--------------------- + +lcSql = [begin pack_crm.next_nr_ctr(?gcS, ?@pcNr_ctr); end;] +lnSucces = goExecutor.oExecute(lcSql) + +If lnSucces < 0 + Messagebox('pack_crm.next_nr_ctr'+goExecutor.cEroare,0+16,"Eroare") + Return +Endif +**--------------------- +poRec.nr_ctr = pcNr_ctr +**--------------------- + +Private poTipc +Store '' To poTipc + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select id_tipc, tipc from ] + gcS + [.crm_tipc where 1=2'] +lcOrder1 = [id_tipc] +lcFiltru1 = [] +llAfiseaza = .F. +gencursor('poTipc','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poTipc.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_tipc Readwrite +Release poTipc + +Select cNom_tipc +Go Top +Scatter Name poTipc +poRec.id_tipc = cNom_tipc.id_tipc +**--------------------- +Private poPrestatii +Store '' To poPrestatii + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vcrm_contracte_articole where 1=2'] +lcOrder1 = [] +lcFiltru1 = [ id_ctr=] + Alltrim(Str(poRec.id_ctr)) +llAfiseaza = .F. +gencursor('poPrestatii','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poPrestatii.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cArticoleCtr Readwrite +Select cArticoleCtr +Release poPrestatii +**--------------------- +Create Cursor cScadentar (id_ctr N(5), id_rata N(10), nr_rata N(10), den_rata C(30), data_rata D, procent N(4,2), valrata N(20,4), valfact N(20,4), id_valuta N(5), nume_val C(4)) +Select cScadentar +**--------------------- +Private poDocumente +Store '' To poDocumente + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vcrm_contracte_documente where 1=2'] +lcOrder1 = [] +lcFiltru1 = [ id_ctr=] + Alltrim(Str(poRec.id_ctr)) +llAfiseaza = .F. +gencursor('poDocumente','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poDocumente.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cLinkuri Readwrite +Select cLinkuri +Release poDocumente +**--------------------- +llNou = .T. +locnC = Createobject("frm_contract_nou",pnId_ctr, llNou) +locnC.Show(1) + +**--------------------- +If Used("cNom_tipc") + Use In cNom_tipc +Endif + +If buton = 2 + Return +Endif + +*!* **--------------------- +*!* pcTabel = "crm_nrcontr" +*!* pcCamp = "nrcontr" +*!* lcSql = [begin pack_crm.write_nr(?gcS, ?pcTabel, ?pcCamp, ?pnNr_ctr); end;] +*!* lnSucces = goExecutor.oExecute(lcSql) + +*!* If lnSucces < 0 +*!* Messagebox('pack_crm.write_nr'+goExecutor.cEroare,0+16,"Eroare") +*!* Return +*!* Endif +*!* **--------------------- +*!* pdData_ctr = Nvl(poRec.data_ctr, {//}) +*!* pcObiect = poRec.obiect + +*!* pnDurata = Nvl(poRec.durata,0) +*!* pnProc_tva = Nvl(poRec.proc_tva,0) +*!* pnId_valuta = Nvl(poRec.id_valuta,0) +*!* pnZi_plata = Nvl(poRec.zi_plata,0) +*!* pnCurs = Nvl(poRec.Curs,0) +*!* pnIncetat = Nvl(poRec.Incetat,0) +*!* pnId_tipc = poRec.id_tipc +*!* pnId_tipcurs = poRec.id_tipcurs +*!* pnValvaluta = poRec.valvaluta +*!* pnvalctva = poRec.valctva +*!* pnziscad = poRec.ziscad +*!* pnId_responsabil = poRec.id_responsabil +*!* pnId_sectie = poRec.id_sectie +*!* pnId_venchelt = poRec.id_venchelt +*!* pnCoef_pen = poRec.coef_pen +*!* pcDescriere = poRec.descriere + +*!* lcSql = [begin pack_crm.adauga_contract(?gcS, ?pnId_ctr, ?pnId_part, ?pnNr_ctr, ?pdData_ctr, ?pcObiect, ?pnDurata,]+; +*!* [ ?pnProc_tva, ?pnId_valuta, ?pnZi_plata, ?pnCurs, ?pnIncetat, ?pnId_tipc, ?pnId_tipcurs, ?pnValvaluta, ?pnvalctva, ]+; +*!* [?pnziscad, ?pnId_responsabil, ?pnId_sectie, ?pnId_venchelt, ?pnCoef_pen, ?pcDescriere, ?gnIdUtil); end;] +*!* lnSucces = goExecutor.oExecute(lcSql) + +lcId_ctr = Alltrim(Str(pnId_ctr)) +lnId_part = poRec.id_part +lcId_part = Alltrim(Str(lnId_part)) +lcNr_ctr = Alltrim(poRec.nr_ctr) +ldData_ctr = Dtos(poRec.data_ctr) +lcObiect = Alltrim(poRec.obiect) + +lcDurata = Alltrim(Str(poRec.durata)) +lcProc_tva = Alltrim(Str(poRec.proc_tva)) +lcId_valuta = Alltrim(Str(poRec.id_valuta)) + +If poRec.zi_fact = 99 + lcZi_fact = '-1' +Else + lcZi_fact = Alltrim(Str(poRec.zi_fact)) +Endif +lcCurs = Alltrim(Str(poRec.Curs)) +lcIncetat = Alltrim(Str(poRec.Incetat)) +lcId_tipc = Alltrim(Str(poRec.id_tipc)) +lcId_categ_ctr = ALLTRIM(STR(porec.id_categ_ctr)) +lcId_tipcurs = Alltrim(Str(poRec.id_tipcurs)) +lcValvaluta = Alltrim(Str(poRec.valvaluta,20,gnPA)) +lcvalctva = Alltrim(Str(poRec.valctva,20,gnPA)) +lcziscad = Alltrim(Str(poRec.ziscad)) +lcId_responsabil = Alltrim(Str(poRec.id_responsabil)) +lcId_sectie = Alltrim(Str(poRec.id_sectie)) +lcId_venchelt = Alltrim(Str(poRec.id_venchelt)) +lcCoef_pen = Alltrim(Str(poRec.coef_pen)) +lcDescriere = Alltrim(poRec.descriere) +lcId_art_fact = Alltrim(Str(poRec.id_art_fact)) +lcIdUtil = Alltrim(Str(gnIdUtil)) + +lcSql = [begin pack_crm.adauga_contract('] + gcS + [',] + lcId_ctr + [,] + lcId_part + [,'] + lcNr_ctr + ; + [', TO_DATE(]+Iif(!Empty(ldData_ctr),[']+ldData_ctr+['],[NULL])+[,'YYYY-MM-DD'),']+; + lcObiect + [',] + lcDurata + [,] + ; + lcProc_tva + [,] + lcId_valuta + [,] + lcZi_fact + [,] + lcCurs + [,] + lcIncetat + [,] + ; + lcId_tipc + [,] + lcId_categ_ctr + [,] + ; + lcId_tipcurs + [,] + lcValvaluta + [,] + lcvalctva + [,] + ; + lcziscad + [,] + lcId_responsabil + [,] + lcId_sectie + [,] + lcId_venchelt + [,] + lcCoef_pen + [,'] + lcDescriere + [',] + ; + lcId_art_fact + [,] + lcIdUtil +[); end;] +lnSucces = goExecutor.oExecute(lcSql) + +Strtofile(lcSql,"c:\sql.txt") + +If lnSucces < 0 + Messagebox('pack_crm.adauga_contract'+goExecutor.cEroare,0+16,"Eroare") + Return +Endif +**--------------------- +&& lcTabelArticole = locnF.grid_articole.RecordSource + +Select cArticoleCtr +Replace All id_ctr With pnId_ctr +Do update_ctr_art With "cArticoleCtr" In oproceduri_roaClienti.prg +If Used("cArticoleCtr") + Use In cArticoleCtr +Endif +**--------------------- +lnId_tipc = poRec.id_tipc +If lnId_tipc = 1 +*!* lcSql = [begin pack_crm.adauga_rate(?gcS, ?pnId_ctr, ?pnDurata, ?pnValvaluta, ?pnId_valuta, ?pdData_ctr, ?pnZi_plata); end;] + lcSql = [begin pack_crm.adauga_rate('] + gcS + [',] + lcId_ctr + [,] + lcDurata + [,] + lcValvaluta + [,] + lcId_valuta + ; + [, TO_DATE(]+Iif(!Empty(ldData_ctr),[']+ldData_ctr+['],[NULL])+[,'YYYY-MM-DD'),]+; + lcZi_fact + [); end;] + + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.adauga_rate'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +ENDIF + +If poRec.id_tipc = 2 && mentenanta + lcSql = [begin pack_crm.mentenanta(] + ALLTRIM(STR(gnAn)) + [,] + ALLTRIM(STR(gnLuna)) + [,] + lcId_ctr + [); end;] + + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.mentenanta'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +Endif + +*!* IF pnId_tipc <> 3 +*!* Do viz_rate With pocontract +*!* Endif +**--------------------- +If Used("cScadentar") + Use In cScadentar +Endif +**--------------------- + +Return pnId_ctr +Endproc && adauga_contract +***----------------------------------------------------------------------------------------------------------------------------- +Procedure modifica_contract +Parameters toContract + +poRec = toContract + +Private pnId_ctr, pnId_part, pnNr_ctr, pdData_ctr, pcObiect, pnDurata, pnProc_tva, pnId_valuta, pnZi_fact, pnId_art_fact +Private pnCurs, pnIncetat, pnVal_ctr, pnVal_ctr_f +**--------------------- +*!* If poRec.zi_fact = -1 +*!* poRec.zi_fact = 99 +*!* Endif + +*!* Private poTipc +*!* Store '' To poTipc + +*!* Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +*!* lcSchema1 = [''] +*!* lcSelect1 = ['select id_tipc, tipc from ] + gcS + [.crm_tipc where 1=2'] +*!* lcOrder1 = [id_tipc] +*!* lcFiltru1 = [] +*!* llAfiseaza = .F. +*!* gencursor('poTipc','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +*!* poTipc.ca_baza1.afisare() + +*!* Select * From cIntermediar Into Cursor cNom_tipc Readwrite +*!* Release poTipc + +*!* Select cNom_tipc +*!* Locate For id_tipc = poRec.id_tipc +*!* Scatter Name poTipc +*!* poRec.id_tipc = cNom_tipc.id_tipc +**--------------------- +Private poCtr_art +Store '' To poCtr_art + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ctr_articole where 1=2'] +lcOrder1 = [] +lcFiltru1 = [ id_ctr=] + Alltrim(Str(poRec.id_ctr)) +llAfiseaza = .F. +gencursor('poCtr_art','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poCtr_art.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cCtrArt Readwrite +Select cCtrArt +Release poCtr_art +**--------------------- +*!* Private poScadentar +*!* Store '' To poScadentar + +*!* Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +*!* lcSchema1 = ['id_ctr n(5), id_rata n(10), nr_rata N(10), den_rata C(30), data_rata D, procent n(4,2), valrata n(20,4), valfact n(20,4), id_valuta n(5), nume_val C(4)'] + +*!* lcSelect1 = ['select id_ctr, id_rata, nr_rata, den_rata, data_rata, procent, valrata, valfact, id_valuta, nume_val from ] + gcS + [.vcrm_rate where 1=2'] +*!* lcOrder1 = [nr_rata] + +*!* lcFiltru1 = [id_ctr=] + Alltrim(Str(poRec.id_ctr)) +*!* llAfiseaza = .F. +*!* gencursor('poScadentar','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +*!* poScadentar.ca_baza1.afisare() + +*!* Select * From cIntermediar Into Cursor cScadentar Readwrite +*!* Release poScadentar + +*!* Select cScadentar +**--------------------- +**--------------------- +*!* Private poDocumente +*!* Store '' To poDocumente + +*!* Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +*!* lcSchema1 = [''] +*!* lcSelect1 = ['select * from ] + gcS + [.vcrm_contracte_documente where 1=2'] +*!* lcOrder1 = [] +*!* lcFiltru1 = [ id_ctr=] + Alltrim(Str(poRec.id_ctr)) +*!* llAfiseaza = .F. +*!* gencursor('poDocumente','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +*!* poDocumente.ca_baza1.afisare() + +*!* Select * From cIntermediar Into Cursor cLinkuri Readwrite +*!* Select cLinkuri +*!* Release poDocumente +**--------------------- + +locnF = Createobject("frm_contract_nou",poRec.id_ctr) +locnF.Show(1) +**--------------------- +If Used("cNom_tipc") + Use In cNom_tipc +Endif + +If buton = 2 + Return +Endif +**--------------------- +pcId_ctr = Alltrim(Str(poRec.id_ctr)) +pcId_part = Alltrim(Str(poRec.id_part)) +pcNr_ctr = Alltrim(poRec.numar) +*pcObiect = Nvl(Alltrim(poRec.obiect),"") + +* pcDurata = Nvl(Alltrim(Str(poRec.durata)),"") +pcProc_tva = Nvl(Alltrim(Str(poRec.proc_tva)),"") +pcId_valuta = Nvl(Alltrim(Str(poRec.id_valuta)),"") +*!* If poRec.zi_fact = 99 +*!* pcZi_fact = '-1' +*!* Else +*!* pcZi_fact = Alltrim(Str(poRec.zi_fact)) +*!* Endif + +* pcCurs = Nvl(Alltrim(Str(poRec.Curs)),"0") +pcIncetat = Nvl(Alltrim(Str(poRec.Incetat)),"") +pcId_tipc = Nvl(Alltrim(Str(poRec.id_tip_ctr)),"") + +pcValftva = Nvl(Alltrim(Str(poRec.valftva,20,gnPA)),"") +pcvalctva = Nvl(Alltrim(Str(poRec.valctva,20,gnPA)),"") +pcziscad = Nvl(Alltrim(Str(poRec.ziscad)),"0") +pcId_responsabil = Nvl(Alltrim(Str(poRec.id_responsabil)),"0") +pcId_sectie = Nvl(Alltrim(Str(poRec.id_sectie)),"0") +pcId_venchelt = Nvl(Alltrim(Str(poRec.id_venchelt)),"0") +pcCoef_pen = Nvl(Alltrim(Str(poRec.coef_pen,6,gnPA)),"0") +pcDescriere = Nvl(Alltrim(poRec.descriere),"") +pcId_art_fact = Nvl(Alltrim(Str(poRec.id_art_fact)),"0") + +ldData_ctr = Dtos(poRec.data_ctr) +lcIdUtil = Alltrim(Str(gnIdUtil)) + +lcSql = [begin pack_crm.modifica_contract('] + gcS + [',] + pcId_ctr + [,] + pcId_part + [,'] + pcNr_ctr +; + [', TO_DATE(]+Iif(!Empty(ldData_ctr),[']+ldData_ctr+['],[NULL])+[,'YYYY-MM-DD'),']+; + pcObiect + [',] + pcDurata +[,]+; + pcProc_tva + [,] + pcId_valuta + [,] + pcZi_fact + [,] + pcCurs +; + [,] + pcIncetat + [,] + pcId_tipc + [,] + pcId_categ_ctr + [,] + pcId_tipcurs + [,] + pcValvaluta + [,] + pcvalctva + [,] +; + pcziscad + [,]+ pcId_responsabil + [,] + pcId_sectie + [,] + pcId_venchelt + [,] + pcCoef_pen + [,'] + ; + pcDescriere + [',] + pcId_art_fact + [,] + lcIdUtil +[); end;] + +Strtofile(lcSql,"c:\sql.txt") + +lnSucces = goExecutor.oExecute(lcSql) + +If lnSucces < 0 + Messagebox('pack_crm.modifica_contract'+goExecutor.cEroare,0+16,"Eroare") + Return +Endif +**--------------------- +&& lcTabelArticole = locnF.grid_articole.RecordSource + +Select cArticoleCtr +Replace All id_ctr With poRec.id_ctr +Do update_ctr_art With "cArticoleCtr" In oproceduri_roaClienti.prg +If Used("cArticoleCtr") + Use In cArticoleCtr +Endif +**--------------------- +**--------------------- +Do update_ctr_doc With "cLinkuri" In oproceduri_roaClienti.prg +If Used("cLinkuri") + Use In cLinkuri +Endif +**--------------------- + +Endproc && modifica_contract +***----------------------------------------------------------------------------------------------------------------------------- +Procedure update_ctr_art +Parameters tcTabelArticole + +Local lcTabelArticole +lcTabelArticole = tcTabelArticole + +Private pnGasit, pnId_ctr_art, pnId_ctr, pnId_art, pnPret_unitar, pnCant, pnValoare,pnDiscount, pnValcdiscount, pcUM, pnId_valuta_art +Store 0 To pnGasit, pnId_ctr_art, pnId_ctr, pnId_art, pnPret_unitar, pnCant, pnValoare, pnDiscount, pnValcdiscount, pnId_valuta_art +Store "" To pcUM + +&& update articole +lcDeleted = Set("Deleted") +Set Deleted Off + +Select (lcTabelArticole) +Scan + pnId_ctr_art = id_ctr_art + pnId_ctr = id_ctr + pnId_art = id_art + pnPret_unitar = pret_unitar + pnCant = cant + pnValoare = valoare + pnDiscount = discount + pnValcdiscount = valcdiscount + pcUM = Alltrim(um) + pnId_valuta_art = id_valuta + + If Deleted() + llsters = .T. + Else + llsters = .F. + Endif + + lcSql = [begin pack_crm.cauta_ctr_art(?gcS, ?pnId_ctr, ?pnId_art, ?@pnGasit); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.cauta_ctr_art'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + If pnGasit = 0 + lcSql = [begin pack_crm.adauga_ctr_art(?gcS, ?pnId_ctr, ?pnId_art, ?pnPret_unitar, ?pnCant, ?pnValoare, ?pnDiscount, ?pnValcdiscount, ?pcUM, ?pnId_valuta_art); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.adauga_ctr_art'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Else + If llsters && sterge_rata + lcSql = [begin pack_crm.sterge_ctr_art(?gcS, ?pnId_ctr_art); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.sterge_ctr_art'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Else + lcSql = [begin pack_crm.modifica_ctr_art(?gcS, ?pnId_ctr_art, ?pnId_ctr, ?Id_art, ?pnPret_unitar, ?pnCant, ?pnValoare, ?pnDiscount, ?pnValcdiscount, ?pcUM, ?pnId_valuta_art); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.modifica_ctr_art'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Endif + Endif + Select (lcTabelArticole) +Endscan + +Set Deleted &lcDeleted + +Endproc && update_ctr_art +***----------------------------------------------------------------------------------------------------------------------------- +***----------------------------------------------------------------------------------------------------------------------------- +Procedure update_ctr_doc +Parameters tcTabelDocumente + +Local lcTabelDocumente +lcTabelDocumente = tcTabelDocumente + +Private pnGasit, pnId_ctr_doc, pnId_ctr, pcDenumire, pcLink +Store 0 To pnGasit, pnId_ctr_doc, pnId_ctr +Store "" To pcDenumire, pcLink + +&& update documente +lcDeleted = Set("Deleted") +Set Deleted Off + +Select (lcTabelDocumente) +Scan + pnId_ctr_doc = id_ctr_doc + pnId_ctr = id_ctr + pcDenumire = denumire + pcLink = Link + + If Deleted() + llsters = .T. + Else + llsters = .F. + Endif + + lcSql = [begin pack_crm.cauta_ctr_doc(?gcS, ?pnId_ctr_doc, ?@pnGasit); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.cauta_ctr_doc'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + If pnGasit = 0 + lcSql = [begin pack_crm.adauga_ctr_doc(?gcS, ?pnId_ctr, ?pcDenumire, ?pcLink); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.adauga_ctr_doc'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Else + If llsters && sterge_doc + lcSql = [begin pack_crm.sterge_ctr_doc(?gcS, ?pnId_ctr_doc); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.sterge_ctr_doc'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Else + lcSql = [begin pack_crm.modifica_ctr_doc(?gcS, ?pnId_ctr_doc, ?pnId_ctr, ?pcDenumire, ?pcLink); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.modifica_ctr_doc'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Endif + Endif + Select (lcTabelDocumente) +Endscan + +Set Deleted &lcDeleted + +Endproc && update_ctr_doc +***----------------------------------------------------------------------------------------------------------------------------- +Procedure factura +Parameters tnId_ctr, tnId_part, tlProforma + +If Empty(tnId_ctr) And Empty(tnId_part) + Return +Endif + +Local llProforma +llProforma = tlProforma + +Private pcMasina +Store "" To pcMasina + +Private pnId_ctr, pnId_part +pnId_ctr = tnId_ctr +pnId_part = tnId_part + +Private pnpretuval, pnId_fact, pnId_proforma +Store 0 To pnpretuval, pnId_fact, pnId_proforma && valoarea cu care intru pe factura (pentru contractele in rate) + +**--------------- +If !Empty(pnId_ctr) + Private poCtr + Store '' To poCtr + + Private pnNr_fact + Store 0 To pnNr_fact + + Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza + lcSchema1 = [''] + lcSelect1 = ['select * from ] + gcS + [.vcrm_contracte where 1=2'] + lcOrder1 = [] + lcFiltru1 = [ id_ctr=]+Alltrim(Str(pnId_ctr)) + llAfiseaza = .F. + gencursor('poCtr','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) + poCtr.ca_baza1.afisare() + + Select * From cIntermediar Into Cursor cCtr Readwrite + Release poCtr + + Select cCtr + Scatter Name poContract + Use In cCtr + +Endif +**--------------- +Private poClient +Store '' To poClient + +Private pnNr_fact +Store 0 To pnNr_fact + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_parteneri where 1=2'] +lcOrder1 = [] +If !Empty(pnId_ctr) + lcFiltru1 = [ id_part=]+Alltrim(Str(poContract.id_part)) +Else + lcFiltru1 = [ id_part=]+Alltrim(Str(pnId_part)) +Endif +llAfiseaza = .F. +gencursor('poClient','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poClient.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cPartener Readwrite +Release poClient +**-- +Select cPartener +Scatter Name poClient +Use In cPartener +**--------------- +Private poFact +Store '' To poFact + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vcrm_facturi where 1=2'] +lcOrder1 = [] +lcFiltru1 = [1=2] +llAfiseaza = .F. +gencursor('poFact','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poFact.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cFact Readwrite +Release poFact + +Select cFact +Scatter Name poFactura Blank +Use In cFact +**--------------- +If !Empty(pnId_ctr) + poFactura.id_ctr = poContract.id_ctr + poFactura.id_valuta = poContract.id_valuta + poFactura.nume_val = poContract.nume_val + poFactura.proc_tva = poContract.proc_tva +Else + poFactura.proc_tva = 19 +Endif +poFactura.id_part = poClient.id_part +poFactura.data_fact = Date() +poFactura.data_curs = {//} +**--------------------- + +If llProforma + lcSql = [begin pack_crm.next_id_proforma(?gcS, ?@pnId_proforma); end;] + lnSucces = goExecutor.oExecute(lcSql) + If lnSucces < 0 + Messagebox('pack_crm.next_id_proforma'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + AddProperty(poFactura,"id_proforma",pnId_proforma) +Else + lcSql = [begin pack_crm.next_id_fact(?gcS, ?@pnId_fact); end;] + lnSucces = goExecutor.oExecute(lcSql) + If lnSucces < 0 + Messagebox('pack_crm.next_id_fact'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + poFactura.id_fact = pnId_fact +Endif +**--------------------- + +poFactura.data_ireg = poFactura.data_fact +If Year(poFactura.data_ireg) * 12 + Month(poFactura.data_ireg) <> gnAn*12 + gnLuna + ldData = Date(gnAn, gnLuna, 1) + ldData = Gomonth(ldData,1)-1 + poFactura.data_ireg = ldData +Endif + +*!* poFactura.data_scad = poFactura.data_fact + poContract.ziscad +*!* If poContract.id_tipcurs=1 +*!* poFactura.data_curs = poFactura.data_fact +*!* Else +*!* pzlc = "1/" + Alltrim(Str(Month(poFactura.data_fact))) + "/" + Alltrim(Str(Year(poFactura.data_fact))) +*!* data1 = Ctod(pzlc) +*!* uzlt = Dtoc(data1-1) + +*!* poFactura.data_curs = uzlt +*!* Endif +**--------------------- +If llProforma + pcTabel = "nrproforme" + pcCamp = "nrproforma" +Else + pcTabel = "nrfact" + pcCamp = "nrfact" +Endif + +lcSql = [begin pack_crm.read_nr(?gcS, ?pcTabel, ?pcCamp, ?@pnNr_fact); end;] +lnSucces = goExecutor.oExecute(lcSql) + +If lnSucces < 0 + Messagebox('pack_crm.read_nr'+goExecutor.cEroare,0+16,"Eroare") + Return +Endif +**--------------------- +poFactura.nr_fact = pnNr_fact +**--------------------- +Private poRespons +Store '' To poRespons + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_responsabili where 1=2'] +lcOrder1 = [nume] +If !Empty(pnId_ctr) And !Isnull(poContract.id_responsabil) + lcFiltru1 = [id_responsabil=] + Alltrim(Str(poContract.id_responsabil)) +Else + lcFiltru1 = [1=2] +Endif +llAfiseaza = .F. +gencursor('poRespons','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poRespons.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_Responsabili Readwrite +Release poRespons + +Select cNom_Responsabili +Scatter Name poResponsabil +Use In cNom_Responsabili +**--------------------- +Private poDeleg +Store '' To poDeleg + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_delegati where 1=2'] +lcOrder1 = [nume] +lcFiltru1 = [id_part =] + Alltrim(Str(poClient.id_part)) +llAfiseaza = .F. +gencursor('poDeleg','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poDeleg.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_Delegati Readwrite +Release poDeleg + +Select cNom_Delegati +Scatter Name poDelegat +Use In cNom_Delegati +***--------------------------------------- +Private poSect +Store '' To poSect + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_sectii where 1=2'] +lcOrder1 = [sectie] +If !Empty(pnId_ctr) And !Isnull(poContract.id_sectie) + lcFiltru1 = [id_sectie =] + Alltrim(Str(poContract.id_sectie)) +Else + lcFiltru1 = [1=2] +Endif +llAfiseaza = .F. +gencursor('poSect','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poSect.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_Sectii Readwrite +Release poSect + +Select cNom_Sectii +Scatter Name poSectie +Use In cNom_Sectii +***--------------------------------------- +Private poVenChe +Store '' To poVenChe + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_venchel where 1=2'] +lcOrder1 = [explicatie] +If !Empty(pnId_ctr) And !Isnull(poContract.id_venchelt) + lcFiltru1 = [id_venchelt =] + Alltrim(Str(poContract.id_venchelt)) +Else + lcFiltru1 = [1=2] +Endif +llAfiseaza = .F. +gencursor('poVenChe','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poVenChe.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_VenChel Readwrite +Release poVenChe + +Select cNom_VenChel +Scatter Name poVenChel +Use In cNom_VenChel +***--------------------------------------- +Private poLucr +Store '' To poLucr + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_lucrari where 1=2'] +lcOrder1 = [nrord] +If !Empty(pnId_ctr) + lcFiltru1 = [ nrord = '] + Alltrim(poContract.nr_ctr)+"/"+Alltrim(Dtoc(poContract.data_ctr)) + ['] +Else + lcFiltru1 = [1=2] +Endif +llAfiseaza = .F. +gencursor('poLucr','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poLucr.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_Lucrari Readwrite +Release poLucr + +Select cNom_Lucrari +Scatter Name poLucrare +Use In cNom_Lucrari +***--------------------------------------- +Private poFDocument +Store '' To poFDocument + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_fdoc where 1=2'] +lcOrder1 = [fel_document] +lcFiltru1 = [ UPPER(fel_document) = 'FACTURA'] +llAfiseaza = .F. +gencursor('poFDocument','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poFDocument.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_FDoc Readwrite +Release poFDocument + +Select cNom_FDoc +Scatter Name poFDoc +Use In cNom_FDoc +***--------------------------------------- +If !Empty(pnId_ctr) + lcSql = [begin pack_crm.calculeaza_val_next_factura(?gcS, ?pocontract.id_ctr, ?@pnpretuval); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.calculeaza_val_next_factura'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +Endif +***--------------------------------------- +Private poFact_elem +Store '' To poFact_elem + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = [select fe.*, 000 as nrcrt,'Denumire articol' as den_articol, ' ' as scd, ' ' as scc, ' ' as ascd, ' ' as ascc from ] + gcS + [.fact_elem fe where 1=2] +* [ left join vnom_articole_crm a on a.id_articol = fe.id_articol where 1=2'] +lcOrder1 = [] +lcFiltru1 = [1=2] +llAfiseaza = .F. +gencursor('poFact_elem','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poFact_elem.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor tFactura Readwrite +Release poFact_elem + +If !Empty(pnId_ctr) + If !Empty(poContract.id_art_fact) And !Isnull(poContract.id_art_fact) + Private poArt_Fact + Store '' To poArt_Fact + + Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza + lcSchema1 = [''] + lcSelect1 = [select id_articol, denumire, scd, scc, ascd, ascc from ] + gcS + [.vcrm_articole_note where 1=2] + lcOrder1 = [] + lcFiltru1 = [id_articol=]+Alltrim(Str(poContract.id_art_fact)) + llAfiseaza = .F. + gencursor('poArt_Fact','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) + poArt_Fact.ca_baza1.afisare() + + Select * From cIntermediar Into Cursor tArt_fact Readwrite + Release poArt_Fact + Else && toate articolele contractate + Private poArt_Fact + Store '' To poArt_Fact + + Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza + lcSchema1 = [''] + lcSelect1 = [select id_art as id_articol, denumire, scd, scc, ascd, ascc from ] + gcS + [.vcrm_contracte_articole_note where 1=2] + lcOrder1 = [] + lcFiltru1 = [id_ctr=]+Alltrim(Str(poContract.id_ctr)) + llAfiseaza = .F. + gencursor('poArt_Fact','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) + poArt_Fact.ca_baza1.afisare() + + Select * From cIntermediar Into Cursor tArt_fact Readwrite + Release poArt_Fact + Endif + + Select tArt_fact + Scan + Select tFactura + Append Blank + Replace denumire With Alltrim(tArt_fact.denumire) + " CONFORM CONTRACTULUI", ; + den_articol With Alltrim(tArt_fact.denumire), ; + id_articol With tArt_fact.id_articol, ; + scd With tArt_fact.scd, ; + scc With tArt_fact.scc, ; + ascd With tArt_fact.ascd, ; + ascc With tArt_fact.ascc, ; + CANTITATE With 1, ; + um With "BUC", ; + nrcrt With 1, ; + pretuval With pnpretuval + + Select tArt_fact + Endscan +Endif + +Select tFactura +Go Top + +**--------------- +lovf = Createobject("frm_factura",llProforma) +lovf.Show(1) +**--------------------- +If buton = 2 + Use In tFactura + Return +Endif +**--------------------- +If llProforma + lcSql = [begin pack_crm.in_proforme(?gcS, ?gnLuna, ?gnAn, ?pofactura.id_proforma, ?pofactura.id_part,NULL,?pofactura.nr_fact, ]+; + [?pofactura.data_fact, ?pofactura.data_ireg, ?pofactura.data_scad, ?pofactura.valftva, ?pofactura.valtva, ?pofactura.valctva, ]+; + [?pofactura.valval, ?pofactura.tvaval, ?pofactura.totval, ?poFactura.id_valuta, ?pofactura.curs, ?pofactura.data_curs, ?pofactura.cod, ?pofactura.proc_tva, ]+; + [?pofactura.explcont, ?gnIdUtil); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.in_proforme'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +**--------------------- + Do in_proforme_elem In oproceduri_roaClienti.prg +**--------------------- +Else + pcTabel = "nrfact" + pcCamp = "nrfact" + lcSql = [begin pack_crm.write_nr(?gcS, ?pcTabel, ?pcCamp, ?pnNr_fact); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.write_nr'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +**--------------------- + Select tFactura + If !Empty(pnId_ctr) + Do make_actactan With poFactura, poClient, poResponsabil, poContract + Else + Do make_actactan With poFactura, poClient, poResponsabil + Endif + + Select actactan + Do Form verificare With .T. + + If buton=2 + Use In actactan + Return + Endif + + Select actactan + Do oscrie_in_fisiere + +**--------------------- + If !Empty(pnId_ctr) + lcSql = [begin pack_crm.in_facturi(?gcS, ?gnLuna, ?gnAn, ?pofactura.id_fact, ?pofactura.id_part, ?pocontract.id_ctr, ?pofactura.nr_fact, ]+; + [?pofactura.data_fact, ?pofactura.data_ireg, ?pofactura.data_scad, ?pofactura.valftva, ?pofactura.valtva, ?pofactura.valctva, ]+; + [?pofactura.valval, ?pofactura.tvaval, ?pofactura.totval, ?poFactura.id_valuta, ?pofactura.curs, ?pofactura.data_curs, ?pofactura.cod, ?pofactura.proc_tva, ]+; + [?pofactura.explcont, ?gnIdUtil); end;] + Else + lcSql = [begin pack_crm.in_facturi(?gcS, ?gnLuna, ?gnAn, ?pofactura.id_fact, ?pofactura.id_part,NULL,?pofactura.nr_fact, ]+; + [?pofactura.data_fact, ?pofactura.data_ireg, ?pofactura.data_scad, ?pofactura.valftva, ?pofactura.valtva, ?pofactura.valctva, ]+; + [?pofactura.valval, ?pofactura.tvaval, ?pofactura.totval, ?poFactura.id_valuta, ?pofactura.curs, ?pofactura.data_curs, ?pofactura.cod, ?pofactura.proc_tva, ]+; + [?pofactura.explcont, ?gnIdUtil); end;] + Endif + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.in_facturi'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif +**--------------------- + Do in_factelem In oproceduri_roaClienti.prg +**--------------------- + If !Empty(pnId_ctr) + lcSql = [begin pack_crm.in_rate(?gcS, ?pocontract.id_ctr, ?pofactura.id_fact, ?pofactura.valval); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.in_rate'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + Endif +**--------------------- +Endif + +Use In tFactura +**--------------------- + +Endproc && factura +***----------------------------------------------------------------------------------------------------------------------------- +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_actactan +Parameters tofactura, toclient, toresponsabil, toContract + +Local lcscd, lcscc, lcascd, lcascc, lcacronim +Store '' To lcscd, lcscc, lcascd, lcascc, lcacronim + +* actactan = gcTempPath + "actactan.dbf" +***----- +Private poAct +Store '' To poAct + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.act where 1=2'] +lcOrder1 = [] +lcFiltru1 = [1=2] +llAfiseaza = .F. +gencursor('poAct','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poAct.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor actactan Readwrite +Release poAct + +***----- +*!* Select act +*!* Copy To (actactan) With Cdx +*!* Sele 0 +*!* Use (actactan) Excl Alias actactan +*!* Sele actactan +*!* Zap + +Local lcid_set +lnid_set = 50000 + +*!* Select optiuni_program +*!* Locate For Upper(Alltrim(varname))="ID_SET" +*!* If Found() +*!* lnid_set=Eval(varvalue) +*!* Endif + +**** +If gnInreg_fact_linii = 1 && pun atatea linii cate prestatii am (eventual cu liniile de TVA corespunzatoare) + Select tFactura + Scan + Scatter Name loelem Memo + Select actactan + Scatter Name loact Blank + With loact + .COD = tofactura.COD + .dataireg = tofactura.data_ireg + .id_fdoc = poFDoc.id_fdoc + .dataact = tofactura.data_fact + .nract = tofactura.nr_fact + .id_partd = toclient.id_part + .explicatia = tofactura.explcont + .scd = loelem.scd && "411" + .scc = loelem.scc && "704" + .ascd = loelem.ascd && "" + .ascc = loelem.ascc && "" + .suma = Round(loelem.valftva, gnPC) +*!* If glfact_extern && facturile extern +*!* .suma_2 = Round(loelem.valval,pnvalvalfact_tot) +*!* .suma_3 = Round(tofactura.Curs, pncurs_zecimale) +*!* Endif + .datascad = tofactura.data_scad + .id_sectie = poSectie.id_sectie + .id_venchelt = poVenChel.id_venchelt + .id_lucrare = poLucrare.id_lucrare + .proc_tva = (100 + loelem.proc_tva)/100 +*CASE pnCalcTVA = 2 +*.proc_tva = (100 + tofactura.proc_tva)/100 +*ENDCASE + + .dataora = Datetime() + .id_fact = tofactura.id_fact + .id_responsabil = toresponsabil.id_responsabil + .id_set = lnid_set + + Select actactan + Append Blank + Gather Name loact + + If loelem.valtva <> 0 + .suma = Round(loelem.valtva, gnPC) + .scc="4427" + .ascc="" + Select actactan + Append Blank + Gather Name loact + Endif + + Endwith + Select tFactura + Endscan +Else && inregistrez o singura linie pt toata factura (grupuri de scd) + Select Distinct scd, ascd, scc, ascc, ; + ROUND(Sum(valftva), gnPC) As valftva, ; + proc_tva ; + FROM tFactura ; + GROUP By scd, ascd, scc, ascc, proc_tva ; + INTO Cursor tConturi + + Select tConturi + Scan + Select actactan + Scatter Name loact Blank + + With loact + .COD = tofactura.COD + .dataireg = tofactura.data_ireg + .id_fdoc = poFDoc.id_fdoc + .dataact = tofactura.data_fact + + .nract = tofactura.nr_fact + .id_partd = toclient.id_part + .explicatia = tofactura.explcont + + .scd = tConturi.scd + .scc= tConturi.scc + .ascd = tConturi.ascd + .ascc = tConturi.ascc + .suma = Round(tConturi.valftva,gnPC) + +*!* If glfact_extern && facturile extern +*!* .suma_2 = Round(tofactura.valval,pnvalvalfact_tot) +*!* .suma_3 = Round(tofactura.Curs,pncurs_zecimale) +*!* Endif + + .datascad = tofactura.data_scad + .id_sectie = poSectie.id_sectie + .id_venchelt = poVenChel.id_venchelt + .id_lucrare = poLucrare.id_lucrare + .proc_tva = (100 + tConturi.proc_tva) / 100 + .dataora = Datetime() + .id_fact = tofactura.id_fact + .id_responsabil = toresponsabil.id_responsabil + .id_set = lnid_set + + Select actactan + Append Blank + Gather Name loact + + Endwith + + Select tConturi + Endscan + + If Used("tConturi") + Use In tConturi + Endif + +&& scrie linia cu TVA + Select Distinct scd, ascd, proc_tva, ; + ROUND(Sum(valtva), gnPC) As valtva ; + FROM tFactura ; + GROUP By scd, ascd, proc_tva ; + INTO Cursor tCoteTva + + Select tCoteTva + Scan For valtva <> 0 + With loact + .suma = Round(tCoteTva.valtva, gnPC) + .proc_tva = (100 + tCoteTva.proc_tva) / 100 + .scc = "4427" + .ascc = "" + Endwith + + Select actactan + Append Blank + Gather Name loact + + Select tCoteTva + Endscan + + If Used("tCoteTva") + Use In tCoteTva + Endif +Endif + +Return .T. +Endproc && make_actactan +***-------------------------------------------------------------------------------------- +Procedure viz_facturi +Parameters tlProforme + +Local llProforme +llProforme = tlProforme + +Private poFacturi +Store '' To poFacturi + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza + +If llProforme + lcId_tip = [id_proforma N(20),] + lcId = [id_proforma, ] + lcView = [.vcrm_proforme] +Else + lcId_tip = [id_fact N(20),] + lcId = [id_fact, ] + lcView = [.vcrm_facturi] +Endif +lcSchemaComun = [id_ctr N(5), nr_fact N(10), data_fact D(8), data_ireg D(8), data_scad D(8), valftva N(20,4), valtva N(20,4), valctva N(20,4),]+; + [valval N(20,4), tvaval N(20,4), totval N(20,4), curs N(10,4), data_curs D(8), cod N(10), proc_tva N(2), explcont C(30),]+; + [sters N(1), id_util N(8), dataora T, id_part N(10), an N(4), luna N(2), id_valuta N(5),]+; + [nume C(70), nr_ctr C(20), nume_val C(20)] + +lcSchema1 = lcId_tip + lcSchemaComun +lcSelectComun = [id_ctr, nr_fact, data_fact, data_ireg, data_scad, valftva, valtva, valctva, ]+; + [valval, tvaval, totval, curs, data_curs, cod, proc_tva, explcont, ]+; + [sters, id_util, dataora, id_part, an, luna, id_valuta, ]+; + [nume, nr_ctr, nume_val]+; + [ from ] + gcS + +lcSelect1 = [select ] + lcId + lcSelectComun + lcView +lcOrder1 = [data_fact] +lcgroup = [] +lcFiltru1 = [1=2] +lcFiltruOriginal = [] +llModParam = .T. +llAfiseaza = .F. + +gencursor('poFacturi','tFacturi', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) +poFacturi.ca_baza1.afisare() + +Select tFacturi +loff = Createobject("frm_viz_facturi",llProforme) +loff.Show(1) + +Release poFacturi + +Endproc && viz_facturi +***-------------------------------------------------------------------------------------- +Procedure in_factelem + +Private pnId_fact, pnId_articol, pcDenumire, pcUM, pnCantitate, pnPretUnitar, pnvalftva, pnvaltva, pnvalctva, pnpretuval, pnvalval, pntvaval, pntotval, pnProc_tva +Store 0 To pnId_fact, pnId_articol, pnCantitate, pnPretUnitar, pnvalftva, pnvaltva, pnvalctva, pnpretuval, pnvalval, pntvaval, pntotval, pnProc_tva +Store "" To pcDenumire, pcUM + +Select tFactura +Scan + pnId_fact = poFactura.id_fact + pnId_articol = id_articol + pcDenumire = denumire + pcUM = um + pnCantitate = CANTITATE + pnPretUnitar = pretUnitar + pnvalftva = valftva + pnvaltva = valtva + pnvalctva = valctva + pnpretuval = pretuval + pnvalval = valval + pntotval = totval + pnProc_tva = proc_tva + + lcSql = [begin pack_crm.in_factelem(?gcS, ?gnLuna, ?gnAn, ?pnid_fact, ?pnId_articol, ?pcDenumire, ?pcUm, ?pnCantitate, ?pnPretUnitar, ]+; + [?pnvalftva, ?pnvaltva, ?pnvalctva, ?pnpretuval, ]+; + [?pnvalval, ?pntvaval, ?pntotval, ?pnproc_tva, ?gnIdUtil); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + Messagebox('pack_crm.in_factelem'+goExecutor.cEroare,0+16,"Eroare") + Return + Endif + + Select tFactura +Endscan + +Endproc && in_factelem +***-------------------------------------------------------------------------------------- +Procedure listfactura +Parameters tnId_fact, tlProforma + +Local llProforma +llProforma = tlProforma + +Private pnId_fact +pnId_fact = tnId_fact && id_fact / id_proforma +**--------------- +Private poFact +Store '' To poFact + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +If llProforma + lcSelect1 = ['select * from ] + gcS + [.proforme where 1=2'] + lcFiltru1 = [id_proforma=]+Alltrim(Str(pnId_fact)) +Else + lcSelect1 = ['select * from ] + gcS + [.facturi where 1=2'] + lcFiltru1 = [id_fact=]+Alltrim(Str(pnId_fact)) +Endif +lcOrder1 = [] +llAfiseaza = .F. +gencursor('poFact','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poFact.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cFact Readwrite +Release poFact + +Select cFact +Scatter Name poFactura +**--------------- +**--------------- +Private poClie +Store '' To poClie + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_parteneri where 1=2'] +lcOrder1 = [] +lcFiltru1 = [id_part=]+Alltrim(Str(poFactura.id_part)) +llAfiseaza = .F. +gencursor('poClie','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poClie.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cClienti Readwrite +Release poClie + +Select cClienti +Scatter Name poClient +**--------------- +**--------------- +Private poVal +Store '' To poVal + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.nom_valute where 1=2'] +lcOrder1 = [] +If !Empty(poFactura.id_valuta) And !Isnull(poFactura.id_valuta) + lcFiltru1 = [id_valuta=]+Alltrim(Str(poFactura.id_valuta)) +Else + lcFiltru1 = [] +Endif +llAfiseaza = .F. +gencursor('poVal','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poVal.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cValute Readwrite +Release poVal + +Select cValute +Scatter Name poValuta +**--------------- +**--------------------- +Private poRespons +Store '' To poRespons + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_responsabili where 1=2'] +lcOrder1 = [nume] +lcFiltru1 = [ales=1] +llAfiseaza = .F. +gencursor('poRespons','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poRespons.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_Responsabili Readwrite +If Used("cIntermediar") + Use In cIntermediar +Endif + +Select cNom_Responsabili +Scatter Name poResponsabil + +Release poRespons +**--------------------- +Private poDeleg +Store '' To poDeleg + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +lcSelect1 = ['select * from ] + gcS + [.vnom_responsabili where 1=2'] +lcOrder1 = [nume] +* lcFiltru1 = [id_partener =] + Alltrim(Str(poFactura.id_part)) +lcFiltru1 = [] +llAfiseaza = .F. +gencursor('poDeleg','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poDeleg.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor cNom_Delegati Readwrite +Select cNom_Delegati +Scatter Name poDelegat + +Release poDeleg +***--------------------------------------- +***--------------------------------------- +Private poFact_elem +Store '' To poFact_elem + +Private pcMasina +Store "" To pcMasina + +Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza +lcSchema1 = [''] +If llProforma + lcSelect1 = ['select pe.*, 000 as nrcrt from ] + gcS + [.proforme_elem pe where 1=2'] + lcFiltru1 = [id_proforma=]+Alltrim(Str(poFactura.id_proforma)) +Else + lcSelect1 = ['select fe.*, 000 as nrcrt from ] + gcS + [.fact_elem fe where 1=2'] + lcFiltru1 = [id_fact=]+Alltrim(Str(poFactura.id_fact)) +Endif +lcOrder1 = [] +llAfiseaza = .F. +gencursor('poFact_elem','cIntermediar', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza) +poFact_elem.ca_baza1.afisare() + +Select * From cIntermediar Into Cursor tFactura Readwrite +Release poFact_elem +***--------------------------------------- +Select tFactura +Replace All nrcrt With Recno() + +If llProforma + Report Form proforma_a4 To Printer Prompt Preview +Else + lcmenu="\Factura A4;\Factura Fanfold - Tractor;\Factura A4 - RMS - lei;\Factura A4 - RMS - valuta fara TVA;\-;\ 0 then ]+; + [ to_char(Add_months(b.grnt_pv_data, b.grnt_perioada)) || ]+; + [ ' restituire ' || round(a.sumadeplata,2)|| ' lei' end) ]+; + [ when 4 then to_char(a.data_referinta_alerta) || ' ultima rata definita ' end) as descriere, ]+; + [ a.nr_alerta, ]+; + [ a.validat, ]+; + [ a.instiintat, ]+; + [ a.id_ctr, ]+; + [ a.id_fact, ]+; + [ a.id ]+; + [ from vcontracte b ]+; + [ join ctr_log_alerte a on a.id_ctr = b.ID_CTR ]+; + [ left join (select id_fact, nract, dataact from ireg_parteneri ]+; + [ where (extract(year from dataireg) * 12 + extract(month from dataireg) = ]+; + [ an * 12 + luna)) c on c.id_fact = a.id_fact ] + + lcFiltru = [((((a.nr_alerta in (2, 3)) and ]+; + [ (a.sumadeplata is not null and a.sumadeplata <> 0))) or ]+; + [ (a.nr_alerta in (1, 4))) and ]+ lcCondTata + + lcFiltruOriginal = [] + llModParam = .T. + llAfiseaza = .F. + + gencursor('poAlerte','cAlerte', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poAlerte.ca_baza1.afisare() + ***------------- + + Select cAlerte + Set Filter To Validat = 0 + Select Count(*) As nr_alerte From cAlerte Where Validat = 0 Into Cursor cNrAlerte + Select cNrAlerte + lnNr_alerte = nr_alerte + + If Used('cNrAlerte') + Use In cNrAlerte + Endif + + If lnPornire <> 0 + If lnNr_alerte > 0 + Select cAlerte + loa = Createobject('frm_alerte') + loa.Show(1) + Endif + Else + Select cAlerte + loa = Createobject('frm_alerte') + loa.Show(1) + Endif + + If Used('cAlerte') + Use In cAlerte + Endif + +Endproc && viz_alerte_garantii +***--------------------------------------------------------------------------------------------------------------------------- +Procedure make_cCtrFactGarant + Parameters tlToate + + Local lcSchema, lcSelect, lcOrder, lcFiltru, llAfiseaza, llToate + llToate = tlToate + lcSchema = [id_ctr N(8), id_fact n(20), id_ctr_fact_garan N(10), nract N(14), dataact D, valftva n(20,2), garantie n(14,2) ] + + lcSelect = [select fg.id_ctr, fg.id_fact, fg.id_ctr_fact_garan, ip.nract, ip.dataact, fg.valftva, fg.garantie ]+; + [ from ctr_facturi_garantii fg left join ireg_parteneri ip on fg.id_fact = ip.id_fact ] + + lcOrder = [ip.dataact] + lcgroup = [] + If llToate + lcFiltru = [extract(year from ip.dataireg) * 12 + extract(month from ip.dataireg) = an * 12 + luna] + Else + lcFiltru = [fg.id_ctr = ]+Alltrim(Str(goContract.id_ctr))+ [ and extract(year from ip.dataireg) * 12 + extract(month from ip.dataireg) = an * 12 + luna] + Endif + + Do Case + Case gnParametru_prog=1 + lcFiltru = lcFiltru + [ and ip.cont = '4111' ] + Case gnParametru_prog=2 + lcFiltru = lcFiltru + [ and (ip.cont = '401' or ip.cont = '404') ] + Endcase + + lcFiltruOriginal = [] + llModParam = .T. + llAfiseaza = .F. + + gencursor('poCtrFactGarant','cCtrFactGarantI', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poCtrFactGarant.ca_baza1.afisare() + + Select * From cCtrFactGarantI ; + WITH (Buffering = .T.) ; + INTO Cursor cCtrFactGarant Readwrite + + If Used('cCtrFactGarantI') + Use In cCtrFactGarantI + Endif + +Endproc && make_cCtrFactGarant +***--------------------------------------------------------------------------------------------------------------------------- +Procedure inchide_cCtrFactGarant + + If Used('cCtrFactGarant') + Use In cCtrFactGarant + Endif + +Endproc && inchide_cCtrFactGarant +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_cCtrActeAditionale + Parameters tlToate + + Private poCtrActeAditionale + Store '' To poCtrActeAditionale + + Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza, llToate + llToate = tlToate + lcSchema1 = [numar c(20), data D, descriere c(100), id_tata N(8)] + lcSelect1 = [select numar, data, descriere, id_tata ]+; + [ from vcontracte_toate] + + lcOrder1 = [data desc] + lcgroup = [] + lcFiltru1 = [2=2] + + If llToate + lcFiltruOriginal = [tip_istoric = 'A'] + Else + lcFiltruOriginal = [tip_istoric = 'A' and id_tata = ]+Alltrim(Str(goContract.id_ctr)) + Endif + llModParam = .T. + llAfiseaza = .F. + + gencursor('poCtrActeAditionale','cCtrActeAditionale', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poCtrActeAditionale.ca_baza1.afisare() + + +Endproc && make_cCtrActeAditionale +***----------------------------------------------------------------------------------------------------------------------------- +Procedure declarare_generator_numere + + If Type('poGeneratorNumere') = 'U' + Public poGeneratorNumere + poGeneratorNumere = Createobject('oGeneratorNumere') + Endif + +Endproc && declarare_generator_numere +***----------------------------------------------------------------------------------------------------------------------------- +Procedure restdefacturat + + Private pcfiltru + Store "1=1" To pcfiltru + + lorf = Createobject('frm_restdefacturat') + lorf.Show(1) + +Endproc && restdefacturat +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_crsNote + + Private poNote + Store '' To poNote + + Local lcSchema1, lcSelect1, lcOrder1, lcFiltru1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal + lcSchema1 = [] + lcSelect1 = [select denumire, id_nota from vcrm_note_vanzari nv] + lcOrder1 = [denumire] + lcgroup = [] + lcFiltru1 = [] + lcFiltruOriginal = [] + llModParam = .T. + llAfiseaza = .F. + + gencursor('poNote','crsNote', lcSelect1, lcFiltru1, lcSchema1, lcOrder1, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poNote.ca_baza1.afisare() + Select crsNote + +Endproc && make_crsNote +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_crsValute + + lcSql = [select id_valuta, nume_val, moneda_nationala FROM vnom_valute where inactiv = 0 order by nume_val] + lnSucces=goExecutor.oExecute(lcSql,'crsValute') + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + Endif + Select crsValute + +Endproc && make_crsValute +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_crsSectii + + Create Cursor crsSectii(id_sectie N(5), sectie c(50)) + Insert Into crsSectii (id_sectie, sectie) Values (0, '') + lcSql = [select id_sectie, sectie FROM vnom_sectii where inactiv = 0] + gcCondSucursala + [ order by sectie] + lnSucces=goExecutor.oExecute(lcSql,'crsSectiiI') + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + Endif + Select crsSectii + Append From Dbf('crsSectiiI') + + If Used('crsSectiiI') + Use In crsSectiiI + Endif + +Endproc && make_crsSectii +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_crsTip_ctr + + Do Case + Case gnParametru_prog=1 + lcWhere = [ where substr(tata,2,6)='CLIENT'] + Case gnParametru_prog=2 + lcWhere = [ where substr(tata,2,6)='FURNIZ'] + Otherwise + lcWhere = [] + Endcase + + lcSql = [select id_tip_ctr, denumire_tip FROM vtipuri_contracte]+lcWhere + [ order by denumire_tip] + lnSucces=goExecutor.oExecute(lcSql,'crsTip_ctr') + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + Endif + Select crsTip_ctr + +Endproc && make_crsTip_ctr +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_crsSelectii + + Create Cursor crsSelectii(id_selectie N(4), selectie c(100)) + Insert Into crsSelectii(id_selectie , selectie ) Values (0, '') + lcSql = [select id_selectie, selectie FROM vctr_selectii] + lnSucces=goExecutor.oExecute(lcSql,'crsSelectiiI') + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + Endif + Select crsSelectii + Append From Dbf('crsSelectiiI') + + If Used('crsSelectiiI') + Use In crsSelectiiI + Endif + +Endproc && make_crsSelectii +***----------------------------------------------------------------------------------------------------------------------------- +Procedure inchide_crsNote + + If Used('crsNote') + Use In crsNote + Endif + +Endproc && inchide_crsNote +***----------------------------------------------------------------------------------------------------------------------------- +Procedure inchide_crsValute + + If Used('crsValute') + Use In crsValute + Endif + +Endproc && inchide_crsValute +***----------------------------------------------------------------------------------------------------------------------------- +Procedure inchide_crsSectii + + If Used('crsSectii') + Use In crsSectii + Endif + +Endproc && inchide_crsSectii +***----------------------------------------------------------------------------------------------------------------------------- +Procedure inchide_crsTip_ctr + + If Used('crsTip_ctr') + Use In crsTip_ctr + Endif + +Endproc && inchide_crsTip_ctr +***----------------------------------------------------------------------------------------------------------------------------- +Procedure inchide_crsSelectii + + If Used('crsSelectii') + Use In crsSelectii + Endif + +Endproc && inchide_crsSelectii +***----------------------------------------------------------------------------------------------------------------------------- +Procedure salveaza_obiectul + Parameters tcTabel + + Local lcTabel + lcTabel = tcTabel + + lcSel = 'select * from vctr_articole where id_ctr = '+ Alltrim(Str(goContract.id_ctr)) + ' order by nume_articol' + lcCursor = 'cCtrArt_server' + lnSucces = goExecutor.oExecute(lcSel, lcCursor) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + * daca exista id_pol_art pe server, care nu mai sunt pe local, sterg + Select * From cCtrArt_server ; + Where id_ctr_art Not In (Select id_ctr_art From (lcTabel)) ; + INTO Cursor cArt_sters + + Select cArt_sters + Scan + pcId_pol_art = Nvl(Alltrim(Str(id_pol_art)),'NULL') + pcId_articol = Nvl(Alltrim(Str(id_articol)),'NULL') + lcSql = [begin pack_crm.sterge_ctr_art(] + Alltrim(Str(gnParametru_prog)) + [,] + pcId_ctr + [,] + Iif(gnParametru_prog=1,pcId_pol_art,pcId_articol) + [); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + Select cArt_sters + Endscan + + If Used('cArt_sters') + Use In cArt_sters + Endif + + * daca exista id_ctr_art in plus in cursorul de pe local, adaug pe server + + + Select * From (lcTabel) Where Empty(id_ctr_art) ; + INTO Cursor cArt_nou + + Select cArt_nou + Scan + pcId_pol_art = Iif(Empty(id_pol_art) Or Isnull(id_pol_art),'NULL',Alltrim(Str(id_pol_art))) + pcId_articol = Nvl(Alltrim(Str(id_articol)),'NULL') + pcPret_cu_tva = Alltrim(Str(pret_cu_tva)) + pcPret_unitar = Nvl(Alltrim(Str(pret_unitar,20,gnPC)),"0") + pcCant = Alltrim(Str(cant,10,gnPCant)) + pcCoef_discount = Nvl(Alltrim(Str(coef_discount,10,gnPC)),"0") + pcVal_discount = Nvl(Alltrim(Str(val_discount,20,gnPC)),"0") + pcId_valuta = Alltrim(Str(id_valuta)) + pcUM = Nvl(Alltrim(um),'') + pcExplicatie = "" && ALLTRIM(explicatie) + + lcSql = [begin pack_crm.adauga_ctr_art(] + pcId_ctr + [,] + pcId_pol_art + [,] + pcId_articol + [,] + pcPret_cu_tva + [,] + pcPret_unitar + [,] + ; + pcCant + [,] + pcCoef_discount + [,] + ; + pcVal_discount + [,] + pcId_valuta + [,'] + pcUM + [','] + pcExplicatie +['); end;] + + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + Select cArt_nou + Endscan + + If Used('cArt_nou') + Use In cArt_nou + Endif + + + * pentru articolele care au deja id_ctr_art, fac update pe server + Select * From (lcTabel) Where !Empty(id_ctr_art) ; + INTO Cursor cArt_modi + + Select cArt_modi + Scan + pcId_pol_art = Nvl(Alltrim(Str(id_pol_art)),'NULL') + pcId_articol = Nvl(Alltrim(Str(id_articol)),'NULL') + pcCant = Nvl(Alltrim(Str(cant,10,gnPCant)),"") + pcPret_cu_tva = Alltrim(Str(pret_cu_tva)) + pcPret_unitar = Alltrim(Str(pret_unitar,20,gnPC)) + pcCoef_discount = Alltrim(Str(coef_discount,10,gnPC)) + pcVal_discount = Alltrim(Str(val_discount,20,gnPC)) + pcId_valuta = Alltrim(Str(id_valuta)) + + lcSql = [begin pack_crm.modifica_ctr_art(] + pcParametru_prog + [,] + pcId_ctr + [,] + pcId_pol_art + [,] + pcId_articol + [,] + pcCant + [,] + ; + pcPret_cu_tva + [,] + pcPret_unitar + [,] + pcCoef_discount + [,] + pcVal_discount + [,] + pcId_valuta + [); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + Select cArt_modi + Endscan + + If Used('cArt_modi') + Use In cArt_modi + Endif + + If Used('cCtrArt_server') + Use In cCtrArt_server + Endif + + Return lnSucces + +Endproc && salveaza_obiectul +***----------------------------------------------------------------------------------------------------------------------------- +Procedure salveaza_rate + Parameters tcTabel + + Local lcTabel, lcId_scadentar, lcNr_rata, lcData_rata, lcData_scadenta, lcPret_cu_tva, lcProc_tva, lcValrata, lcId_valuta, lcDen_rata, lcProcent + lcTabel = tcTabel + + lcSel = 'select id_rata from vctr_scadentar where id_ctr = '+ Alltrim(Str(goContract.id_ctr)) + ' order by nr_rata, data_rata' + lcCursor = 'cCtrScadentar_server' + lnSucces = goExecutor.oExecute(lcSel, lcCursor) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + + * daca exista id_rata in plus in cursorul de pe local, adaug pe server + Select * From (lcTabel) Where (Empty(id_rata) Or Isnull(id_rata)) ; + INTO Cursor cRate_nou + Select cRate_nou + Scan + lcId_scadentar = Alltrim(Str(id_rata)) + lcNr_rata = Nvl(Alltrim(Str(nr_rata)),'0') + lcData_rata = Alltrim(Dtos(data_rata)) + lcData_scadenta = Alltrim(Dtos(data_scadenta)) + lcPret_cu_tva = Nvl(Alltrim(Str(pret_cu_tva,20,gnPC)),'0') + lcProc_tva = Nvl(Alltrim(Str(proc_tva,20,gnPC)),'0') + lcValrata = Nvl(Alltrim(Str(valrata,20,gnPC)),'0') + lcId_valuta = Nvl(Alltrim(Str(id_valuta)),'0') + lcDen_rata = Nvl(Alltrim(den_rata),'') + lcProcent = Nvl(Alltrim(Str(procent,5,gnPC)),'0') + + lcSql = [begin pack_crm.adauga_scadentar(] + pcId_ctr + [,] + lcNr_rata + ; + [,'] + lcDen_rata + [']+; + [,to_date(]+Iif(!Empty(lcData_rata) And !Isnull(lcData_rata),[']+lcData_rata+['],[NULL])+[,'YYYYMMDD')] + ; + [,to_date(]+Iif(!Empty(lcData_scadenta) And !Isnull(lcData_scadenta),[']+lcData_scadenta+['],[NULL])+[,'YYYYMMDD'),] + ; + lcPret_cu_tva + [,] + lcProc_tva + [,] + lcValrata + [,] + lcProcent + [,] + lcId_valuta + [,] + Alltrim(Str(gnIdUtil)) +[); end;] + + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + Select cRate_nou + Endscan + + If Used('cRate_nou') + Use In cRate_nou + Endif + + * daca exista id_rata pe server, care nu mai sunt pe local, sterg + Select * From cCtrScadentar_server ; + Where id_rata Not In (Select id_rata From &lcTabel) ; + INTO Cursor cRate_sters + + Select cRate_sters + Scan + pcId_rata = Alltrim(Str(id_rata)) + lcSql = [begin pack_crm.sterge_scadentar(] + pcId_rata + [,] + Alltrim(Str(gnIdUtil)) + [); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + Select cRate_sters + Endscan + + If Used('cRate_sters') + Use In cRate_sters + Endif + + * pentru ratele care au deja id_rata, fac update pe server + Select * From (lcTabel) Where !Empty(id_rata) ; + INTO Cursor cRate_modi + + Select cRate_modi + Scan + + lcId_scadentar = Alltrim(Str(id_rata)) + lcNr_rata = Nvl(Alltrim(Str(nr_rata)),'0') + lcData_rata = Alltrim(Dtos(data_rata)) + lcData_scadenta = Alltrim(Dtos(data_scadenta)) + lcPret_cu_tva = Nvl(Alltrim(Str(pret_cu_tva,20,gnPC)),'0') + lcProc_tva = Nvl(Alltrim(Str(proc_tva,20,gnPC)),'0') + lcValrata = Nvl(Alltrim(Str(valrata,20,gnPC)),'0') + lcId_valuta = Nvl(Alltrim(Str(id_valuta)),'0') + lcDen_rata = Nvl(Alltrim(den_rata),'') + lcProcent = Nvl(Alltrim(Str(procent,5,gnPC)),'0') + + lcSql = [begin pack_crm.modifica_scadentar(] + lcId_scadentar + [,] + lcNr_rata + ; + [,to_date(]+Iif(!Empty(lcData_rata) And !Isnull(lcData_rata),[']+lcData_rata+['],[NULL])+[,'YYYYMMDD')] + ; + [,to_date(]+Iif(!Empty(lcData_scadenta) And !Isnull(lcData_scadenta),[']+lcData_scadenta+['],[NULL])+[,'YYYYMMDD'),] + ; + lcPret_cu_tva + [,] + lcProc_tva + [,] + lcValrata + [,] + lcId_valuta + [,'] + lcDen_rata + [',] + lcProcent + [); end;] + + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + Select cRate_modi + Endscan + + If Used('cRate_modi') + Use In cRate_modi + Endif + + If Used('cCtrScadentar_server') + Use In cCtrScadentar_server + Endif + + Return lnSucces +Endproc && salveaza_rate +***----------------------------------------------------------------------------------------------------------------------------- +*!* modificare v 2.0.41 : am mutat-o in oproceduri_atasamente.prg +*!* Procedure salveaza_atasamente +*!* Parameters tcTabel +*!* Local lcTabel +*!* lcTabel = tcTabel +*!* lcSql = [select ar.id_referinta ]+; +*!* [ from VATAS_REFERINTE ar ]+; +*!* [ where ar.nume_fisier is not null and ar.id_tip_entitate = 2 and ar.id_entitate=]+Alltrim(Str(goContract.id_ctr)) +*!* lcCursor = 'crsAtasamente_server' +*!* lnSucces = goExecutor.oExecute(lcSql, lcCursor) +*!* If lnSucces < 0 +*!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") +*!* Return lnSucces +*!* Endif +*!* * daca exista id_referinta in plus in cursorul de pe local, adaug pe server +*!* Private pnId_entitate, pnTip_entitate, pcLink, pcDescriere, pcFis_name, pcFisier, pnId_atas +*!* Store 0 To pnId_entitate, pnTip_entitate, pnId_atas +*!* Store "" To pcDescriere, pcFis_name, pcFisier, pcLink +*!* pnId_entitate = goContract.id_ctr +*!* pnTip_entitate = 2 +*!* Select * From (lcTabel) ; +*!* Where (Empty(id_referinta) Or Isnull(id_referinta)) ; +*!* INTO Cursor cAtasamente_nou +*!* Select cAtasamente_nou +*!* Scan +*!* pcDescriere = Upper(Alltrim(descriere)) +*!* pcFis_name = Upper(Alltrim(nume_fisier)) +*!* *!* If Empty(pcLink) +*!* *!* Return +*!* *!* Endif +*!* * pcFisier = Filetostr(pcLink) +*!* pcFisier = fisier +*!* lcSql = [insert into atas_atasamente(fisier, nume_fisier, descriere, id_util) ]+; +*!* [values (?pcFisier, ?pcFis_name, ?pcDescriere, ?gnIdUtil) ] + ; +*!* [ returning id_atas into ?@pnId_atas] +*!* lnSucces = goExecutor.oExecute(lcSql) +*!* If lnSucces < 0 +*!* aMessagebox(goExecutor.cEroare,0+16,'Eroare') +*!* Endif +*!* lcSql = [insert into atas_referinte(id_atas, id_tip_entitate, id_entitate, id_util) ]+; +*!* [values (?pnId_atas, ?pnTip_entitate, ?pnId_entitate, ?gnIdUtil) ] +*!* lnSucces = goExecutor.oExecute(lcSql) +*!* If lnSucces < 0 +*!* aMessagebox(goExecutor.cEroare,0+16,'Eroare') +*!* Return lnSucces +*!* Endif +*!* Select cAtasamente_nou +*!* Endscan +*!* If Used('cAtasamente_nou') +*!* Use In cAtasamente_nou +*!* Endif +*!* * daca exista id_referinta pe server, care nu mai sunt pe local, sterg +*!* *!* Select id_referinta From crsAtasamente_server ; +*!* *!* Where id_referinta Not In (Select id_referinta From cId_ref) ; +*!* *!* INTO Cursor cAtasamente_sters +*!* lcDeleted = Set("Deleted") +*!* Set Deleted Off +*!* Select * From (lcTabel) Where Deleted() And !Empty(id_referinta); +*!* INTO Cursor cAtasamente_sters +*!* Select cAtasamente_sters +*!* Scan +*!* *pcId_atas = Alltrim(Str(id_atas)) +*!* lcId_referinta = Alltrim(Str(id_referinta)) +*!* lcSql = [update atas_referinte set sters = 1, dataoras = SYSDATE, id_utils = ] + Alltrim(Str(gnIdUtil)) + ; +*!* [ WHERE id_referinta = ] + lcId_referinta +*!* *[ WHERE id_atas = ] + pcId_atas +*!* *lcSql = lcSql + [ and id_tip_entitate=2 and id_entitate=]+Alltrim(Str(goContract.id_ctr)) +*!* lnSucces = goExecutor.oExecute(lcSql) +*!* If lnSucces < 0 +*!* AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") +*!* Return lnSucces +*!* Endif +*!* Select cAtasamente_sters +*!* Endscan +*!* If Used('cAtasamente_sters') +*!* Use In cAtasamente_sters +*!* Endif +*!* Set Deleted &lcDeleted +*!* If Used('cAtasamente_sters') +*!* Use In cAtasamente_sters +*!* Endif +*!* If Used('crsAtasamente_server') +*!* Use In crsAtasamente_server +*!* Endif +*!* Return lnSucces +*!* Endproc && salveaza_atasamente +*!* modificare v 2.0.41 ^ +***----------------------------------------------------------------------------------------------------------------------------- +Procedure salveaza_garantii + Parameters tcTabel + + Local lcTabel + lcTabel = tcTabel + + lcSql = [select fg.id_ctr, fg.id_ctr_fact_garan, ip.nract, ip.dataact, fg.valftva, fg.garantie ]+; + [ from ctr_facturi_garantii fg ]+; + [ left join ireg_parteneri ip ]+; + [ on fg.id_fact = ip.id_fact ]+; + [ where fg.id_ctr = ]+Alltrim(Str(goContract.id_ctr))+ [ and extract(year from ip.dataireg) * 12 + extract(month from ip.dataireg) = an * 12 + luna] + + Do Case + Case gnParametru_prog=1 + lcSql = lcSql+ [ and ip.cont = '4111' ] + Case gnParametru_prog=2 + lcSql = lcSql+ [ and (ip.cont = '401' or ip.cont = '404') ] + Endcase + + lcCursor = 'crsFactGarant_server' + lnSucces = goExecutor.oExecute(lcSql, lcCursor) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + * daca exista id_ctr_fact_garan in plus in cursorul de pe local, adaug pe server + Select * From (lcTabel) ; + Where Empty(Nvl(id_ctr_fact_garan,0)) ; + INTO Cursor crsFactGarant_nou + + Select crsFactGarant_nou + Scan + lnId_fact = id_fact + lnFactValftva = valftva + lnGarantieRetinuta = garantie + + lcSql = [begin pack_crm.adauga_factura_garantie(]+Alltrim(Str(goContract.id_ctr))+[,] + Alltrim(Str(lnId_fact))+[,]+; + ALLTRIM(Str(lnFactValftva,20,gnPA))+[,]+Alltrim(Str(lnGarantieRetinuta,20,gnPA))+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + Select crsFactGarant_nou + Endscan + + If Used('crsFactGarant_nou') + Use In crsFactGarant_nou + Endif + + + * daca exista id_ctr_fact_garan pe server, care nu mai sunt pe local, sterg + + Select id_ctr_fact_garan From crsFactGarant_server; + Where id_ctr_fact_garan Not In (Select id_ctr_fact_garan From (lcTabel)) ; + INTO Cursor crsFactGarant_sters + + + *!* lcDeleted = Set("Deleted") + + *!* Set Deleted Off + *!* Select * From (lcTabel) Where Deleted() And !Empty(id_referinta); + *!* INTO Cursor cAtasamente_sters + + Select crsFactGarant_sters + Scan + lnId_ctr_fact_garan = id_ctr_fact_garan + lcSql = [begin pack_crm.sterge_factura_garantie(]+Alltrim(Str(lnId_ctr_fact_garan))+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + Select crsFactGarant_sters + Endscan + + If Used('crsFactGarant_sters') + Use In crsFactGarant_sters + Endif + + *Set Deleted &lcDeleted + + * pentru garantiile care au deja id_ctr_fact_garan, fac update pe server + Select * From (lcTabel) Where !Empty(Nvl(id_ctr_fact_garan,0)) ; + INTO Cursor crsFactGarant_modi + + Select crsFactGarant_modi + Scan + + lnId_ctr_fact_garan = id_ctr_fact_garan + lnFactValftva = valftva + lnGarantieRetinuta = garantie + + lcSql = [begin pack_crm.modifica_factura_garantie(]+Alltrim(Str(lnId_ctr_fact_garan))+[,]+; + ALLTRIM(Str(lnFactValftva,20,gnPA))+[,]+Alltrim(Str(lnGarantieRetinuta,20,gnPA))+[); end;] + lnSucces = goExecutor.oExecute(lcSql) + + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare") + Return lnSucces + Endif + + Select crsFactGarant_modi + Endscan + + If Used('crsFactGarant_modi') + Use In crsFactGarant_modi + Endif + + If Used('crsFactGarant_server') + Use In crsFactGarant_server + Endif + + Return lnSucces +Endproc && salveaza_garantii +***----------------------------------------------------------------------------------------------------------------------------- +Procedure make_cCtrFacturatIncasat + Parameters tlToate, tcFiltruCtr + Local llToate + llToate = tlToate + + If llToate + lcSelect = [select i.dataact, i.datascad, i.nract, i.nume, i.id_part, i.id_ctr, i.contract,c.numar,c.data,i.id_responsabil,i.nresp,c.nume_val,c.valftva, SUM(] + Iif(gnParametru_prog = 1,[debit],[credit]) + [) as tot_fact, ] +; + [ SUM(] + Iif(gnParametru_prog = 1,[credit],[debit]) + [) as tot_achit, ] +; + [ 00000000000000.0000 as sold_contract, 00000000000000.0000 as sold_part ] +; + [ from vireg_parteneri i join vcontracte_toate c on i.id_ctr=c.id_ctr] + ; + IIF(!Empty(tcFiltruCtr),[ where ]+ tcFiltruCtr,[]) +; + [ group by i.dataact, i.datascad, i.nract, i.nume, i.id_part, i.id_ctr, i.contract,c.numar,c.data,i.id_responsabil,i.nresp,c.nume_val,c.valftva ] + ; + [ order by c.nume_val,c.data,c.numar] + Else + lcSelect = [select i.dataact, i.datascad, i.nract, i.nume, i.id_part, i.id_ctr, i.contract,c.numar,c.data,i.id_responsabil,i.nresp,c.nume_val,c.valftva, SUM(] + Iif(gnParametru_prog = 1,[debit],[credit]) + [) as tot_fact, ] +; + [ SUM(] + Iif(gnParametru_prog = 1,[credit],[debit]) + [) as tot_achit, ] +; + [ 00000000000000.0000 as sold_contract, 00000000000000.0000 as sold_part ] +; + [ from vireg_parteneri i join vcontracte_toate c on i.id_ctr=c.id_ctr] + ; + [ where i.id_ctr = ]+ Alltrim(Str(goContract.id_ctr)) +; + [ group by i.dataact, i.datascad, i.nract, i.nume, i.id_part, i.id_ctr, i.contract,c.numar,c.data,i.id_responsabil,i.nresp,c.nume_val,c.valftva ] + ; + [ order by c.nume_val,c.data,c.numar] + Endif + lcCursor = [cCtrFacturatIncasatI] + lnSucces = goExecutor.oExecute(lcSelect,lcCursor) + If lnSucces < 0 + AMESSAGEBOX(goExecutor.cEroare,0+16,'Eroare') + Return + Endif + Select * From cCtrFacturatIncasatI With (Buffering = .T.) Into Cursor cCtrFacturatIncasat Readwrite + + If Used('cCtrFacturatIncasatI') + Use In cCtrFacturatIncasatI + Endif + +Endproc + +Procedure inchide_cCtrFacturatIncasat + If Used('cCtrFacturatIncasat') + Use In cCtrFacturatIncasat + Endif +Endproc +**************************************************************************************** +Procedure actualizeaza_drepturi_roacontracte + If gnParametru_prog = 2 + With oprinc.pagefr1 + .page1.cw2.visible = .F. + .page1.cw6.visible = .F. + .page4.cw4.visible = .F. + .page4.cw5.visible = .F. + Endwith + Endif +Endproc +**************************************************************************************** \ No newline at end of file diff --git a/Programe/ovariabile_globale.prg b/Programe/ovariabile_globale.prg new file mode 100644 index 0000000..88b0b2a --- /dev/null +++ b/Programe/ovariabile_globale.prg @@ -0,0 +1,12 @@ +PUBLIC gcCondLuna +*!* gcCondLuna = [((((extract(month from datafact) =]+Alltrim(Str(gnLuna))+; +*!* [ and extract(year from datafact) =]+Alltrim(Str(gnAn))+[) or (datafact is null )); +*!* and ]+; +*!* [ (extract (month from datai)<=]+Alltrim(Str(gnLuna)) + [ and extract(year from datai)<= ]+Alltrim(Str(gnAn))+[))]+; +*!* [ or ((extract (month from dataoravalid)>= ]+Alltrim(Str(gnLuna))+[ and extract(year from dataoravalid)>=]+Alltrim(Str(gnAn)) +[)]+; +*!* [ and id_tip > 1)]+ [)] + +*!* lcDataFact= [ (a.facturat=1 and (extract(month from a.datafact) =]+Alltrim(Str(gnLuna))+[ and extract(year from a.datafact) =]+Alltrim(Str(gnAn))+[))] +*!* lcDataValid = [ (a.validat=1 and (extract (month from a.dataoravalid)>= ]+Alltrim(Str(gnLuna))+[ and extract(year from a.dataoravalid)>=]+Alltrim(Str(gnAn)) +[)) ] +*!* gcCondLuna = [ ((extract (month from a.datai)=]+Alltrim(Str(gnLuna)) + [ and extract(year from a.datai)= ]+Alltrim(Str(gnAn))+[) or ]+; +*!* [ (a.id_tip=1 and (a.facturat=0 or ] + lcDataFact + [) ) or (a.id_tip>1 and (a.validat=0 or ] + lcDataValid + [))) ] \ No newline at end of file diff --git a/Programe/pmenu.prg b/Programe/pmenu.prg new file mode 100644 index 0000000..dd829b6 --- /dev/null +++ b/Programe/pmenu.prg @@ -0,0 +1,4578 @@ +*-------------------------------------------- +Function deschide_menu +Parameters tabela, cc1,cc2,mnrtata,stinga,sus,ONT + +Public nt,no,m +nt=Alltrim(tabela)+'_'+Alltrim(Str(mnrtata)) + +If Upper(Left(tabela,6))='_MENU1' + no='o'+nt + zz='SELECT '+cc1+' AS C1, '+cc2+' AS C2,nrnod,PROCEDURA,TATAFIU,ID_SET,LISTA_NOTE FROM '+; + tabela+' WHERE NRTATA='+Alltrim(Str(mnrtata))+' INTO CURSOR '+nt +Else + no='o_'+nt + zz='SELECT '+cc1+' AS C1, '+cc2+' AS C2,nrnod,PROCEDURA,TATAFIU,ID_SET FROM '+; + tabela+' WHERE NRTATA='+Alltrim(Str(mnrtata))+' INTO CURSOR '+nt +Endif +&zz + + +m=0 + + + +Select &nt +Scan + mm=Len(Alltrim(c1)) + m=Iif(m>mm,m,mm) +Endscan + +ta=_Tally +If ta=0 + Return '0' +Endif + +If Type("&no")!='O' + Public &no + zz=no+'=crea("menuclasic")' + &zz + + With &no + wm=m*7 + .NUME=no + .ONUMETATA=ONT + .Left=stinga + .Top=sus + .tabela=tabela + .camp1=cc1 + .camp2=cc2 + .sursa=nt + .Width=wm+2*.margine + .NRFII=ta + .rh=.container1.cwm1.Height + .Height=(.rh+1)*.NRFII+2*.margine+2 +*.show() + Endwith +Endif + +Release nt,m +Return no + + + +*------------------------------------------------------------------------------------------ +Procedure deschide_menuuri +*!* If !Used('menu1') +*!* Use &DIRGEN\CONTAB\Date\menu1 In 0 Alias menu1 Order Tag 'nrnod' +*!* Endif +*!* If !Used('menu2') +*!* Use &DIRGEN\CONTAB\Date\menu2 In 0 Alias menu2 Order Tag 'nrnod' +*!* Endif +*!* If !Used('menu3') +*!* Use &DIRGEN\CONTAB\Date\menu3 In 0 Alias menu3 Order Tag 'nrnod' +*!* Endif +*!* If !Used('menu4') +*!* Use &DIRGEN\CONTAB\Date\menu4 In 0 Alias menu4 Order Tag 'nrnod' +*!* Endif + +*!* If PRIMADATA +*!* Do CE_WINDOWS +*!* omenuvertical=Crea('menuvertical') +*!* omenuvertical.Show() +*!* Endif +*deschide_menu(tabela, cc1,cc2,mnrtata,stinga,sus,ONT +Return + + + + +*-------------------------------------- +Procedure CE_WINDOWS +Local vermajor,verminor +Public TIP_MENU,COL_MENU,cewin +Store '' To cewin +Store 0 To vermajor,verminor,TIP_MENU + +vermajor=Val(Os(3)) +verminor=Val(Os(4)) +Do Case +Case vermajor<4 + cewin='95' +Case vermajor=4 + cewin='98' +Case vermajor>=5 + Do Case + Case verminor=0 + cewin='2000' + Case verminor=1 + cewin='XP' + Otherwise + cewin='MAINOU' + Endcase +Endcase + + +*IF INLIST(CEWIN,'95','98','2000') +TIP_MENU=0&&'RAISED' +*ELSE +*TIP_MENU=2&&'FLAT' +*ENDIF + +*!* Do Case +*!* Case Inlist(cewin,'95','98') +*!* COL_MENU=Rgb(192,192,192)&&GRI +*!* Case cewin='2000' +*!* COL_MENU=Rgb(212,208,200)&&NISIP GRI +*!* Case cewin='XP' +*!* COL_MENU=Rgb(236,233,216)&&NISIP BEJ +*!* Otherwise +COL_MENU=Rgb(255,255,255)&&ALB +*!* Endcase + + +Return + + + + +*-------------------------------------- +Function SCRIE_IN_FISIERE +Parameters INFORMGEST + +*!* DEBUG +*!* SUSPEND +Local M.DEB,M.CRED,COND +Store 0 To M.DEB, M.CRED +Public OZ +COND='(Empty(SUMA) AND INLIST(XSETS.ID_SET,70))'&&INREGISTRARI CU SUMA 0 + + +*!* SELECT actactan +*!* SCAN +*!* SCATTER NAME loCont +*!* IF EMPTY(loCont.ascd) +*!* SELECT plcontana +*!* LOCATE FOR cont=locont.scd +*!* IF FOUND() +*!* loCont.ascd='0000' +*!* ENDIF +*!* ENDIF +*!* IF EMPTY(loCont.ascc) +*!* SELECT plcontana +*!* LOCATE FOR cont=locont.scc +*!* IF FOUND() +*!* loCont.ascc='0000' +*!* ENDIF +*!* ENDIF +*!* SELECT actactan +*!* GATHER NAME loCont +*!* ENDSCAN +*!* RELEASE loCont + +DD=Datetime() +Do CODARE +Select ACTACTAN +Replace All COD With M.COD +Replace All UTIL With UTILIZATOR, DATAORA With DD +Go Top +Scatter Name OZ + + + +Select ACTACTAN +Scan For !Empty(SUMA) OR &COND + Scatter Memv + Select ACT + If Flock() + Append Blank + Gather Memv + Endif + Unlock + Select ACTAN + If Flock() + Append Blank + Gather Memv + Endif + Unlock + Select ACTACTAN +Endscan + +Do Case +Case Left(Upper(INFORMGEST),3)='NIR' + Do SCRIE_NIR +Case Left(Upper(INFORMGEST),3)='BON' + Select IESIRI + Replace All COD With M.COD + IF !INLIST(M.ID_SET,70) + Do IERULAJMAGAZII + Do IESTOCURIMAGAZII + ENDIF + If Inlist(M.ID_SET,74,75,76)&&TRANSFER + Select INTRARI + Replace All COD With M.COD + Do INRULAJMAGAZII + Do INSTOCURIMAGAZII + Endif +Case Upper(INFORMGEST)='SCHIMBPRET' + Select INTRARI + Replace All COD With M.COD + Select IESIRI + Replace All COD With M.COD + Do IERULAJMAGAZII + Do IESTOCURIMAGAZII + Do INRULAJMAGAZII + Do INSTOCURIMAGAZII +Endcase + + +&& TABELA DE CONTURI +*!* IF USED('conturi') +*!* USE IN conturi +*!* ENDIF + +*!* IF USED('cc') +*!* USE IN cc +*!* ENDIF + + + +IF _program='cont' + Select Distinct SCD As Cont,ascd as acont,99999999999999 As DEB,; + 99999999999999 As CRED,99999999999999.99 As DEBVAL,99999999999999.99 As CREDVAL; + FROM ACTACTAN Into Table &LOC\&NFSCURT\TEMPO\CONTURI +ELSE + Select Distinct SCD As Cont,ascd as acont,99999999999999 As DEB,; + 99999999999999 As CRED,99999999999999.99 As DEBVAL,99999999999999.99 As CREDVAL; + FROM ACTACTAN Into Table &LOC\&NFSCURT\TEMPO\CONTURI_g + USE IN conturi_g + USE &LOC\&NFSCURT\TEMPO\CONTURI_g IN 0 ALIAS conturi +ENDIF + +Select CONTURI +Replace All DEB With 0, CRED With 0,DEBVAL With 0, CREDVAL With 0 +Select Distinct SCC As Cont,ascc as acont From ACTACTAN; + WHERE SCC+ASCC Not In (Sele Distinct Cont+ACONT From CONTURI); + INTO Cursor CC +Select CONTURI +Append From Dbf('CC') + +Select CONTURI +Scan + Scatter Memv + Select ACTACTAN + Sum SUMA To M.DEB For SCD=M.CONT AND ascd=m.acont + Sum SUMA To M.CRED For SCC=M.CONT AND ascc=m.acont + Sum SUMA_2 To M.DEBVAL For SCD=M.CONT AND ascd=m.acont + Sum SUMA_2 To M.CREDVAL For SCC=M.CONT AND ascc=m.acont + Select CONTURI + Gather Fields DEB, CRED,DEBVAL,CREDVAL Memv +Endscan + + +&& SCRIE IN BALANTA +Select CONTURI +Scan + Scatter Memv + Select BAL + If Flock() + LOCATE FOR cont=M.CONT + If !Found() + Sele PLCONT + Locate For Left(CIMP1,4)=Left(M.CONT,4) + If Found() + Do MESAJ With 'Se introduce in balanta contul',M.CONT + Scatter Memvar + m.CONT=M.CIMP1 + m.denumire=m.cimp2 + Sele BAL + If Flock() + Append Blank + Gather Memvar + Endif + Unlock + Else + Do MESAJ With 'Contul '+M.CONT+' nu este introdus','nici in planul de conturi si nici in balanta!' + Do Form contnou + Endif + Endif + Select BAL + Replace RULDEB With RULDEB+M.DEB, TOTDEB With TOTDEB+M.DEB,; + RULCRED With RULCRED+M.CRED, TOTCRED With TOTCRED+M.CRED + SOLD=TOTDEB-TOTCRED + Replace SOLDDEB With Iif(SOLD>0,SOLD,0), SOLDCRED With Iif(SOLD<0,-SOLD,0) + Endif + Unlock + Select CONTURI +Endscan + +&&scrie in balanta analitica +Select ascd,ascc From ACTACTAN Where !Empty(ascd) Or !Empty(ascc) Into Cursor aacont +If _Tally<>0 + Select balana + If Flock() + Select ACTACTAN + Scan + Scatter Memv + &&deb + IF !EMPTY(m.ascd) + Select balana + Seek m.SCD+m.ascd + If !Found() + Seek m.SCD+'0000' + If !Found() + Append Blank + Replace Cont With m.SCD + Replace acont With '0000' + Endif + Endif + Replace RULDEB With RULDEB+M.suma, TOTDEB With TOTDEB+M.suma + SOLD=TOTDEB-TOTCRED + Replace SOLDDEB With Iif(SOLD>0,SOLD,0) + endif + &&cred + IF !EMPTY(m.ascc) + Select balana + Seek m.SCc+m.ascc + If !Found() + Seek m.SCc+'0000' + If !Found() + Append Blank + Replace Cont With m.SCc + Replace acont With '0000' + Endif + Endif + Replace RULcred With RULcred+M.suma, TOTcred With TOTcred+M.suma + SOLD=TOTDEB-TOTCRED + Replace SOLDcred With Iif(SOLD<0,-SOLD,0) + endif + Select ACTACTAN + Endscan + Endif + Unlock In balana +Endif + +&& SCRIE IN FISIERE +Select Distinct A.Cont,b.acont,A.FPROC,B.DEB,B.CRED,B.DEBVAL,B.CREDVAL From INFISIERE A, CONTURI B ; + WHERE A.Cont=B.Cont ; + INTO Cursor COM + +*!* SELECT com +*!* BROWSE + +Select COM +Scan + Scatter Memv + zz='Do '+Alltrim(FPROC)+' with m.deb,m.cred,M.DEBVAL,M.CREDVAL' + &zz +SELECT COM +Endscan + +SELECT com +LOCATE FOR INLIST(cont,'4426','4427') +IF !FOUND() + DO caut_neimpozab WITH 'actactan' +ENDIF + +m.NNIR=OZ.NNIR +If Type('OXSET')='O' + If !Empty(OXSET.LISTARE) + zz=Alltrim(OXSET.LISTARE) + zz='DO '+zz + If !Empty(OXSET.PARAM2) + zz=zz+' WITH '+OXSET.PARAM2 + Endif + &zz + Endif +Endif + +DO inchid_actcv +Do STERGE +Release OZ +Return 0 + + + + + +*----------------------------------------------- +Procedure _401 +Parameters debit,credit,VALDEBIT,VALCREDIT +&&&&&&&&&&& FURNIZOR + +Select FURNIZOR +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit + Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit +Endif +Unlock + +Local di,din,div +SELECT actactan +Sum SUMA To di For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount +Sum neimpozab To din For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount +Sum SUMA_2 To div For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount valuta + +&&&&&&&&&&&CUMPLUN +Local nui +Select cumplun +Set Order To nract +&&creditul=factura + +If credit!=0 OR din!=0 && discount neimpozabil + nui=.F. + Select ACTACTAN + Locate For SCC=m.CONT AND ascc=m.acont + Scatter NAME o401 + + Select cumplun + Seek o401.nract + If Found() + Locate For nract=o401.nract And dataact=o401.dataact And NUME=o401.NUME AND acont=o401.ascc + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Memv + Replace totctva With 0,SUMAVAL WITH 0 + Endif + Replace totctva With totctva+credit-di + Replace SUMAVAL With SUMAVAL+VALcredit-div + REPLACE cursschimb WITH o401.suma_3 + REPLACE ACONT WITH o401.ascc + Endif + Unlock +Endif + +RELEASE o401 +&&debitul=plata +If debit!=0 OR (credit=0 AND debit=0) && atunci cand sunt sume cu + si -, cu total 0 + nui=.F. + Select ACTACTAN + Locate For SCD=m.CONT AND ascd=m.acont + Scatter Memv + + Select cumplun + DO CASE + CASE !(COD=M.COD) AND !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_plati With 'cumplun','ascd','nume' + OTHERWISE + Select cumplun + If Flock() + Replace achitat With achitat+debit-di + Replace achitatVAL With achitatVAL+VALdebit-div + Endif + Unlock + ENDCASE +Endif + +Select cumplun +Set Order To Tag dataireg + +&&&&&&&&&&&CUMP + +*!* If credit!=0 OR din!=0 && discount neimpozabil + +*!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* Select ACTACTAN +*!* Locate For SCC=m.CONT +*!* Scatter Memv +*!* Sum neimpozab To m.neimpozab For SCC=m.CONT AND ascc=m.acont +*!* m.neimpozab=m.neimpozab-din + +*!* * Sum SUMA To di For Left(SCC,1)='7' And SCD=m.CONT &&discount + +*!* m.totctva=credit-di +*!* +*!* * Sum suma To m.tvam For Left(scd,3)='442' AND SCC=m.CONT AND ascc=m.acont +*!* Select CONTURI +*!* Locate For Left(Cont,3)='442' +*!* If Found() +*!* m.tvam=DEB-CRED +*!* Endif + +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* ** m.totctva=m.totftvam+m.neimpozab+m.tvam + +*!* Select cump +*!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME +*!* IF !FOUND() +*!* If Flock() +*!* Append Blank +*!* Gather Memv +*!* Endif +*!* UNLOCK +*!* ELSE +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* Endif + +Return + + +*----------------------------------------------- +Procedure _404 +Parameters debit,credit,VALDEBIT,VALCREDIT +Select FURNIZ404 +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit + Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit +Endif +UNLOCK + +Local di,din,div +SELECT actactan +Sum SUMA To di For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount +Sum neimpozab To din For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount +Sum SUMA_2 To div For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount valuta + +&&&&&&&&&&&CUMPLUN +Local nui +Select cumplun404 +Set Order To nract +&&creditul=factura +If credit!=0 OR din!=0 && discount neimpozabil + nui=.F. + Select ACTACTAN + Locate For SCC=m.CONT AND ascc=m.acont + *Scatter Memv + SCATTER NAME o404 + + Select cumplun404 + Seek o404.nract + If Found() + Locate For nract=o404.nract And dataact=o404.dataact And NUME=o404.NUME AND acont=o404.ascc + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Memv + GATHER NAME o404 + Replace totctva With 0,SUMAVAL WITH 0 + Endif + Replace totctva With totctva+credit-di + Replace SUMAVAL With SUMAVAL+VALcredit-div + REPLACE cursschimb WITH o404.suma_3 + REPLACE ACONT WITH o404.ascc + Endif + Unlock +Endif + +&&debitul=plata +If debit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For SCD=m.CONT AND ascd=m.acont + Scatter Memv + + Select cumplun404 + DO CASE + CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_plati With 'cumplun404','ascd','nume' + OTHERWISE + Select cumplun404 + If Flock() + Replace achitat With achitat+debit-di + Replace achitatVAL With achitatVAL+VALdebit-div + Endif + Unlock + ENDCASE +Endif + +Select cumplun404 +Set Order To Tag dataireg + +&&&&&&&&&&&CUMP + +*!* If credit!=0 OR din!=0 && discount neimpozabil + +*!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* Select ACTACTAN +*!* Locate For SCC=m.CONT +*!* Scatter Memv +*!* Sum neimpozab To m.neimpozab For SCC=m.CONT +*!* m.neimpozab=m.neimpozab-din +*!* * Sum SUMA To di For Left(SCC,1)='7' And SCD=m.CONT &&discount + +*!* m.totctva=credit-di + +*!* Select CONTURI +*!* Locate For Left(Cont,3)='442' +*!* If Found() +*!* m.tvam=DEB-CRED +*!* Endif + +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* **m.totctva=m.totftvam+m.neimpozab+m.tvam + +*!* Select cump +*!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME +*!* IF !FOUND() +*!* If Flock() +*!* Append Blank +*!* Gather Memv +*!* Endif +*!* UNLOCK +*!* ELSE +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* Endif + +RETURN + + +*----------------------------------------------- +PROCEDURE _4426 +Parameters debit,credit,VALDEBIT,VALCREDIT +Store 0 To m.totctvam,m.totftvam,m.tvam,neimpozab,totftvai,tvai + +SELECT infisiere +LOCATE FOR cont='4426' +SCATTER NAME ofis +lcCoresp_d=ALLTRIM(ofis.coresp_d) +lcCoresp_c=ALLTRIM(ofis.coresp_c) + + +SELECT actactan +SUM suma TO tvam_deb FOR scd='4426' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scc),&lcCoresp_d) +SUM suma TO tvam_cred FOR scc='4426' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scd),&lcCoresp_c) +m.tvam=tvam_deb-tvam_cred +SUM suma TO tvai_deb FOR scd='4426' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scc),&lcCoresp_d) +SUM suma TO tvai_cred FOR scc='4426' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scd),&lcCoresp_c) +m.tvai=tvai_deb-tvai_cred + + +IF debit#0 OR (credit=0 AND debit=0) + *m.tvam=debit-credit + + SELECT SUM(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),neimpozab,IIF(ALLTRIM(scc)='767' AND INLIST(ALLTRIM(scd),&lcCoresp_d),-neimpozab,0))) as neimpozab; + FROM actactan INTO CURSOR tcn + + SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),suma,IIF(ALLTRIM(scc)='767' AND INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0))) as totctvam; + FROM actactan WHERE proc_tva=m.ctvam ; + INTO CURSOR tvam + + SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),suma,IIF(ALLTRIM(scc)='767' AND INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0))) as totctvai; + FROM actactan WHERE proc_tva=m.ctvai ; + INTO CURSOR tvai + + SELECT tvam + SCATTER MEMVAR + SELECT tcn + SCATTER MEMVAR + SELECT tvai + SCATTER MEMVAR + + USE IN tvam + USE IN tcn + USE IN tvai + + m.totftvam=m.totctvam-m.tvam + m.totftvai=m.totctvai-m.tvai + m.totctva=m.totctvam+m.totctvai+m.neimpozab + + IF EMPTY(m.totctva) + RELEASE ofis + RELEASE o4426 + RETURN + ENDIF + + SELECT actactan + LOCATE FOR scd='4426' + IF !FOUND() OR scc='4428' + GO top + ENDIF + SCATTER NAME o4426 + o4426.scd=o4426.scc + + Select cump + Locate For nract=o4426.nract AND cod=o4426.cod &&And dataact=m.dataact And NUME=m.NUME + IF !FOUND() + If Flock() + Append Blank + Gather NAME o4426 + GATHER MEMVAR + Endif + UNLOCK + ELSE + REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; + tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; + tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab + ENDIF +ENDIF + +IF credit#0 + *m.tvam=debit-credit + SELECT SUM(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),-neimpozab,0)) as neimpozab ; + FROM actactan INTO CURSOR tcn + + SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0)) as totctvam ; + FROM actactan WHERE proc_tva=m.ctvam; + INTO CURSOR tvam + + SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0)) as totctvai ; + FROM actactan WHERE proc_tva=m.ctvai ; + INTO CURSOR tvai + + SELECT tvam + SCATTER MEMVAR + SELECT tcn + SCATTER MEMVAR + SELECT tvai + SCATTER MEMVAR + + USE IN tvam + USE IN tcn + USE IN tvai + + m.totftvam=m.totctvam-m.tvam + m.totftvai=m.totctvai-m.tvai + m.totctva=m.totctvam+m.totctvai+m.neimpozab + + IF EMPTY(m.totctva) + RELEASE ofis + RELEASE o4426 + RETURN + ENDIF + + SELECT actactan + LOCATE FOR scc='4426' + SCATTER NAME o4426 + + + Select cump + Locate For nract=o4426.nract AND cod=o4426.cod &&And dataact=m.dataact And NUME=m.NUME + IF !FOUND() + If Flock() + Append Blank + Gather NAME o4426 + GATHER MEMVAR + Endif + UNLOCK + ELSE + REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; + tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; + tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab + ENDIF +ENDIF + +RELEASE ofis +RELEASE o4426 +RETURN + +*----------------------------------------------- +Procedure _408 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select ana408 +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit + Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit +Endif +Unlock + + +SELECT DISTINCT scd as cont,ascd as acont,proc_tva,sum(suma) as suma408,sum(suma_2) as suma408_2,"D" as tip ; +from actactan WHERE scd='408 ' AND ascd=m.acont GROUP BY ascd,proc_tva INTO CURSOR t408 ; +UNION ; +SELECT DISTINCT scc as cont,ascc as acont,proc_tva,sum(suma) as suma408,sum(suma_2) as suma408_2,"C" as tip ; +from actactan WHERE scc='408 ' AND ascc=m.acont GROUP BY ascc,proc_tva; +order BY tip + +SELECT t408 +SCAN FOR tip='C' + SCATTER MEMVAR +&&&&&&&&&&& FACT408 +Local nui +Select fact408 +Set Order To nract + +Select fact408 +&&creditul=factura +*If credit!=0 + nui=.F. + Select ACTACTAN + Locate For SCC=m.CONT AND ascc=m.acont AND proc_tva=m.proc_tva + Scatter Memv + + Select fact408 + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont AND proc_tva=m.proc_tva + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Memv + Replace totctva With 0 + Replace SUMAVAL With 0 + Endif + + Select fact408 + Replace totctva With totctva+m.suma408 &&credit + Replace SUMAVAL With SUMAVAL+m.suma408_2 &&VALcredit + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascc + ENDIF + Unlock +*Endif +ENDSCAN +&&debitul=plata + +If debit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For SCD=m.CONT AND ascd=m.acont + Scatter Memv + + Select fact408 + If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_plati With 'fact408','ascd','nume' + Else + Select fact408 + If Flock() + Replace achitat With achitat+debit + Replace achitatVAL With achitatVAL+VALdebit + Endif + Unlock + Endif +Endif + +Select fact408 +Set Order To Tag dataireg + +&&&&&&&&&&&CUMP + +*!* LOCAL di +*!* If credit!=0 +*!* +*!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* Select ACTACTAN +*!* Locate For SCC=m.CONT +*!* Scatter Memv +*!* Sum neimpozab To m.neimpozab For SCC=m.CONT +*!* SUM suma TO di FOR LEFT(scc,1)='7' AND SCd=m.CONT&&discount + +*!* m.totctva=credit-di + +*!* Select CONTURI +*!* Locate For LEFT(Cont,3)='442' +*!* If Found() +*!* m.tvam=DEB-cred +*!* Endif + +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam + +*!* Select cump +*!* If Flock() +*!* Append Blank +*!* Gather Memv +*!* Endif +*!* Unlock +*!* Endif + +Return + + + + +*------------------------------------------------------------- +Procedure _409 +Parameters debit,credit,VALDEBIT,VALCREDIT +Select AVANS409 +If debit#0 + If Flock() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME + If !Found() + Append Blank + Gather Fields Except achitat,facturat,achitatval,factval Memv + Endif + Replace achitat With achitat+debit &&, facturat With facturat+credit + Replace achitatVAL With achitatVAL+VALdebit + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascd + Endif + Unlock +ENDIF + +If credit#0 +*!* If Used('actcv1') +*!* Select actcv1 +*!* Scan For ALES +*!* Scatter Name av +*!* Select AVANS409 +*!* Locate For nract=av.nract And dataact=av.dataact And NUME=av.NUME +*!* If Flock() +*!* Replace facturat With facturat+av.sumaachi +*!* Replace factVAL With factVAL+av.sumaachi2 +*!* Endif +*!* Unlock +*!* Select actcv1 +*!* ENDSCAN +*!* Release av +*!* ELSE &&la modificare + SELECT actactan + LOCATE FOR LEFT(scc,3)='409' + SCATTER NAME omodif +*!* lcDat=Right(Allt(omodif.NRORD),10) +*!* ldDAT=Ctod(lcDat) +*!* lcNr=Strtran(Strtran(omodif.NRORD,lcDat,''),'/','') +*!* lnNr=Val(lcNr) + Select AVANS409 + Locate For nract=omodif.pereche2 And NUME=omodif.NUME + IF FOUND() + If Flock() + Replace facturat With facturat+CREDIT + Replace factVAL With factVAL+valCREDIT + Endif + UNLOCK + ENDIF + Release omodif +*!* ENDIF +*!* +Endif + + +Select FURNIZOR +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace avans With avans+debit-credit + Replace avansVAL With avansVAL+VALdebit-VALcredit +Endif +Unlock +IF USED('actcv1') + USE IN actcv1 +ENDIF +Return + +*----------------------------------------------- +Procedure _411 +Parameters debit,credit,VALDEBIT,VALCREDIT +Select clienti + +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace productie With productie +debit, incasat With incasat+credit + Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit +Endif +UNLOCK + + +IF id_set=10421 + DO regularizare_clienti + IF USED('actcv') + USE IN actcv + ENDIF + RETURN +ENDIF + +Local di,din,div +SELECT actactan +Sum SUMA To di For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount +Sum neimpozab To din For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount +Sum SUMA_2 To div For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount valuta + +&&&&&&&&&&&vanzLUN +Local nui +Select vanzlun +Set Order To nract +&&debitul=factura +If (debit!=0 OR din!=0) &&AND xsets.id_set!=10421 && discount neimpozabil + regularizari avans-facturi(e uraaaaaaaaaaaaaaaaaat) + nui=.F. + Select ACTACTAN + Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont + Scatter Memv + +*!* IF m.ctvam#m.ctvai +*!* SUM suma TO m.totftvam FOR Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont AND proc_tva=m.ctvam +*!* SUM suma TO m.tvam FOR SCc='4427' AND ascd=m.acont AND proc_tva=m.ctvam +*!* SUM suma TO m.totftvai FOR Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont AND proc_tva=m.ctvai +*!* SUM suma TO m.tvai FOR SCc='4427' AND ascd=m.acont AND proc_tva=m.ctvai +*!* SUM suma TO m.neimpozab FOR Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont AND neimpozab#0 +*!* ENDIF + + Select vanzlun + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + ENDIF + + If Flock() + If nui + Append Blank + Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv + ENDIF + + Replace totctva With totctva+debit-di + Replace SUMAVAL With SUMAVAL+VALdebit-div +*!* REPLACE totftvam WITH totftvam+m.totftvam-di,totftvai WITH totftvai+m.totftvai-di,tvam WITH tvam+m.tvam,tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascd + Endif + Unlock +Endif + + +&&creditul=plata +If credit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont + Scatter Memv + Select vanzlun + DO CASE + CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_incasari With 'vanzlun','ascc','nume' + OTHERWISE + Select vanzlun + If Flock() + Replace achitat With achitat+credit-di + Replace achitatVAL With achitatVAL+VALcredit-div + Endif + Unlock + ENDCASE + +Endif + +Select vanzlun +Set Order To Tag dataireg + +&&&&&&&&&&&vanz + +*!* If debit!=0 OR din!=0 && discount neimpozabil +*!* m.totctva=debit-di +*!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* Select ACTACTAN +*!* Locate For SCD=m.CONT +*!* Scatter Memv +*!* Sum neimpozab To m.neimpozab For Left(SCD,3)=Left(m.CONT,3) +*!* m.neimpozab=m.neimpozab-din + +*!* Select CONTURI +*!* Locate For Cont='4427' +*!* If Found() +*!* m.tvam=CRED +*!* Endif + +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam + +*!* Select vanz +*!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME +*!* IF !FOUND() +*!* If Flock() +*!* Append Blank +*!* Gather Memv +*!* Endif +*!* UNLOCK +*!* ELSE +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* Endif + +Return + + +*----------------------------------------------- + +PROCEDURE _4427 +Parameters debit,credit,VALDEBIT,VALCREDIT +Store 0 To m.totctvam,m.totftvam,m.tvam,m.neimpozab,m.totftvai,m.tvai + +SELECT infisiere +LOCATE FOR cont='4427' +SCATTER NAME ofis +lcCoresp_c=ALLTRIM(ofis.coresp_c) +lcCoresp_d=ALLTRIM(ofis.coresp_d) + +SELECT actactan +SUM suma TO tvam_deb FOR scd='4427' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scc),&lcCoresp_d) +SUM suma TO tvam_cred FOR scc='4427' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scd),&lcCoresp_c) +m.tvam=tvam_cred-tvam_deb +SUM suma TO tvai_deb FOR scd='4427' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scc),&lcCoresp_d) +SUM suma TO tvai_cred FOR scc='4427' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scd),&lcCoresp_c) +m.tvai=tvai_cred-tvai_deb + + +IF credit#0 OR (credit=0 AND debit=0) + SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),neimpozab,IIF(ALLTRIM(scd)='667' AND INLIST(ALLTRIM(scc),&lcCoresp_c),-neimpozab,0))) as neimpozab ; + FROM ACTACTAN INTO CURSOR tcn + + SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),suma,IIF(ALLTRIM(scd)='667' AND INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0))) as totctvam; + FROM actactan WHERE proc_tva=m.ctvam ; + INTO CURSOR tvam + + SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),suma,IIF(ALLTRIM(scd)='667' AND INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0))) as totctvai; + FROM actactan WHERE proc_tva=m.ctvai ; + INTO CURSOR tvai + + SELECT tvam + SCATTER MEMVAR + SELECT tcn + SCATTER MEMVAR + SELECT tvai + SCATTER MEMVAR + + USE IN tvam + USE IN tcn + USE IN tvai + + m.totftvam=m.totctvam-m.tvam + m.totftvai=m.totctvai-m.tvai + m.totctva=m.totctvam+m.totctvai+m.neimpozab + + IF EMPTY(m.totctva) + RELEASE ofis + RETURN + ENDIF + + SELECT actactan + LOCATE FOR scc='4427' + IF !FOUND() OR scd='4428' + GO top + ENDIF + SCATTER FIELDS EXCEPT neimpozab MEMVAR + + Select vanz + Locate For nract=m.nract AND cod=m.cod &&And dataact=m.dataact And NUME=m.NUME + IF !FOUND() + If Flock() + Append Blank + Gather Memv + Endif + UNLOCK + ELSE + REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; + tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; + tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab + ENDIF +ENDIF + +IF debit#0 +*!* SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0)) as totctva,; +*!* sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-neimpozab,0)) as neimpozab ; +*!* FROM actactan ; +*!* INTO CURSOR tva +*!* +*!* SELECT tva +*!* SCATTER MEMVAR +*!* m.tvam=credit-debit +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam + + SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-neimpozab,0)) as neimpozab ; + FROM actactan INTO CURSOR tcn + + SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0)) as totctvam ; + FROM actactan WHERE proc_tva=m.ctvam ; + INTO CURSOR tvam + + SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0)) as totctvai ; + FROM actactan WHERE proc_tva=m.ctvai ; + INTO CURSOR tvai + + SELECT tvam + SCATTER MEMVAR + SELECT tcn + SCATTER MEMVAR + SELECT tvai + SCATTER MEMVAR + + USE IN tvam + USE IN tcn + USE IN tvai + + m.totftvam=m.totctvam-m.tvam + m.totftvai=m.totctvai-m.tvai + m.totctva=m.totctvam+m.totctvai+m.neimpozab + + IF EMPTY(m.totctva) + RELEASE ofis + RETURN + ENDIF + + SELECT actactan + LOCATE FOR scd='4427' + SCATTER FIELDS EXCEPT neimpozab MEMVAR + m.scd=m.scc + + Select vanz + Locate For nract=m.nract AND cod=m.cod &&And dataact=m.dataact And NUME=m.NUME + IF !FOUND() + If Flock() + Append Blank + Gather Memv + Endif + UNLOCK + ELSE + REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; + tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; + tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab + ENDIF +ENDIF + + + +RELEASE ofis +RETURN +*---------------------------------------------------------------- + +Procedure _4118 +Parameters debit,credit,VALDEBIT,VALCREDIT +Select client4118 + +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace productie With productie +debit, incasat With incasat+credit + Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit +Endif +Unlock + +&&&&&&&&&&&vanzLU4118 +Local nui +Select vanzlu4118 +Set Order To nract +&&debitul=factura +If debit!=0 + nui=.F. + Select ACTACTAN + Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont + Scatter Memv + + Select vanzlu4118 + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv + Endif + Replace totctva With totctva+debit + Replace SUMAVAL With SUMAVAL+VALdebit + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascd + Endif + Unlock +Endif + + + +&&creditul=plata +If credit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont + Scatter Memv + Select vanzlu4118 + If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_incasari With 'vanzlu4118','ascc','nume' + Else + Select vanzlu4118 + If Flock() + Replace achitat With achitat+credit + Replace achitatVAL With achitatVAL+VALcredit + Endif + Unlock + Endif + +Endif + + +Select vanzlu4118 +Set Order To Tag dataireg + +&&&&&&&&&&&vanz + +*!* if debit!=0 +*!* SELECT vanz +*!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME +*!* If Found() +*!* IF FLOCK() +*!* REPLACE scd WITH m.cont +*!* ENDIF +*!* ENDIF + +*!* *!* m.totctva=debit +*!* *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* *!* Select ACTACTAN +*!* *!* Locate For SCD=m.CONT +*!* *!* Scatter Memv +*!* *!* Sum neimpozab To m.neimpozab For Left(SCC,3)=Left(m.CONT,3) + + +*!* *!* Select CONTURI +*!* *!* Locate For Cont='4427' +*!* *!* If Found() +*!* *!* m.tvam=CRED +*!* *!* Endif + +*!* *!* m.totftvam=m.totctva-m.neimpozab-m.tvam + +*!* *!* Select vanz +*!* *!* If Flock() +*!* *!* Append Blank +*!* *!* Gather Memv +*!* *!* Endif +*!* *!* Unlock +*!* Endif + + +RETURN + +*----------------------------------------------- +Procedure _418 +Parameters debit,credit,VALDEBIT,VALCREDIT +Select ana418 + +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace productie With productie +debit, incasat With incasat+credit + Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit +Endif +Unlock + +*!* &&&&&&&&&&&vanzLUN +*!* Local nui +*!* Select fact418 +*!* Set Order To nract +*!* &&debitul=factura +*!* If debit!=0 +*!* nui=.F. +*!* Select ACTACTAN +*!* Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont +*!* Scatter Memv + +*!* Select fact418 +*!* Seek m.nract +*!* If Found() +*!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont +*!* If !Found() +*!* nui=.T. +*!* Endif +*!* Else +*!* nui=.T. +*!* Endif +*!* If Flock() +*!* If nui +*!* Append Blank +*!* Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv +*!* Endif +*!* Replace totctva With totctva+debit +*!* Replace SUMAVAL With SUMAVAL+VALdebit +*!* REPLACE cursschimb WITH m.suma_3 +*!* REPLACE ACONT WITH m.ascd +*!* Endif +*!* Unlock +*!* Endif + + +SELECT DISTINCT scd as cont,ascd as acont,proc_tva,sum(suma) as suma418,sum(suma_2) as suma418_2,"D" as tip ; +from actactan WHERE scd='418 ' AND ascd=m.acont GROUP BY ascd,proc_tva INTO CURSOR t418 ; +UNION ; +SELECT DISTINCT scc as cont,ascc as acont,proc_tva,sum(suma) as suma418,sum(suma_2) as suma418_2,"C" as tip ; +from actactan WHERE scc='418 ' AND ascc=m.acont GROUP BY ascc,proc_tva; +order BY tip + +&&&&&&&&&&& FACT418 +SELECT t418 +SCAN FOR tip='D' + SCATTER MEMVAR + Local nui + Select fact418 + Set Order To nract + + Select fact418 + nui=.F. + Select ACTACTAN + Locate For SCD=m.CONT AND ascd=m.acont AND proc_tva=m.proc_tva + Scatter Memv + + Select fact418 + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont AND proc_tva=m.proc_tva + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Memv + Replace totctva With 0 + Replace SUMAVAL With 0 + Endif + + Select fact418 + Replace totctva With totctva+m.suma418 &&credit + Replace SUMAVAL With SUMAVAL+m.suma418_2 &&VALcredit + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascd + ENDIF + UNLOCK +ENDSCAN +&&creditul=plata +If credit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont + Scatter Memv + Select fact418 + If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_incasari With 'fact418','ascc','nume' + Else + Select fact418 + If Flock() + Replace achitat With achitat+credit + Replace achitatVAL With achitatVAL+VALcredit + Endif + Unlock + Endif + +Endif + + +Select fact418 +Set Order To Tag dataireg + +Return + +*----------------------------------------------- +Procedure _461 +Parameters Tndebit,Tncredit,TnVALDEBIT,TnVALCREDIT +Select debitor + +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace DEBIT With DEBIT+tndebit, CREDIT With CREDIT+tncredit + Replace VALDEBIT With VALDEBIT +tnVALdebit, VALCREDIT With VALCREDIT+tnVALcredit +Endif +UNLOCK + +LOCAL di,din +SELECT actactan +Sum SUMA To di For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount +Sum neimpozab To din For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount +Sum SUMA_2 To div For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount valuta + +&&&&&&&&&&&vanzLUN +Local nui +Select deblun +Set Order To nract +&&debitul=factura +If tndebit!=0 + nui=.F. + Select ACTACTAN + Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont + Scatter Memv + + Select deblun + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv + ENDIF + Replace totctva With totctva+TnDebit-di + Replace SUMAVAL With SUMAVAL+TnVALdebit-div + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascd + Endif + Unlock +Endif + + + +&&creditul=plata +If tnCredit!=0 OR (tnCredit=0 AND tnDebit=0) + nui=.F. + Select ACTACTAN + Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont + Scatter Memv + Select deblun + DO CASE + CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_incasari With 'deblun','ascc','nume' + OTHERWISE + Select deblun + If Flock() + Replace achitat With achitat+tnCredit-di + Replace achitatVAL With achitatVAL+TnVALcredit-div + Endif + Unlock + ENDCASE + +Endif + + +Select deblun +Set Order To Tag dataireg + +&&&&&&&&&&&vanz + +*!* If tnDebit!=0 OR din!=0 && discount neimpozabil +*!* m.totctva=tndebit-di +*!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* Select ACTACTAN +*!* Locate For SCD=m.CONT +*!* Scatter Memv +*!* Sum neimpozab To m.neimpozab For Left(SCD,3)=Left(m.CONT,3) +*!* m.neimpozab=m.neimpozab-din + +*!* Select CONTURI +*!* Locate For Cont='4427' +*!* If Found() +*!* m.tvam=CRED +*!* Endif + +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam + +*!* Select vanz +*!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME +*!* IF !FOUND() +*!* If Flock() +*!* Append Blank +*!* Gather Memv +*!* Endif +*!* UNLOCK +*!* ELSE +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* Endif + + +Return +*----------------------------------------------- +Procedure _462 +Parameters Tndebit,Tncredit,TnVALDEBIT,TnVALCREDIT +Select CREDITOR + +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace DEBIT With DEBIT+tndebit, CREDIT With CREDIT+tncredit + Replace VALDEBIT With VALDEBIT +tnVALdebit, VALCREDIT With VALCREDIT+tnVALcredit +Endif +UNLOCK + +&&&&&&&&&&&CREDLUN +Local nui +Select CREDlun +Set Order To nract +&&creditul=factura +If TNcredit!=0 + nui=.F. + Select ACTACTAN + Locate For SCC=m.CONT AND ascc=m.acont + Scatter Memv + + Select CREDlun + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Fields Except totctva Memv + Endif + Replace totctva With totctva+TNcredit + Replace SUMAVAL With SUMAVAL+TnVALcredit + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascc + Endif + Unlock +Endif + + +&&debitul=plata +If TNdebit!=0 OR (TNcredit=0 AND TNdebit=0) + nui=.F. + Select ACTACTAN + Locate For SCD=m.CONT AND ascd=m.acont + Scatter Memv + + Select CREDlun + DO CASE + CASE !(COD=M.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_plati With 'CREDlun','ascd','nume' + OTHERWISE + Select CREDlun + If Flock() + Replace achitat With achitat+TNdebit + Replace achitatVAL With achitatVAL+TnVALdebit + Endif + Unlock + ENDCASE +Endif + +Select CREDlun +Set Order To Tag dataireg + +&&&&&&&&&&& CUMP NU STIU ???????????????? + +*!* Local di +*!* If credit!=0 + +*!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai + +*!* Select ACTACTAN +*!* Locate For SCC=m.CONT +*!* Scatter Memv +*!* Sum neimpozab To m.neimpozab For SCC=m.CONT +*!* Sum SUMA To di For Left(SCC,1)='7' And SCD=m.CONT&&discount + +*!* m.totctva=credit-di + +*!* Select CONTURI +*!* Locate For Left(Cont,3)='442' +*!* If Found() +*!* m.tvam=DEB-CRED +*!* Endif + + +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* *m.totctva=m.totftvam+m.neimpozab+m.tvam + +*!* Select cump +*!* If Flock() +*!* Append Blank +*!* Gather Memv +*!* Endif +*!* Unlock +*!* Endif + +Return + + +*----------------------------------------------- +Procedure _419 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select AVANS419 +If credit#0 + If Flock() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME + If !Found() + Append Blank + Gather Fields Except achitat,facturat,achitatval,factval Memv + Endif + Replace achitat With achitat+credit &&, facturat With facturat+credit + Replace achitatVAL With achitatVAL+VALcredit + REPLACE cursschimb WITH m.suma_3 + REPLACE ACONT WITH m.ascc + Endif + Unlock +Endif +If debit#0 +*!* If Used('actcv1') +*!* Select actcv1 +*!* Scan For ALES +*!* Scatter Name av +*!* Select AVANS419 +*!* Locate For nract=av.nract And dataact=av.dataact And NUME=av.NUME +*!* If Flock() +*!* Replace facturat With facturat+av.sumaachi +*!* Replace factVAL With factVAL+av.sumaachi2 +*!* Endif +*!* Unlock +*!* Select actcv1 +*!* Endscan +*!* Release av +*!* ELSE &&la modificare + SELECT actactan + LOCATE FOR LEFT(scd,3)='419' + SCATTER NAME omodif +*!* lcDat=Right(Allt(omodif.NRORD),10) +*!* ldDAT=Ctod(lcDat) +*!* lcNr=Strtran(Strtran(omodif.NRORD,lcDat,''),'/','') +*!* lnNr=Val(lcNr) + Select AVANS419 + Locate For nract=omodif.pereche And NUME=omodif.NUME + IF FOUND() + If Flock() + Replace facturat With facturat+debit + Replace factVAL With factVAL+valdebit + Endif + UNLOCK + ENDIF + Release omodif +*!* Endif +Endif + + +Select clienti +If Flock() + If Alltrim(NUME)!=Alltrim(M.NUME) + Seek Alltrim(M.NUME) + If !Found() + Append Blank + Gather Fields NUME,COD_FISCAL Memv + Endif + Endif + Replace avans With avans-debit+credit + Replace avansVAL With avansVAL-VALdebit+VALcredit +Endif +Unlock + +DO inchid_actcv + +Return + +*----------------------------------------------- +Procedure _5311 +Parameters debit,credit,VALDEBIT,VALCREDIT +STORE 0 TO m.plati,m.incasari + +&&credit=casa plateste + +IF CREDIT#0 + Select ACTACTAN + Locate For SCC=m.CONT + Scatter Memv + *m.casa=m.CASACRED + m.casa=ALLTRIM(m.nume_3) + + Select casa + If Flock() + Append Blank + Gather Memv + Replace plati With credit + Endif + Unlock + + Select casanume + *Locate For casa=m.casaCRED + Locate For ALLTRIM(casa)=m.casa + If Flock() + If !Found() + Append Blank + *Gather Fields casa Memv + REPLACE CASA WITH M.CASA + Endif + Replace plati With plati+credit + Endif + Unlock +ENDIF + +&&debit=casa incas +IF DEBIT#0 + Select ACTACTAN + Locate For SCD=m.CONT + Scatter Memv + *m.casa=m.CASADEB + m.casa=ALLTRIM(m.nume_3) + + Select casa + If Flock() + Append Blank + Gather Memv + Replace incasari With debit + Endif + Unlock + + Select casanume + Locate For ALLTRIM(casa)=m.casa + If Flock() + If !Found() + Append Blank + *Gather Fields casa Memv + REPLACE CASA WITH M.CASA + Endif + Replace incasari With incasari+debit + Endif + Unlock +ENDIF + + +Return + +*----------------------------------------------- +Procedure _5314 +Parameters debit,credit,VALDEBIT,VALCREDIT + +STORE 0 TO m.plati,m.incasari,m.platival,m.incasval + +&&credit=casa plateste +IF CREDIT#0 + IF EMPTY(M.CASAVALCRE) && pt modificare + Select ACTACTAN + Locate For SCC=m.CONT + M.CASAVALCRE=nume_5 + ENDIF + Select casVnume + Locate For NUME_5=M.CASAVALCRE + If Flock() + If !Found() + Append Blank + REPLACE NUME_5 WITH M.CASAVALCRE + *Gather Fields NUME_5 Memv + Endif + Replace plati With plati+credit + Replace platiVAL With platiVAL+VALcredit + REPLACE numeval WITH m.nume_4 + Endif + UNLOCK + + Select ACTACTAN + SCAN For SCC=m.CONT && din cauza diferentelor de curs valutar + Scatter Memv + *m.casa=m.nume_5 + M.CASA=M.CASAVALCRE + Select casaVAL + If Flock() + Append Blank + Gather Memv + Replace plati With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 + Replace platiVAL With m.suma_2 + Endif + UNLOCK + SELECT actactan + ENDSCAN +ENDIF + +&&debit=casa incas +IF DEBIT#0 + IF EMPTY(M.CASAVALDEB) && pt modificare + Select ACTACTAN + Locate For SCD=m.CONT + M.CASAVALDEB=nume_5 + ENDIF + + Select casVnume + Locate For NUME_5=m.CASAVALDEB + SELECT casvnume + If Flock() + If !Found() + Append Blank + *Gather Fields NUME_5 Memv + REPLACE NUME_5 WITH m.CASAVALDEB + Endif + Replace incasari With incasari+debit + Replace incasVAL With incasVAL+VALdebit + REPLACE numeval WITH m.nume_4 + Endif + UNLOCK + + Select ACTACTAN + SCAN For SCD=m.CONT && din cauza diferentelor de curs valutar + Scatter Memv + *m.casa=m.nume_5 + M.CASA=m.CASAVALDEB + + Select casaVAL + If Flock() + Append Blank + Gather Memv + Replace incasari With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 + Replace incasVAL With m.suma_2 + Endif + UNLOCK + + SELECT actactan + ENDSCAN +ENDIF +Return + +*----------------------------------------------- +Procedure _5121 +Parameters debit,credit,VALDEBIT,VALCREDIT + +STORE 0 TO m.plati,m.incasari + +&&credit=banca plateste +IF CREDIT#0 + Select ACTACTAN + Locate For SCC=m.CONT + Scatter Memv + m.BANCACRED=ALLTRIM(m.nume_2) + m.banca=m.BANCACRED + + Select banca + If Flock() + Append Blank + Gather Memv + Replace plati With credit + Endif + Unlock + + Select bannume + Locate For ALLTRIM(nume_2)=m.bancaCRED + If Flock() + If !Found() + Append Blank + *Gather Fields nume_2 Memv + REPLACE NUME_2 WITH M.BANCACRED + Endif + Replace plati With plati+credit + Endif + Unlock +ENDIF + +&&debit=banca incas +IF DEBIT#0 + Select ACTACTAN + Locate For SCD=m.CONT + Scatter Memv + m.bancadeb=ALLTRIM(m.nume_2) + m.banca=m.BANCADEB + + Select banca + If Flock() + Append Blank + Gather Memv + Replace incasari With debit + Endif + Unlock + + Select bannume + Locate For ALLTRIM(nume_2)=m.bancaDEB + If Flock() + If !Found() + Append Blank + *Gather Fields nume_2 Memv + REPLACE NUME_2 WITH m.bancaDEB + Endif + Replace incasari With incasari+debit + Endif + Unlock +ENDIF + +Return + +*----------------------------------------------- +Procedure _5124 +Parameters debit,credit,VALDEBIT,VALCREDIT + +STORE 0 TO m.plati,m.incasari,m.platival,m.incasval + +&&credit=banca plateste +IF CREDIT#0 + IF EMPTY(m.banvalcred) && pt modificare + Select ACTACTAN + Locate For SCC=m.CONT + m.BANVALCRED=nume_3 + ENDIF + + Select banVnume + Locate For nume_3=m.BANVALCRED + If Flock() + If !Found() + Append Blank + *Gather Fields nume_3 Memv + REPLACE NUME_3 WITH m.BANVALCRED + Endif + Replace plati With plati+credit + Replace platiVAL With platiVAL+VALcredit + REPLACE numeval WITH m.nume_4 + Endif + UNLOCK + + Select ACTACTAN + SCAN For SCC=m.CONT && din cauza diferentelor de curs valutar + Scatter Memv + m.banca=m.BANVALCRED + + Select bancaVAL + If Flock() + Append Blank + Gather Memv + Replace plati With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 + Replace platiVAL With m.suma_2 + Endif + UNLOCK + Select ACTACTAN + ENDSCAN +ENDIF + +&&debit=banca incas +IF DEBIT#0 + IF EMPTY(m.banvaldeb) && pt modificare + Select ACTACTAN + Locate For SCD=m.CONT + m.BANVALDEB=nume_3 + ENDIF + + Select banVnume + Locate For nume_3=m.BANVALDEB + If Flock() + If !Found() + Append Blank + *Gather Fields nume_3 Memv + REPLACE NUME_3 WITH m.BANVALDEB + Endif + Replace incasari With incasari+debit + Replace incasVAL With incasVAL+VALdebit + REPLACE numeval WITH m.nume_4 + Endif + UNLOCK + + + Select ACTACTAN + SCAN For SCD=m.CONT && din cauza diferentelor de curs valutar + Scatter Memv + m.banca=m.BANVALDEB + + Select bancaVAL + If Flock() + Append Blank + Gather Memv + Replace incasari With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 + Replace incasVAL With m.suma_2 + Endif + UNLOCK + Select ACTACTAN + ENDSCAN +ENDIF +Return + + + +*----------------------------------------------- +Procedure _542 +Parameters Tndebit,Tncredit,TnVALDEBIT,TnVALCREDIT + + +Select achit542 +If Flock() + If Alltrim(NUME_2)!=Alltrim(M.NUME_2) + Seek Alltrim(M.NUME_2) + If !Found() + Append Blank + Gather Fields NUME_2,COD_FISCAL Memv + Endif + Endif + Replace DEBIT With DEBIT+tndebit, CREDIT With CREDIT+tncredit + Replace VALDEBIT With VALDEBIT +tnVALdebit, VALCREDIT With VALCREDIT+tnVALcredit +Endif +UNLOCK + + +&&&&&&&&&&& achiLUN +Local nui +Select achilun +Set Order To nract +&&debitul=factura +If tndebit!=0 + nui=.F. + Select ACTACTAN + Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont + Scatter Memv + + Select achilun + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME_2 AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv + ENDIF + Replace totctva With totctva+TnDebit + Replace SUMAVAL With SUMAVAL+TnVALdebit + REPLACE cursschimb WITH m.suma_3 + REPLACE nume WITH m.nume_2 + REPLACE ACONT WITH m.ascd + Endif + Unlock +Endif + + + +&&creditul=plata +If tnCredit!=0 OR (tnCredit=0 AND tnDebit=0) + nui=.F. + Select ACTACTAN + Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont + Scatter Memv + Select achilun +*!* DO CASE +*!* CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_incasari With 'achilun','ascc','nume_2' +*!* OTHERWISE +*!* Select achilun +*!* If Flock() +*!* Replace achitat With achitat+tnCredit +*!* Replace achitatVAL With achitatVAL+TnVALcredit +*!* Endif +*!* Unlock +*!* ENDCASE + +Endif + + +Select achilun +Set Order To Tag dataireg + +*!* Parameters debit,credit,VALDEBIT,VALCREDIT +*!* &&&&&&&&&&& achit542 +*!* Select ACTACTAN +*!* Locate For SCC=m.CONT Or SCD=m.CONT +*!* Scatter Fields nume_2 Memv + +*!* Select achit542 +*!* If Flock() +*!* If Upper(Alltrim(nume_2))!=Upper(Alltrim(M.nume_2)) +*!* Seek Upper(Alltrim(M.nume_2)) +*!* If !Found() +*!* Append Blank +*!* Gather Fields nume_2 Memv +*!* Endif +*!* Endif +*!* Replace dat With dat+credit, luat With luat+debit +*!* Endif +*!* Unlock +Endproc +*----------------------------------------------- +Procedure _455 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select actionar +If Flock() + If Upper(Alltrim(nume_2))!=Upper(Alltrim(M.nume_2)) + Seek Upper(Alltrim(M.nume_2)) + If !Found() + Append Blank + Gather Fields nume_2 Memv + Endif + Endif + Replace dat With dat+debit, luat With luat+credit +Endif +Unlock +Endproc + + +*-------------------------------------------------------- +Procedure _471 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Local nui +Select chavans +Set Order To nract + +Select chavans + +If debit!=0 + nui=.F. + Select ACTACTAN + Locate For SCD=m.CONT AND ascd=m.acont + Scatter Memv + Select chavans + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Memv + Replace totctva With 0 + Endif + + Select chavans + Replace totctva With totctva+debit + Endif + Unlock +Endif + +&&debitul=plata +If credit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For SCC=m.CONT AND ascc=m.acont + Scatter Memv + Select chavans + If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_incasari With 'chavans','ascc','nume' + ELSE + Select chavans + * LOCATE FOR ALLTRIM(nume)=ALLTRIM(m.nume) AND ALLTRIM(dst_chlt)=ALLTRIM(m.dst_chlt) + * IF FOUND() + If Flock() + Replace achitat With achitat+credit + Endif + UNLOCK + * ENDIF + Endif +Endif + +Select chavans +Set Order To Tag dataireg +Endproc + +*-------------------------------------------------------- + +Procedure _472 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Local nui +Select vnavans +Set Order To nract + +Select vnavans + +If credit!=0 + nui=.F. + Select ACTACTAN + Locate For SCc=m.CONT AND ascc=m.acont + Scatter Memv + Select vnavans + Seek m.nract + If Found() + Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont + If !Found() + nui=.T. + Endif + Else + nui=.T. + Endif + If Flock() + If nui + Append Blank + Gather Memv + Replace totctva With 0 + Endif + + Select vnavans + Replace totctva With totctva+credit + Endif + Unlock +Endif + +&&debitul=plata +If debit!=0 OR (credit=0 AND debit=0) + nui=.F. + Select ACTACTAN + Locate For SCC=m.CONT AND ascd=m.acont + Scatter Memv + Select vnavans + If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura + Do trezorerie_plati With 'vnavans','ascd','nume' + ELSE + Select vnavans + * LOCATE FOR ALLTRIM(nume)=ALLTRIM(m.nume) AND ALLTRIM(dst_chlt)=ALLTRIM(m.dst_chlt) + * IF FOUND() + If Flock() + Replace achitat With achitat+credit + Endif + UNLOCK + * ENDIF + Endif +Endif + +Select vnavans +Set Order To Tag dataireg +ENDPROC + +*----------------------------------------------------------------- +Procedure _5112 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select ACTACTAN +Locate For SCD=m.CONT Or SCC=m.CONT +Scatter Memv + +Select cecnume +If Flock() + If Upper(Alltrim(cec))!=Upper(Alltrim(M.explicatia)) + Seek Upper(Alltrim(M.explicatia)) + If !Found() + Append Blank + Replace cec With m.explicatia + Endif + Endif + Replace incarcat With incarcat+debit,plati With plati+credit +Endif +Unlock +Sele cec +If Flock() + Go Bottom + Appe Blank + m.plati=credit + m.incarcat=debit + Gather Memvar +Endif +Unlock +Endproc +*-------------------------------------------------------- + +*!* PROCEDURE _667 +*!* PARAMETERS debit,credit,valdebit,valcredit + +*!* SELECT actactan +*!* LOCATE FOR scd=m.cont +*!* lcScc=scc +*!* SELECT infisiere +*!* LOCATE FOR cont=lcScc +*!* SCATTER NAME ofis +*!* SELECT (ofis.fisier) + +*!* ENDPROC + + + +Procedure SCRIE_NIR + +DD=Datetime() +Select INTRARI +Replace All COD With M.COD +Replace All UTIL With UTILIZATOR +Replace All DATAORA With DD +Do INRULAJMAGAZII +Do INSTOCURIMAGAZII +Return + + +*-------------------------------------------------------- +Function LANS +Parameters IDS + +*DO STERGE + +m.ID_SET=IDS +Select XSETS +Seek IDS +Scatter Name OXSET +oitem=Crea('actbaza') +oitem.ID_SET=IDS +oitem.Show(1) +If OXSET.nu_sterg=.F. And buton!=2 + Do danu With 'Doriti sa continuati cu operatii de acest fel?' + If buton=1 + LANS(IDS) + Endif +Endif +Release OXSET +Return + + + + +*---------------------------------------------- +Procedure afis_operatii +PARAMETERS tcFis,tlVisible +SELECT (tcFis) +Scatter Fields COD,SCD,SCC,nume_2 Memvar +Select * From &tcFis Where &tcFis..COD=m.COD Into Cursor AAA NOFILTER +Select AAA +N=Reccount() + +Public camp +Scatter Name camp + +Do Form vizpage +*ov=CREATEOBJECT('vizpage') && NU MERGE SI NU INTELEG DE CE :( +*ov.bandablOC1.visible=tlVisible +*ov.banda21.visible=!tlVisible +*ov.blocbuton1.visible=!tlVisible +*ov.show() + +Release camp +Select rull +Set Filter To +Select &tcfis +Endproc + + + + + + + +*!* *------------------------------------------- + +*!* Function BLOCHEZ_NIR +*!* Select NRNIR +*!* Flock() + +*!* DO case +*!* case nr_bonuri=0 +*!* Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST +*!* m=m+1 +*!* m.NNIR='1'+Str(NR_GEST,1,0)+Str(m.GEST,3,0)+Str(m,5,0) +*!* m.NNIR=Strtran(M.NNIR,' ','0') +*!* case nr_bonuri=1 +*!* Calculate Max(NR) To m +*!* m=m+1 +*!* m.NNIR=Alltrim(Str(m)) +*!* case nr_bonuri=2 +*!* Calculate Max(NR) To m For NRGEST=idutil +*!* m=m+1 +*!* m.NNIR=Alltrim(Str(m)) +*!* Endcase +*!* Append Blank +*!* Gather Fields NNIR Memv +*!* Replace NRGEST With idutil,NR With m +*!* *Replace NRGEST With m.nr_gest,NR With m +*!* Unlock +*!* Return M.NNIR + +*------------------------------------------- +Function BLOCHEZ_NIR +LOCAL G,M +STORE 0 TO M,G +Select NRNIR +Flock() + +DO case +case nr_bonuri=0 + Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST + m=m+1 + m.NNIR='1'+Str(NR_GEST,1,0)+Str(m.GEST,3,0)+Str(m,5,0) + m.NNIR=Strtran(M.NNIR,' ','0') + G= m.nr_gest +case nr_bonuri=1 + Calculate Max(NR) To m + m=m+1 + m.NNIR=Alltrim(Str(m)) +case nr_bonuri=2 + Calculate Max(NR) To m For NRGEST=idutil + m=m+1 + m.NNIR=Alltrim(Str(m)) + G= idutil +ENDCASE +Select NRNIR +Append Blank +Gather Fields NNIR,GEST Memv +*Replace NRGEST With idutil,NR With m +*Replace NRGEST With m.nr_gest,NR With m +REPLACE NR WITH M,NRGEST WITH G +Unlock +Return M.NNIR + + + + +*---------------------------------- +Function ELIB_NIR +Parameters N +Select NRNIR +Seek N +If Found() + If Flock() + Delete + Endif + Unlock +Endif +Return + + + +*!* *------------------------------------------- + +*!* Function BLOCHEZ_BON +*!* Select nrbon +*!* Flock() +*!* DO case +*!* case nr_bonuri=0 +*!* Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST +*!* m=m+1 +*!* m.NNIR='2'+Str(NR_GEST,1,0)+Str(M.GEST,3,0)+Str(m,5,0) +*!* m.NNIR=Strtran(M.NNIR,' ','0') +*!* case nr_bonuri=1 +*!* Calculate Max(NR) To m +*!* m=m+1 +*!* m.NNIR=Alltrim(Str(m)) +*!* case nr_bonuri=2 +*!* Calculate Max(NR) To m For NRGEST=idutil +*!* m=m+1 +*!* m.NNIR=Alltrim(Str(m)) +*!* Endcase +*!* Append Blank +*!* Gather Fields NNIR Memv +*!* Replace NRGEST With idutil,NR With m +*!* *!* Gather Fields NNIR,gest Memv +*!* *!* Replace NRGEST With m.nr_gest,NR With m +*!* Unlock +*!* Return M.NNIR + +*------------------------------------------- +Function BLOCHEZ_BON +LOCAL G,M +STORE 0 TO G,M +Select nrbon +Flock() + +DO case +case nr_bonuri=0 + Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST + m=m+1 + m.NNIR='2'+Str(NR_GEST,1,0)+Str(M.GEST,3,0)+Str(m,5,0) + m.NNIR=Strtran(M.NNIR,' ','0') + G= m.nr_gest +case nr_bonuri=1 + Calculate Max(NR) To m + m=m+1 + m.NNIR=Alltrim(Str(m)) +case nr_bonuri=2 + Calculate Max(NR) To m For NRGEST=idutil + m=m+1 + m.NNIR=Alltrim(Str(m)) + G= idutil +ENDCASE +SELECT NRBON +Append Blank +Gather Fields NNIR,GEST Memv +*Replace NRGEST With idutil,NR With m +*!* Gather Fields NNIR,gest Memv +*!* Replace NRGEST With m.nr_gest,NR With m +REPLACE NR WITH M,NRGEST WITH G +Unlock +Return M.NNIR + +*---------------------------------- + +Function ELIB_BON +Parameters N +Select nrbon +Seek N +If Found() + If Flock() + Delete + Endif + Unlock +Endif +Return +*______________________________________________________________________________ + +Procedure aleg_doc_plata +Parameters tcfis,tcNume,tlval,tcFelCont + +If Used('actcv') + Use In actcv +Endif + +tcNume=Upper(Alltrim(tcNume)) +tcfis=Alltrim(tcfis) +IF tlval + lccond=[ABS(&tcfis..sumaval-&tcfis..achitatval)>0] +ELSE + IF existacamp('&tcfis','sumaval') + lccond=[&tcfis..sumaval-&tcfis..achitatval=0] + ELSE + lccond='.t.' + ENDIF +ENDIF + + +Sele distinct &tcfis..* ; + FROM &tcfis ; + WHERE Upper(Alltrim(&tcfis..NUME))==Upper(Allt(tcNume)) And ; + !(Abs(&tcfis..totctva-&tcfis..achitat)=0 Or (&tcfis..totctva<&tcfis..achitat And &tcfis..totctva>0)) and ; + &lccond ; + into TABLE &LOC\&NFSCURT\TEMPO\actcv order by &tcfis..dataact + + +*!* SELECT DISTINCT actan.cod,actan.nrord FROM actan,&tcfis WHERE actan.cod=&tcfis..cod AND actan.NRACT=&tcfis..NRACT ; +*!* INTO CURSOR actfis +*!* SELECT &tcfis..*,actfis.nrord ; +*!* FROM (&tcfis left join actfis on &tcfis..cod=actfis.cod) ; +*!* WHERE Upper(Alltrim(&tcfis..NUME))==Upper(Allt(tcNume)) And ; +*!* !(Abs(&tcfis..totctva-&tcfis..achitat)=0 Or (&tcfis..totctva<&tcfis..achitat And &tcfis..totctva>0)) and ; +*!* &lccond ; +*!* into TABLE &LOC\&NFSCURT\TEMPO\actcv order by &tcfis..dataact +*!* USE IN actfis + + +DO CASE + CASE ALLTRIM(UPPER(tcFelCont))='A' + ALTER TABLE actcv rename COLUMN ACONT to ascc + CASE ALLTRIM(UPPER(tcFelCont))='P' + ALTER TABLE actcv rename COLUMN ACONT to ascd +ENDCASE + +Alter Table actcv Add Column ALES L Add Column sumaachi N(14) Add Column SUMAACHI2 N(14,2) Add Column achilei N(14) +IF tlval + Alter Table actcv ADD COLUMN difplus n(14) ADD COLUMN difminus n(14) Add Column cursval n(7) Add Column cursdif n(7) +ENDIF + +Sele actcv +Go Top + +Endproc && aleg_doc_plata + +*______________________________________________________________________________ + +Procedure trezorerie_plati +Parameters tcfis,tcAcont,tcCol + +tcAcont=ALLTRIM(tcAcont) +lcAcont='trez.'+tcAcont +lcCol='trez.'+ALLTRIM(tcCol) + +*!* IF USED('actcv') +*!* Select actcv +*!* Scan For ALES +*!* Scatter Name trez +*!* +*!* IF existacamp('actcv',tcAcont) +*!* Select (tcfis) +*!* IF TYPE('actcv.proc_tva')#'U' +*!* Locate For nract=trez.nract And dataact=trez.dataact And NUME=trez.NUME AND acont=&lcAcont AND proc_tva=trez.proc_tva +*!* ELSE +*!* Locate For nract=trez.nract And dataact=trez.dataact And NUME=trez.NUME AND acont=&lcAcont +*!* ENDIF +*!* ELSE +*!* Select (tcfis) +*!* Locate For nract=trez.nract And dataact=trez.dataact And NUME=trez.NUME +*!* ENDIF +*!* If Flock() +*!* Replace achitat With achitat+trez.sumaachi +*!* IF existacamp('&tcfis','achitatval') +*!* Replace achitatval With achitatval+trez.sumaachi2 +*!* ENDIF +*!* Endif +*!* UNLOCK +*!* Select actcv +*!* ENDSCAN +*!* ELSE && pt modificare sau analitice diferite + + SELECT actactan + Scan For pereche#0 AND &tcAcont=m.acont + Scatter Name trez + IF TYPE(tcfis+'.acont')#'U' + Select (tcfis) + IF TYPE(tcfis+'.proc_tva')#'U' + Locate For nract=trez.pereche And NUME=&lcCol AND acont=&lcAcont AND proc_tva=trez.proc_tva + ELSE + Locate For nract=trez.pereche And NUME=&lcCol AND acont=&lcAcont + ENDIF + ELSE + Select (tcfis) + Locate For nract=trez.pereche And NUME=&lcCol + ENDIF + + IF FOUND() + If Flock() + Replace achitat With achitat+trez.suma + IF TYPE(tcfis+'.achitatval')#'U' + Replace achitatval With achitatval+trez.suma_2 + ENDIF + ENDIF + UNLOCK + ENDIF + + Select actactan + ENDSCAN +*!* ENDIF +Release trez + +IF USED('actcv') + USE IN actcv +ENDIF +Endproc && trezorerie_incasari_plati + +*______________________________________________________________________________ + +Procedure trezorerie_incasari +Parameters tcfis,tcAcont,tcCol + + +tcAcont=ALLTRIM(tcAcont) +lcAcont='trez.'+tcAcont +lcCol='trez.'+ALLTRIM(tcCol) + +SELECT actactan +Scan For pereche2#0 AND &tcAcont=m.acont + Scatter Name trez + IF TYPE(tcfis+'.acont')#'U' + Select (tcfis) + IF TYPE(tcfis+'.proc_tva')#'U' + Locate For nract=trez.pereche2 And NUME=&lcCol AND acont=&lcAcont AND proc_tva=trez.proc_tva + ELSE + Locate For nract=trez.pereche2 And NUME=&lcCol AND acont=&lcAcont + ENDIF + ELSE + Select (tcfis) + Locate For nract=trez.pereche2 And NUME=&lcCol + ENDIF + + IF FOUND() + If Flock() + Replace achitat With achitat+trez.suma + IF TYPE(tcfis+'.achitatval')#'U' + Replace achitatval With achitatval+trez.suma_2 + ENDIF + ENDIF + UNLOCK + ENDIF + + Select actactan +ENDSCAN + +Release trez + +IF USED('actcv') + USE IN actcv +ENDIF +Endproc && trezorerie_incasari +*------------------------------------------------------------------------------ + + + +PROCEDURE test_facturi +Parameters tcfis,tccont,tcNume,tcfel + +tcNume=Upper(Alltrim(tcNume)) +tcfis=Alltrim(tcfis) + + LcCond=upper(allt(ofis.camp_verif))+[=']+tcnume+[' AND ]+tcfel+[=']+Tccont+['] && ofis.camp_verif---> vezi procedura viz_fact + SELE 0 + USE &DATE/ACT.DBF AGAIN ALIAS ACn1 + + SELECT ACN1 + SET FILTER TO &Lccond + + select &tcfis..nume,&tcfis..dataact,&tcfis..nract,&tcfis..dataireg,&tcfis..totctva as suma,; + &tcfis..achitat,&tcfis..achitat as pereche,&tcfis..fdoc,&tcfis..fdoc as scc,&tcfis..fdoc as scd,&tcfis..fdoc as nume_2,&tcfis..fdoc as explicatia; + FROM &tcfis; + WHERE Upper(Alltrim(&tcfis..NUME))==Upper(Allt(tcNume)) ; + into cursor acn2 order by dataireg + +RETURN LcCond +ENDPROC + +*________________________________________________________________________________ + +PROCEDURE imperechere_fact_avans +PARAMETERS tcfis,tcNume,TnSuma,tlval,tcPereche + +PRIVATE PlStrict +STORE .f. to PlStrict + +tcfis=UPPER(ALLTRIM(tcfis)) +tcNume=Upper(Alltrim(tcNume)) +lcPereche='m.'+ALLTRIM(tcPereche) +IF tlval + lccond=[&tcfis..achitatval-&tcfis..factval>0] +ELSE + lccond=[&tcfis..achitatval-&tcfis..factval=0] +ENDIF + +IF USED('actcv1') + USE IN actcv1 +ENDIF + +SELECT * ; + from &tcfis; + where Upper(Alltrim(&tcfis..NUME))==tcNume AND &tcfis..achitat-&tcfis..facturat#0 AND &lccond; + into Table &loc\&nfscurt\tempo\actcv1 order by dataact + ALTER TABLE actcv1 ADD COLUMN ales l ADD COLUMN sumaachi n(14) ADD COLUMN sumaachi2 n(14,2) ; + ADD COLUMN difplus n(14) ADD COLUMN difminus n(14) + +IF _tally=0 + DO mesaj with 'Nu exista avansuri inregistrate','la acest partener !' + DO STERGE + DO inchid_actcv + DO deschid_actc + RETURN +ENDIF + + +IF xsets.id_set=10421 && regularizari clienti creditori + SELECT actcv + REPLACE ALL sumaachi WITH sumaachi/m.ctva FOR neimpozab=0 AND ales + REPLACE ALL neimpozab WITH sumaachi FOR neimpozab#0 AND ales + SUM sumaachi TO tnsuma FOR ales +ENDIF + +*m.suma=tnsuma + +SELECT actcv1 +IF !tlval + oavans=CREATEOBJECT('avansales') + oavans.suma=tnSuma +ELSE + oavans=CREATEOBJECT('avansval') + oavans.suma_2=m.suma_2 +ENDIF + +oavans.pcfis='AVANS' +oavans.show(1) + +IF buton=2 + DO sterge + DO inchid_actcv + DO deschid_actc + RETURN +ENDIF + +SELECT ACTCV1 +LOCATE FOR ALES +SCATTER NAME av + + +IF av.proc_tva=0 + m.proc_tva=m.ctvam +ELSE + m.proc_tva=av.proc_tva +ENDIF + +lnSumaAchi=av.sumaachi +lnSumaAchiVal=av.sumaachi2 + +NRAVANS=NRACT +DATAAVANS=DATAACT +LcNRORD=ALLT(STR(NRAVANS))+' / '+ALLT(DTOC(DATAAVANS)) + +*!* IF USED('actactan') +*!* USE IN actactan +*!* ENDIF +*!* IF USED('actc') +*!* USE IN actc +*!* ENDIF + +*!* USE &LOC\&NFSCURT\TEMPO\ACTc IN 0 again ALIAS ACTACTAN exclusive ORDER TAG nr_nota +*!* SET DELETED ON + +SELECT actactan +PACK + +IF lnSumaAchi0 OR sumaachi2-LnminVal>0 + REPLACE sumaachi WITH LnMin + REPLACE sumaachi2 WITH LnMinVal + ENDIF + LnSumaAchi=LnSumaAchi-LnMin + LnSumaAchiVal=LnSumaAchiVal-LnMinVal + + SELECT actactan + GOTO lni + + SELECT actactan + REPLACE suma WITH LnMinAct + REPLACE suma_2 WITH LnMinVal + REPLACE &tcPereche WITH av.nract +* REPLACE neimpozab WITH lnNeimpozab + + SELECT actactan + IF tlval + IF suma_3>av.cursschimb + SCATTER NAME oaa + APPEND BLANK + GATHER NAME oaa + IF tcfis='AVANS419' + REPLACE scd WITH '665 ',suma WITH (oaa.suma_3-av.cursschimb)*LnMinVal,; + explicatia WITH 'DIFERENTE NEFAVORABILE',suma_2 WITH 0,suma_3 WITH av.cursschimb + ELSE + REPLACE scc WITH '765 ',suma WITH (oaa.suma_3-av.cursschimb)*LnMinVal,; + explicatia WITH 'DIFERENTE FAVORABILE',suma_2 WITH 0,suma_3 WITH av.cursschimb + ENDIF + ENDIF + IF suma_3m.precdeb Or apreccred<>m.preccred Or aruldeb<>m.RULDEB Or arulcred<>m.RULCRED + Select BALANA + Seek m.cont+acontvid + If !Found() + Append Blank + Gather Memv + REPLACE acont WITH acontvid + Endif + Replace precdeb With m.precdeb-aprecdeb + Replace preccred With m.preccred-apreccred + Replace RULDEB With m.RULDEB-aruldeb + Replace RULCRED With m.RULCRED-arulcred + Endif + Select cc +ENDSCAN + +ENDIF +UNLOCK IN balana +SELECT balana +SET FILTER TO +return + + + +*_______________________________________ +Procedure CALCULEAZABALANTA_ANA +Select BALANA +If Flock() + Replace All TOTDEB With RULDEB+precdeb; + totcred With RULCRED+preccred +Endif +Unlock +Scan + If Flock() + If TOTDEB-totcred>0 + Replace SOLDDEB With TOTDEB-totcred; + SOLDCRED With 0 + Else + Replace SOLDCRED With totcred-TOTDEB; + SOLDDEB With 0 + Endif + Endif + Unlock +Endscan +Return +******************************************** + +PROCEDURE introducere_compacta +PARAMETERS tcfis,tcscd,tcscc,tl_calcTVA,tl_plata,tctitlu,tctva,tn_idset + +*!* tcfis=fisierul din calefirma (achi_mat.dbf) +*!* tcscd=simbol cont debitor +*!* tcscc=simbol cont creditor +*!* tl_calctva=daca se calculeaza TVA-ul per total +*!* tl_plata=daca se achita factura respectiva +*!* tctitlu=titlul formularului frm_introd_compact +*!* tctva=contul de TVA (daca tl_calctva=.t.) +*!* tn_idset=parametrul functiei lans() + +IF USED('introdc') + USE IN introdc +ENDIF + +SELECT (tcfis) +COPY STRUCTURE TO &loc\&nfscurt\tempo\introdc WITH CDX +USE &loc\&nfscurt\tempo\introdc IN 0 SHARED + +SELECT introdc +APPEND FROM &CALEFIRMA\DATEAN\&tcfis FOR id_set=tn_idset +SET ORDER TO tag ordine + +SELECT introdc +IF FLOCK() + IF INLIST(tn_idset,10467,10468) && PLATI IMPOZITE + REPLACE ALL nrcrt WITH 0 + ELSE + REPLACE ALL NRCRT WITH ordine + ENDIF + + IF !EMPTY(tcscd) + REPLACE ALL scd WITH tcscd FOR EMPTY(scd) OR UPPER(scd)='X' + ENDIF + + IF !EMPTY(tcscc) + REPLACE ALL scc WITH tcscc FOR EMPTY(scc) OR UPPER(scc)='X' + ENDIF + + IF m.ctva-1=0 + REPLACE ALL bifa WITH .t. + REPLACE ALL ptva WITH 0 + ENDIF +ENDIF +UNLOCK + +SELECT actactan +ZAP + +SELECT introdc +GO TOP +obj=CREATEOBJECT('FRM_INTROD_COMPACT') +obj.gridb1.column3.backcolor=RGB(255,255,255) +obj.gridb1.column4.backcolor=RGB(255,255,255) + +IF !tl_plata + obj.container2.visible=.f. + obj.container2.optiongroup1.value=0 + OBJ.HEIGHT=obj.container2.TOP +ELSE +obj.container2.optiongroup1.value=1 +ENDIF + +IF !tl_calcTVA + obj.container1.visible=.f. + OBJ.HEIGHT=obj.container1.TOP+10 +ENDIF + +obj.titlufrumos1.caption=tctitlu +obj.show(1) + +IF BUTON=2 + DO deschid_actc + RETURN +ENDIF + +*!* IF tn_idset=10455 && rate leasing +*!* lans(10411) +*!* ENDIF + +SELECT actactan +REPLACE ALL id_set WITH tn_idset + +SELECT actactan +SCRIE_IN_FISIERE(' ') + +DO deschid_actc +ENDPROC &&introducere_compacta + +*___________________________________________________ +PROCEDURE deschid_actc + +IF USED('actactan') + USE IN actactan +ENDIF + +IF !USED('ACTc') + DO DES WITH 'ACTc' +ENDIF + +ENDPROC && deschid_actc + +*____________________________________________________ +PROCEDURE inchid_actcv + +IF USED('actcv') + USE IN actcv +ENDIF + +IF USED('ACTcv1') + USE IN 'ACTcv1' +ENDIF + +ENDPROC && inchid_actcv + + +*_____________________________________________________________________________________________________________________ +PROCEDURE viz_facturi +PARAMETERS tcFis1,tcFis2,tnCont,tlCuTest,tlVisible,tcTitlu,TcColDeb,TcColCred + + +SELECT infisiere +LOCATE FOR VAL(cont)=tnCont +SCATTER NAME ofis + +*!* SELECT(tcfis1) +*!* If EXISTACIMP(tcfis1,'TOTDEB') +*!* If Flock() +*!* DO CASE +*!* CASE UPPER(ofis.fel)='A' +*!* Replace All totdeb With precdeb+productie,totcred With preccred+incasat +*!* CASE UPPER(ofis.fel)='P' +*!* Replace All totdeb With precdeb+platit,totcred With preccred+achizit +*!* ENDCASE +*!* Endif +*!* UNLOCK +*!* ENDIF + +SELECT(tcfis1) +If EXISTACIMP(tcfis1,'TOTDEB') + Replace All totdeb With precdeb+&TcColDeb,totcred With preccred+&TcColCred +ENDIF + + +Local C +C="nume+ALLTRIM(STR(YEAR(dataact)))+RIGHT('0'+ALLTRIM(STR(MONTH(dataact))),2)+RIGHT('0'+ALLTRIM(STR(DAY(dataact))),2)" +buton=1 + +IF tlCuTest + SELECT (tcfis2) + Set Filter To + lcProc='inainte_'+ALLTRIM(tcfis2) + Do &lcProc In inaintede.prg + If buton=2 + Return + ENDIF +ENDIF + +If Used('ACTCV') + Use In actcv +ENDIF + +lcCale='&Date\'+ALLTRIM(tcfis2) +Use &lcCale In 0 Again Alias actcv SHARED order dataireg + +Sele actcv +*!* Index On &C Tag nd Of &loc\&nfscurt\tempo\actcv +*!* Index On DATAireg Tag DATAireg Of &loc\&nfscurt\tempo\actcv additive +*!* Set Order To Tag DATAireg + +PRIVATE pcAnalitic +STORE '' TO pcAnalitic + +Oreg=Createobject("AFCUMPVANZanp") +With Oreg + .LABEL10.Caption=PROPER(tcTitlu) + .grid1.column12.Visible=.T. + .cont=tnCont + .fisier=ALLTRIM(tcFis2) + .CHECK2.Visible=tlVisible + .CHECK6.Visible=tlVisible + .CHECK7.Visible=tlVisible + .CHECK9.Visible=tlVisible + *.command1.Visible=tlVisible + *.command3.Visible=tlVisible + .grid1.column2.Visible=tlVisible + .grid1.column11.Visible=tlVisible + .grid1.column13.Visible=tlVisible + .grid1.column14.Visible=tlVisible + .grid1.column7.Visible=tlVisible + .grid1.column8.Visible=tlVisible + .grid1.column10.Visible=tlVisible + IF !tlVisible + .CHECK3.Caption='Regularizate' + .CHECK4.Caption='Neregularizate' + .check10.Caption='Regularizat' + .grid1.column12.header1.Caption='Regularizat' + .grid1.column2.Width=0 + ENDIF +Endwith +*OREG.cmdlist1.VISIBLE=.f. +Oreg.Show(1) +IF USED('actcv') + Use In actcv +ENDIF +RELEASE ofis +RELEASE oreg + +*?????? Do totv + +ENDPROC && viz_facturi + + + +*-------------------------------------- +Function STERGE_DIN_FISIERE +Parameters PlConfirmare,pnCod +Local M.DEB,M.CRED,COND +Store 0 To M.DEB, M.CRED + +CREATE TABLE &loc\&nfscurt\tempo\conturi.dbf FREE (cont c(4),ana c(4),deb n(14),cred n(14),debval n(14.2),credval n(14.2)) + +SELECT conturi +APPEND BLANK +APPEND BLANK + +DD=Datetime() + +IF PlConfirmare + IF USED('actactan') + USE IN actactan + ENDIF + + SELECT * from actjur WHERE cod=pnCod INTO CURSOR actactan + overif=CREATEOBJECT('verificare') + overif.show(1) + IF buton=2 + USE IN conturi + Release Overif + RETURN + ENDIF +ENDIF + + + +&& sterg efectele neimpozab,TVA si baza din cump si vanz pt toate inregistrarile din nota +&& in loc sa fac o procedura sterg_4426 si sterg_4427 +DO sterg_TVA WITH "actactan" + + +Select ACTJUR +SET FILTER TO +SCAN FOR cod=pnCod +SCATTER NAME osterg + + Replace UTILS With UTILIZATOR, DATAORAS With DD + DELETE + + Select ACTAN + SET DELETED ON + If Flock() + LOCATE FOR cod=osterg.cod AND scd=osterg.scd AND scc=osterg.scc AND suma=osterg.suma + IF FOUND() + DELETE + ENDIF + Endif + UNLOCK + + SELECT conturi + GOTO 1 + REPLACE cont WITH osterg.scd,ana WITH osterg.ascd,deb WITH -osterg.suma,debval WITH -osterg.suma_2 + GOTO 2 + REPLACE cont WITH osterg.scc,ana WITH osterg.ascc,cred WITH -osterg.suma,credval WITH -osterg.suma_2 + + && sterge din balanta si balanta analitica + + Select conturi + SCAN + Scatter Memv + Select BAL + If Flock() + Seek ALLTRIM(M.CONT) + If !Found() + Do MESAJ With 'Contul '+M.CONT+' nu se regaseste in balanta!','' + ELSE + Select BAL + Replace RULDEB With RULDEB+M.DEB, TOTDEB With TOTDEB+M.DEB,; + RULCRED With RULCRED+M.CRED, TOTCRED With TOTCRED+M.CRED + SOLD=TOTDEB-TOTCRED + Replace SOLDDEB With Iif(SOLD>0,SOLD,0), SOLDCRED With Iif(SOLD<0,-SOLD,0) + Endif + Endif + UNLOCK + + SELECT balana + IF FLOCK() + IF !EMPTY(m.ana) + Seek m.cont+m.ana + IF FOUND() + Replace RULDEB With RULDEB+M.deb, TOTDEB With TOTDEB+M.deb, ; + RULcred With RULcred+M.cred, TOTcred With TOTcred+M.cred + SOLD=TOTDEB-TOTCRED + Replace SOLDDEB With Iif(SOLD>0,SOLD,0),SOLDcred With Iif(SOLD<0,-SOLD,0) + ENDIF + ENDIF + ENDIF + UNLOCK + Select conturi + ENDSCAN + + Select Distinct A.Cont,b.ana as acont,A.FPROC,B.DEB,B.CRED,B.DEBVAL,B.CREDVAL From INFISIERE A, conturi B ; + WHERE A.Cont=B.Cont ; + INTO Cursor COM + + Select COM + SCAN + Scatter Memv + zz='Do '+'sterg'+Alltrim(FPROC)+' with m.deb,m.cred,M.DEBVAL,M.CREDVAL' + &zz + SELECT com + ENDSCAN +Select ACTJUR +ENDSCAN + + +&&in gestiuni ???? +sele RUL +set filter to +if flock() + DELETE for cod=osterg.cod +endif +unlock in rul + +sele RULL +set filter to +if flock() + SCAN FOR cod=osterg.cod + IF PlConfirmare + scat memv + sele stoc + if flock() + loca for allt(denumire)=allt(m.denumire) and allt(codmat)=allt(m.codmat) and pret=m.pret and gest=m.gest and scd=m.scd + if found() + if m.cant#0 + repl cant with cant-m.cant + else + repl cante with cante-m.cante + endif + endif + ENDIF + UNLOCK + ENDIF + sele rull + delete + endscan +endif + +unlock in rull + +USE IN conturi +Do STERGE +Release Osterg +Return 0 + + + + + +*----------------------------------------------- +Procedure sterg_401 +Parameters debit,credit,VALDEBIT,VALCREDIT +&&&&&&&&&&& FURNIZOR + +Select FURNIZOR +If Flock() + + Seek Alltrim(osterg.NUME) + + Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit + Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit +Endif +Unlock + +Local di,din,div +IF Left(osterg.SCC,3)='767' And osterg.SCD=m.CONT AND osterg.ascd=m.acont &&discount + di=osterg.suma + din=osterg.neimpozab + div=osterg.SUMA_2 +ELSE + STORE 0 TO di,din,div +ENDIF + +&&&&&&&&&&& CUMPLUN +Select cumplun +IF credit#0 OR di#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+credit+di + Replace SUMAVAL With SUMAVAL+VALcredit+div + Replace achitat With achitat+debit+di + Replace achitatVAL With achitatVAL+VALdebit+div + + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF + Endif + UNLOCK +ENDIF + +&&&&&&&&&&&CUMP + +*!* If credit!=0 OR di#0 + +*!* m.neimpozab=-osterg.neimpozab+din +*!* m.totctva=credit+di + +*!* IF Left(osterg.scd,3)='442' +*!* m.tvam=credit +*!* ELSE +*!* m.tvam=0 +*!* ENDIF +*!* +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* + +*!* Select cump +*!* If Flock() +*!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME +*!* IF FOUND() +*!* IF FLOCK() +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* ENDIF +*!* +*!* SELECT cump +*!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 +*!* DELETE +*!* ENDIF +*!* ENDIF +*!* Unlock +*!* Endif +Return + + +*----------------------------------------------- +Procedure sterg_404 +Parameters debit,credit,VALDEBIT,VALCREDIT +&&&&&&&&&&& FURNIZOR + +Select FURNIZ404 +If Flock() + + Seek Alltrim(osterg.NUME) + Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit + Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit +Endif +Unlock + +Local di,din,div +IF Left(osterg.SCC,3)='767' And osterg.SCD=m.CONT AND osterg.ascd=m.acont &&discount + di=osterg.suma + din=osterg.neimpozab + div=osterg.SUMA_2 +ELSE + STORE 0 TO di,din,div +ENDIF + +Select cumplun404 +IF credit#0 OR di#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+credit+di + Replace SUMAVAL With SUMAVAL+VALcredit+div + Replace achitat With achitat+debit+di + Replace achitatVAL With achitatVAL+VALdebit+div + + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF + Endif + UNLOCK +ENDIF + +&&&&&&&&&&&CUMP + +*!* If (credit!=0 OR di#0) AND osterg.neimpozab#0 + +*!* m.neimpozab=-osterg.neimpozab+din +*!* m.totctva=credit+di + +*!* IF Left(osterg.scd,3)='442' +*!* m.tvam=credit +*!* ELSE +*!* m.tvam=0 +*!* ENDIF +*!* +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* + +*!* Select cump +*!* If Flock() +*!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME +*!* IF FOUND() +*!* IF FLOCK() +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* ENDIF +*!* +*!* SELECT cump +*!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 +*!* DELETE +*!* ENDIF +*!* ENDIF +*!* Unlock +*!* Endif +Return + +*---------------------------------------------- + +Procedure sterg_408 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select ana408 +If Flock() + Seek Alltrim(osterg.NUME) + Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit + Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit +Endif +Unlock + + +Select fact408 +IF credit#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva +ELSE + Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva +ENDIF +If Found() + If Flock() + Replace totctva With totctva+credit + Replace SUMAVAL With SUMAVAL+VALcredit + Replace achitat With achitat+debit + Replace achitatVAL With achitatVAL+VALdebit + + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF + Endif + UNLOCK +ENDIF + +*!* IF debit#0 && pt regularizari 408-401,4426-4428 +*!* LOCAL lnSUma +*!* lnSuma=0 +*!* SELECT cump +*!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME +*!* IF FOUND() +*!* lnSuma=ROUND(debit*(m.ctva-1)/m.ctva,0) +*!* REPLACE tvam WITH tvam+lnSuma +*!* REPLACE totftvam WITH totftvam-lnSuma +*!* ENDIF +*!* SELECT cump +*!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 +*!* DELETE +*!* ENDIF +*!* ENDIF +RETURN + +*----------------------------------------------- +PROCEDURE sterg_4426 +Parameters debit,credit,VALDEBIT,VALCREDIT +*** vezi sterg_TVA +RETURN + + +*----------------------------------------------- +PROCEDURE sterg_4427 +Parameters debit,credit,VALDEBIT,VALCREDIT +*** vezi sterg_TVA +RETURN + +*----------------------------------------------- +Procedure sterg_409 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select AVANS409 +If debit#0 + If Flock() + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME + If Found() + Replace achitat With achitat+debit &&, facturat With facturat+credit + Replace achitatVAL With achitatVAL+VALdebit + Endif + Endif + Unlock +Endif +If credit#0 +*!* lcDat=Right(Allt(osterg.NRORD),10) +*!* ldDAT=Ctod(lcDat) +*!* lcNr=Strtran(Strtran(osterg.NRORD,lcDat,''),'/','') +*!* lnNr=Val(lcNr) + + Select AVANS409 + Locate For nract=osterg.pereche2 And NUME=osterg.NUME + IF FOUND() + If Flock() + Replace facturat With facturat+credit + Replace factVAL With factVAL+valcredit + Endif + UNLOCK + ENDIF +ENDIF + +SELECT avans409 +IF achitat=0 AND facturat=0 AND achitatval=0 AND factval=0 + DELETE +ENDIF +Select FURNIZOR +If Flock() + Seek Alltrim(osterg.NUME) + If Found() + Replace avans With avans+debit-credit + Replace avansVAL With avansVAL+VALdebit-VALcredit + Endif +Endif +UNLOCK + +Return +*------------------------------------------------------------- +Procedure sterg_419 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select AVANS419 +If credit#0 + If Flock() + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME + If Found() + Replace achitat With achitat+credit &&, facturat With facturat+credit + Replace achitatVAL With achitatVAL+VALcredit + Endif + Endif + Unlock +ENDIF + +If debit#0 +*!* lcDat=Right(Allt(osterg.NRORD),10) +*!* ldDAT=Ctod(lcDat) +*!* lcNr=Strtran(Strtran(osterg.NRORD,lcDat,''),'/','') +*!* lnNr=Val(lcNr) + Select AVANS419 + Locate For nract=osterg.pereche And NUME=osterg.NUME + IF FOUND() + If Flock() + Replace facturat With facturat+debit + Replace factVAL With factVAL+valdebit + Endif + UNLOCK + ENDIF +Endif +SELECT avans419 + +IF achitat=0 AND facturat=0 AND achitatval=0 AND factval=0 + DELETE +ENDIF + +Select clienti +If Flock() + Seek Alltrim(osterg.NUME) + If Found() + Replace avans With avans-debit+credit + Replace avansVAL With avansVAL-VALdebit+VALcredit + Endif +Endif +UNLOCK + +*--------------------------------------------------------------------- + +Procedure sterg_462 +Parameters tndebit,tncredit,tnVALDEBIT,tnVALCREDIT +&&&&&&&&&&& CREDITORI + +Select CREDITOR +If Flock() + Seek Alltrim(osterg.NUME) + Replace debit With debit +TnDebit, credit With Credit+TnCredit + Replace VALdebit With VALdebit +tnVALdebit, VALcredit With VALcredit+tnVALcredit +Endif +Unlock + +Local di,din,div +IF Left(osterg.SCC,3)='767' And osterg.SCD=m.CONT AND ascd=m.acont &&discount + di=osterg.suma + din=osterg.neimpozab + div=osterg.SUMA_2 +ELSE + STORE 0 TO di,din,div +ENDIF + +&&&&&&&&&&& CREDLUN + +Select credlun +IF TNcredit#0 OR di#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+TNcredit+di + Replace SUMAVAL With SUMAVAL+TnVALcredit+div + Replace achitat With achitat+TNdebit+di + Replace achitatVAL With achitatVAL+TnVALdebit+div + Endif + UNLOCK + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF +ENDIF + +*---------------------------------------------- + +Procedure sterg_411 +Parameters debit,credit,VALDEBIT,VALCREDIT +&&&&&&&&&&& CLIENTI + +Select clienti +If Flock() + Seek Alltrim(osterg.NUME) + Replace productie With productie +debit, incasat With incasat+credit + Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit +Endif +Unlock + +Local di,din,div,reg +STORE 0 TO di,din,div,reg + +DO CASE + CASE Left(osterg.SCd,3)='667' And osterg.SCc=m.CONT AND osterg.ascc=m.acont &&discount + di=osterg.suma + din=osterg.neimpozab + div=osterg.SUMA_2 + CASE osterg.id_set=10421 AND osterg.scc='4427' &®ularizare facturi-avans + reg=osterg.suma +ENDCASE + +&&&&&&&&&&& VANZLUN + +Select vanzlun +IF (debit#0 OR di#0) AND osterg.id_set#10421 &&discount + regularizare avans-factura + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+debit+di+reg + Replace SUMAVAL With SUMAVAL+VALdebit+div + Replace achitat With achitat+credit+di+reg + Replace achitatVAL With achitatVAL+VALcredit+div + Endif + UNLOCK + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF +ENDIF + + +&&&&&&&&&&&VANZ + +*!* If debit!=0 OR di#0 + +*!* m.neimpozab=-osterg.neimpozab+din +*!* m.totctva=debit+di + +*!* IF Left(osterg.scc,3)='442' +*!* m.tvam=debit +*!* ELSE +*!* m.tvam=0 +*!* ENDIF +*!* +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* +*!* Select vanz +*!* If Flock() +*!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME +*!* IF FOUND() +*!* IF FLOCK() +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* ENDIF +*!* +*!* SELECT vanz +*!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 +*!* DELETE +*!* ENDIF +*!* ENDIF +*!* Unlock +*!* Endif +RETURN + +*---------------------------------------------- + +Procedure sterg_461 +Parameters tndebit,tncredit,tnVALDEBIT,tnVALCREDIT +&&&&&&&&&&& DEBITORI + +Select debitor +If Flock() + Seek Alltrim(osterg.NUME) + Replace debit With debit +TnDebit, credit With Credit+TnCredit + Replace VALdebit With VALdebit +tnVALdebit, VALcredit With VALcredit+tnVALcredit +Endif +Unlock + +Local di,din,div +IF Left(osterg.SCd,3)='667' And osterg.SCc=m.CONT AND osterg.ascc=m.ascc &&discount + di=osterg.suma + din=osterg.neimpozab + div=osterg.SUMA_2 +ELSE + STORE 0 TO di,din,div +ENDIF + +&&&&&&&&&&& DEBLUN + +SELECT deblun +IF tnDebit#0 OR di#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+tndebit+di + Replace SUMAVAL With SUMAVAL+tnVALdebit+div + Replace achitat With achitat+tncredit+di + Replace achitatVAL With achitatVAL+tnVALcredit+div + Endif + UNLOCK + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF +ENDIF + +&&&&&&&&&&&VANZ + +*!* If tnDebit!=0 OR di#0 + +*!* m.neimpozab=-osterg.neimpozab+din +*!* m.totctva=tnDebit+di + +*!* IF Left(osterg.scc,3)='442' +*!* m.tvam=tnCredit +*!* ELSE +*!* m.tvam=0 +*!* ENDIF +*!* +*!* m.totftvam=m.totctva-m.neimpozab-m.tvam +*!* + +*!* Select vanz +*!* If Flock() +*!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME +*!* IF FOUND() +*!* IF FLOCK() +*!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; +*!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab +*!* ENDIF +*!* ENDIF +*!* +*!* SELECT vanz +*!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 +*!* DELETE +*!* ENDIF +*!* ENDIF +*!* Unlock +*!* Endif +Return + +*--------------------------------------------------------------------------- + +Procedure sterg_4118 +Parameters debit,credit,VALDEBIT,VALCREDIT + +&&&&&&&&&&& CLIENT4118 +Select client4118 +If Flock() + Seek Alltrim(osterg.NUME) + Replace productie With productie +debit, incasat With incasat+credit + Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit +Endif +Unlock + +Local di,din,div +IF Left(osterg.SCd,3)='667' And osterg.SCc=m.CONT AND osterg.ascc=m.acont &&discount + di=osterg.suma + din=osterg.neimpozab + div=osterg.SUMA_2 +ELSE + STORE 0 TO di,din,div +ENDIF + + +&&&&&&&&&&& VANZLU4118 +Select vanzlu4118 +IF debit#0 OR di#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+debit+di + Replace SUMAVAL With SUMAVAL+VALdebit+div + Replace achitat With achitat+credit+di + Replace achitatVAL With achitatVAL+VALcredit+div + Endif + UNLOCK + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF +ENDIF + +RETURN + +*--------------------------------------------------------------------------- + +Procedure sterg_418 +Parameters debit,credit,VALDEBIT,VALCREDIT + +&&&&&&&&&&& ANA418 +Select ana418 +If Flock() + Seek Alltrim(osterg.NUME) + Replace productie With productie +debit, incasat With incasat+credit + Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit +Endif +UNLOCK + + +&&&&&&&&&&& FACT418 +Select Fact418 +IF debit#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva +ELSE + LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva +ENDIF +If Found() + If Flock() + Replace totctva With totctva+debit + Replace SUMAVAL With SUMAVAL+VALdebit + Replace achitat With achitat+credit + Replace achitatVAL With achitatVAL+VALcredit + + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF + ENDIF + UNLOCK +ENDIF + +*----------------------------------------------------------------------------------- + +Procedure sterg_471 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select chavans +Set Order To nract + +Select chavans +IF debit#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont +ENDIF + +If Found() + If Flock() + Replace totctva With totctva+debit + * Replace SUMAVAL With SUMAVAL+VALdebit + Replace achitat With achitat+credit + * Replace achitatVAL With achitatVAL+VALcredit + Endif + UNLOCK + IF totctva=0 AND achitat=0 + DELETE + ENDIF +ENDIF + +Select chavans +Set Order To Tag dataireg +ENDPROC + +*---------------------------------------------------------------------------------- + +Procedure sterg_472 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select vnavans +Set Order To nract + +Select vnavans +IF credit#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont +ELSE + LOCATE FOR nract=osterg.pereche AND NUME=osterg.NUME AND acont=m.acont +ENDIF + +If Found() + If Flock() + Replace totctva With totctva+credit + * Replace SUMAVAL With SUMAVAL+VALcredit + Replace achitat With achitat+debit + * Replace achitatVAL With achitatVAL+VALdebit + Endif + UNLOCK + IF totctva=0 AND achitat=0 + DELETE + ENDIF +ENDIF + +Select vnavans +Set Order To Tag dataireg +ENDPROC + +*---------------------------------------------------------------------------------- + + +Procedure sterg_455 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Select actionar +If Flock() + Seek Upper(Alltrim(osterg.nume_2)) + If Found() + Replace dat With dat+debit, luat With luat+credit + Endif +Endif +UNLOCK + +ENDPROC + +*-------------------------------------------------------- + +Procedure sterg_5311 +Parameters debit,credit,VALDEBIT,VALCREDIT + +SELECT casa +LOCATE FOR cod=osterg.cod +IF FOUND() + DELETE +ENDIF + +Select casanume +Locate For ALLTRIM(casa)=osterg.nume_3 +If Flock() + If Found() + Replace incasari With incasari+debit + Replace plati With plati+credit + Endif +Endif +Unlock + +Return + +*----------------------------------------------- +Procedure sterg_5314 +Parameters debit,credit,VALDEBIT,VALCREDIT + +STORE 0 TO m.plati,m.incasari,m.platival,m.incasval + +SELECT casaval +LOCATE FOR cod=osterg.cod +IF FOUND() + DELETE +ENDIF + +Select casvnume +Locate For ALLTRIM(nume_5)=osterg.nume_5 +If Flock() + If Found() + Replace incasari With incasari+debit + Replace incasVAL With incasVAL+VALdebit + Replace plati With plati+credit + Replace platiVAL With platiVAL+VALcredit + Endif +Endif +Unlock + +Return + +*----------------------------------------------- +Procedure sterg_5121 +Parameters debit,credit,VALDEBIT,VALCREDIT + +SELECT banca +LOCATE FOR cod=osterg.cod +IF FOUND() + DELETE +ENDIF + +Select bannume +Locate For ALLTRIM(nume_2)=osterg.nume_2 +If Flock() + If Found() + Replace incasari With incasari+debit + Replace plati With plati+credit + Endif +Endif +Unlock + +Return + +*----------------------------------------------- +Procedure sterg_5124 +Parameters debit,credit,VALDEBIT,VALCREDIT + +SELECT bancaval +LOCATE FOR cod=osterg.cod +IF FOUND() + DELETE +ENDIF + +Select banvnume +Locate For ALLTRIM(nume_3)=osterg.nume_3 +If Flock() + If Found() + Replace incasari With incasari+debit + Replace incasVAL With incasVAL+VALdebit + Replace plati With plati+credit + Replace platiVAL With platiVAL+VALcredit + Endif +Endif +Unlock + +*-------------------------------------------------------- +Procedure sterg_5112 +Parameters debit,credit,VALDEBIT,VALCREDIT + +Sele cec +If Flock() + LOCATE FOR cod=osterg.cod + IF FOUND() + DELETE + ENDIF +Endif +UNLOCK + +Select cecnume +If Flock() + LOCATE FOR UPPER(ALLTRIM(cec))=Upper(Alltrim(osterg.explicatia)) + If Found() + Replace incarcat With incarcat+debit,plati With plati+credit + Endif +Endif +UNLOCK + +ENDPROC + +*-------------------------------------------------------- + +Procedure sterg_542 +Parameters tndebit,tncredit,tnVALDEBIT,tnVALCREDIT +&&&&&&&&&&& DEBITORI + +Select achit542 +If Flock() + Seek Alltrim(osterg.NUME_2) + Replace debit With debit +TnDebit, credit With Credit+TnCredit + Replace VALdebit With VALdebit +tnVALdebit, VALcredit With VALcredit+tnVALcredit +Endif +Unlock + +&&&&&&&&&&& achiLUN + +SELECT achilun +IF tnDebit#0 + Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME_2 AND acont=m.acont +ELSE + LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME_2 AND acont=m.acont +ENDIF +If Found() + If Flock() + Replace totctva With totctva+tndebit + Replace SUMAVAL With SUMAVAL+tnVALdebit + Replace achitat With achitat+tncredit + Replace achitatVAL With achitatVAL+tnVALcredit + Endif + UNLOCK + IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 + DELETE + ENDIF +ENDIF + +*!* Parameters debit,credit,VALDEBIT,VALCREDIT +*!* &&&&&&&&&&& achit542 +*!* Select achit542 +*!* If Flock() +*!* Seek Upper(Alltrim(osterg.nume_2)) +*!* If Found() +*!* Replace dat With dat+credit, luat With luat+debit +*!* Endif +*!* Endif +*!* Unlock + +ENDPROC + +*----------------------------------------------------------------------- +*** INCEPUT PROCEDURA INTRODUC_TVA +PROCEDURE caut_neimpozab +PARAMETERS tcAlias + + +LOCAL lcAlias, lcTVAD,lcTVAC,llvanz,llcump + +lcAlias = ALLTRIM(tcAlias) +lcTVAD = "4426" +lcTVAC = "4427" + +SELECT infisiere +LOCATE FOR cont=lcTVAD +lclstcDD=coresp_d && lista corespondentelor 4426 pe debit +lclstcDC=coresp_c && lista corespondentelor 4426 pe credit +LOCATE FOR cont=lcTVAC +lclstcCD=coresp_d && lista corespondentelor 4427 pe debit +lclstcCC=coresp_c && lista corespondentelor 4427 pe credit + +STORE .F. to llvanz, llcump + +IF !USED(lcAlias) + RETURN +ENDIF + +*** caut daca exista inregistrari care afecteaza tva-ul +SELECT (lcAlias) +LOCATE FOR neimpozab!=0 +IF !FOUND() + RETURN +ENDIF + +SELECT (lcAlias) +LOCATE FOR neimpozab != 0 +IF FOUND() + IF INLIST(ALLTRIM(scd),&lclstcCC) OR INLIST(ALLTRIM(scc),&lclstcCD) + llvanz = .T. + ENDIF + IF INLIST(ALLTRIM(scd),&lclstcDC) OR INLIST(ALLTRIM(scc),&lclstcDD) + llcump = .T. + ENDIF +ENDIF + + +IF llcump + DO _4426 WITH 0,0,0,0 +ENDIF + +IF llvanz + DO _4427 WITH 0,0,0,0 +ENDIF + +RETURN +*----------------------------------------------------------------------- +*** INCEPUT PROCEDURA STERG_TVA +PROCEDURE sterg_TVA +PARAMETERS tcAlias + + +LOCAL lcAlias, lcTVAD,lcTVAC,llvanz,llcump + +lcAlias = ALLTRIM(tcAlias) +lcTVAD = "4426" +lcTVAC = "4427" + + +lclstcCD = [411;4111;4112;4113;4114;4115;4116;4117;4118;4119;4428] && lista corespondentelor 4427 pe debit +lclstcCC = [411;4111;4112;4113;4114;4115;4116;4117;4118;4119;461;5121;5124;5311;5314;428;635] && lista corespondentelor 4427 pe credit +lclstcDD = [401;404;5121;5124;542] && lista corespondentelor 4426 pe debit +lclstcDC = [4427;4424;635] && lista corespondentelor 4426 pe credit + +STORE .F. to llvanz, llcump + +IF !USED(lcAlias) + RETURN +ENDIF + +*** caut daca exista inregistrari care afecteaza tva-ul +SELECT (lcAlias) +LOCATE FOR neimpozab!=0 OR INLIST(scd,lcTVAD,lcTVAC) OR INLIST(scc,lcTVAD,lcTVAC) +IF !FOUND() + RETURN +ENDIF + +SELECT (lcAlias) +GO top +SCATTER NAME losterg + + +*** verific daca trebuie sa sterg din vanz sau din cump +SELECT (lcAlias) +LOCATE FOR INLIST(lcTVAD,scd,scc) +IF FOUND() + llcump = .T. +ELSE + LOCATE FOR INLIST(lcTVAC,scd,scc) + IF FOUND() + llvanz = .T. + ENDIF +ENDIF + +IF !(llcump OR llvanz) && daca nu am gasit inreg cu TVA caut neimpozab + SELECT (lcAlias) + LOCATE FOR neimpozab != 0 + IF FOUND() + IF ALLTRIM(scd)$lclstcCD OR ALLTRIM(scc)$lclstcCD OR ALLTRIM(scc)$lclstcCC OR ALLTRIM(scd)$lclstcCC + llvanz = .T. + ENDIF + IF ALLTRIM(scc)$lclstcDC OR ALLTRIM(scd)$lclstcDC OR ALLTRIM(scd)$lclstcDD OR ALLTRIM(scc)$lclstcDD + llcump = .T. + ENDIF + ENDIF +ENDIF + +IF llvanz + SELECT vanz + LOCATE FOR cod=losterg.cod AND nract=losterg.nract + IF FOUND() + IF FLOCK() + DELETE + UNLOCK + ENDIF + ENDIF +ENDIF + +IF llcump + SELECT cump + LOCATE FOR cod=losterg.cod AND nract=losterg.nract + IF FOUND() + IF FLOCK() + DELETE + UNLOCK + ENDIF + ENDIF +ENDIF + +ENDPROC && sterg_TVA +*----------------------------------------------- + +PROCEDURE regularizare_clienti + +&&&&&&&&&vanzlun +SELECT actactan +SCAN FOR INLIST(m.acont,ascc,ascd) + SCATTER NAME oreg + SELECT vanzlun + IF FLOCK() + DO CASE + CASE LEFT(OREG.scc,3)='411' + LOCATE FOR nract=oreg.pereche2 AND NUME=oreg.NUME AND acont=oreg.ascc + IF FOUND() + REPLACE achitat WITH achitat+oreg.suma + ENDIF + CASE LEFT(OREG.scd,3)='411' + LOCATE FOR nract=oreg.pereche2 AND NUME=oreg.NUME AND acont=oreg.ascd + IF FOUND() + REPLACE achitat WITH achitat-oreg.suma + ENDIF + ENDCASE + ENDIF + UNLOCK + + SELECT actactan +ENDSCAN +RELEASE oreg + +ENDPROC +*---------------------------------------------------------------------------------------------- + +PROCEDURE afis_sold_casabanca +PARAMETERS tcTip,tcFis,tcTitlu,TcCont,TcNumeCol1,TcNumeCol2,tlVisibil + +Private m.sum1,m.sum2,m.sum3,m.sumA2,m.sumA3,m.sumA4,m.sumA5,m.sumA6,m.sumA7,m.sumA8,m.sumA9,m.sumA10,m.sumA11,m.sumA12,m.sumA13,pcnumele,M.NUMEVAL,; + m.tincasari,m.tplati,sold +STORE 0 TO m.sum1,m.sum2,m.sum3,m.sumA2,m.sumA3,m.sumA4,m.sumA5,m.sumA6,m.sumA7,m.sumA8,m.sumA9,m.sumA10,m.sumA11,m.sumA12,m.sumA13,; + m.tincasari,m.tplati,sold +STORE '' TO pcnumele,M.NUMEVAL +Sele &tcFis + +m.SOLDDEB=0 +m.SOLDCRED=0 +Sum &TcNumeCol2,PLATI To m.sum1,M.sum2 +m.sum3=M.sum1-M.sum2 + +Sele Bal +Seek TcCont +If Found() + Scatter Memvar + If M.SOLDDEB-M.SOLDCRED # M.sum3 + Do mesajval With 'Diferenta este:',M.SOLDDEB-M.SOLDCRED-M.sum3 + Endif +*!* Else +*!* Do mesajval With '',M.SOLDDEB +Endif + +Sele &tcFis + +Obancana=Createobject("afbancanav") +WITH Obancana + .tip=tcTip + .grid1.column1.ControlSource=TcNumeCol1 + .grid1.column3.ControlSource=TcNumeCol2 + .grid1.column3.DynamicForeColor='IIF('+TcNumeCol2+'>=0, RGB(0,0,0), RGB(255,0,0))' + .grid1.column9.ControlSource=TcNumeCol2+'-PLATI' + .grid1.column9.DynamicForeColor='IIF('+TcNumeCol2+'-plati>=0, RGB(0,0,0), RGB(255,0,0))' + .grid1.column3.header3.caption=PROPER(TcNumeCol2) + .TitluFrumos1.Caption=TcTitlu + .check1.visible=TlVisibil + .check3.visible=TlVisibil + .check5.visible=TlVisibil + .check7.visible=TlVisibil + .TEXT14.VISIBLE=TlVisibil + .TEXT15.VISIBLE=TlVisibil + .TEXT16.VISIBLE=TlVisibil + .LABEL2.VISIBLE=TlVisibil + .GRID1.column5.visible=TlVisibil + .GRID1.column6.visible=TlVisibil + .GRID1.column7.visible=TlVisibil + .GRID1.column8.visible=TlVisibil +ENDWITH +Obancana.Show() + +ENDPROC + +*-------------------------------------------------------------------- +procedure umple_log +PARAMETERS textul,textmare +LOCAL datatext +datatext="" +*----------------FACE INREGISTRARI IN LOG_TEXT. +datatext=calefirma+"\logs\contab\log_"+ALLTRIM(STR(DAY(DATE())))+"_"+ALLTRIM(STR(MONTH(DATE())))+"_"+ALLTRIM(STR(YEAR(DATE())))+".txt" +CD &CALEFIRMA +If !Directory("LOGS") + md logs +ENDIF +CD &calefirma\logs +If !Directory("contab") + Md contab +ENDIF +Set Textmerge On +Set Textmerge Noshow +Set Textmerge To &datatext ADDITIVE +\\<>,<>,<>,<> +\ +Set Textmerge To +CD &dirgen + +RETURN &&-------umple_log + + diff --git a/Programe/proceduri.prg b/Programe/proceduri.prg new file mode 100644 index 0000000..976fc8b --- /dev/null +++ b/Programe/proceduri.prg @@ -0,0 +1,935 @@ +*----------------------------------------------- +Function existacamp + Param numef,numec + Sele &numef + For i=1 To Fcount() + If Upper(Allt(Field(i)))=Upper(Allt(numec)) + Return .T. + Endif + Next + Return .F. + *----------------------------------------------- +Function existacimp + Param numef,numec + Sele &numef + For i=1 To Fcount() + If Upper(Allt(Field(i)))=Upper(Allt(numec)) + Return .T. + Endif + Next + Return .F. + ***----------------------------------------------------------------------------------------------------------------- +Procedure CAUT_ALF + Parameters NUMEBAZA,NUMECIMP,CAPTEXT,VARMEM + Local MC0,MC1,MC2 + Set Safety Off + MC0='SELE '+NUMEBAZA + MC1='VARMEM=M.'+NUMECIMP + MC2='SET order TO TAG '+NUMECIMP + + &MC0 + Go Top + If Eof() + Appe Blank + Endif + &MC2 + OCA=Createobject("CAUTALF") + OCA.Caption=CAPTEXT + OCA.GRID1.RecordSource=NUMEBAZA + OCA.GRID1.COLUMN1.ControlSource=NUMECIMP + OCA.Show(1) + + Scatter Memvar + &MC1 + + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure CAUT_ALFa + Parameters NUMEBAZA,NUMECIMP,CAPTEXT,VARMEM + Local MC0,MC1,MC2 + Set Safety Off + MC0='SELE '+NUMEBAZA + MC1='VARMEM=M.'+NUMECIMP + MC2='SET order TO TAG '+NUMECIMP + + &MC0 + + Go Top + If Eof() + Appe Blank + Endif + + &MC2 + OCA=Createobject("CAUTALFa") + OCA.Caption=CAPTEXT + OCA.GRID1.RecordSource=NUMEBAZA + OCA.GRID1.COLUMN1.ControlSource=NUMECIMP + OCA.cmdrenunt1.Visible=.T. + OCA.Show(1) + + Scatter Memvar + &MC1 + + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure mesaj + Parameters m1,m2 + ot=Create('text') + ot.label2.Caption=m1 + ot.label3.Caption=m2 + ot.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure mesajval + Parameters m1,m2 + ot=Create('textval') + ot.label2.Caption=m1 + ot.valoare=m2 + ot.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure mesajatent + Parameters m1,m2 + ot=Create('atentie') + ot.label2.Caption=m1 + ot.label3.Caption=m2 + ot.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure mesajrosu + Parameters m1,m2 + ot=Create('atentierosu') + ot.label2.Caption=m1 + ot.label3.Caption=m2 + ot.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure alfabeta + Parameters clasa,e5,b5,C5,e6,b6,C6,e7,b7,c7,expl + m.explicatia=expl + clasaact='actverif' + oc=Create(clasa) + With oc + .eti5=e5 + .eti6=e6 + .eti7=e7 + .baza5=b5 + .baza6=b6 + .baza7=b7 + .cimp5=C5 + .cimp6=C6 + .cimp7=c7 + .num=C5 + .num2=C6 + .expl=c7 + Endwith + If expl='do curs.spr' + oc.expl=expl + Endif + If txt2=.F. + m.FDOC="FACTURA" + oc.text2.Enabled=.F. + * oc.text2.controlsource="FACTURA" + Endif + oc.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure alfabetaper + Parameters clasa,e5,b5,C5,e6,b6,C6,e7,b7,c7,expl,cumpvanz + m.explicatia=expl + clasaact='actverif' + oc=Create(clasa) + With oc + .eti5=e5 + .eti6=e6 + .eti7=e7 + .baza5=b5 + .baza6=b6 + .baza7=b7 + .cimp5=C5 + .cimp6=C6 + .cimp7=c7 + .num=C5 + .num2=C6 + .expl=c7 + .cv=cumpvanz + Endwith + oc.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +*!* Procedure IESIRE +*!* *close tables +*!* *close database +*!* *set defa to &dirgen +*!* *erase actactan.* +*!* *erase ?temp.* +*!* Quit +*!* Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure mesajm + Param txt,i + + Local T,p + p=Iif(i<10,Str(i,1),Str(i,2)) + T='orm.label'+p+'.caption="'+txt+'"' + &T + If i<20 + i=i+1 + Endif + p=Iif(i<10,Str(i,1),Str(i,2)) + T='orm.IMAGE'+p+'.VISIBLE=.T.' + &T + + Return + ***----------------------------------------------------------------------------------------------------------------- +Func ULTIMAZIL + Param LLL,AAA + Local N + Do Case + Case Inlist(LLL,1,3,5,7,8,10,12) + N=31 + Case Inlist(LLL,4,6,9,11) + N=30 + Case Inlist(LLL,2) + N=28 + If Mod(AAA,2)=0 + N=29 + Endif + Endcase + Return N + ***----------------------------------------------------------------------------------------------------------------- +Function SERIA_LUNARA_E_CORECTA + Local TIPAR,LOC,L + L=Val(M.NL) + LOC=L+Floor((L-1)/2) + TIPAR='VOICUIONEMIL' + + Sele cul + Go Top + &&ESTE CORECTA ULTIMA SERIE? + If Substr(TIPAR,L,1)=Substr(GREEN,LOC,1); + AND Substr(red,1,1)=Substr(GREEN,3,1); + AND Substr(red,2,1)=Substr(GREEN,6,1); + AND Substr(red,3,1)=Substr(GREEN,9,1); + AND Substr(red,4,1)=Substr(GREEN,12,1); + AND Substr(red,5,1)=Substr(GREEN,15,1) + Return .T. + Else + Return .F. + Endif + + ***----------------------------------------------------------------------------------------------------------------- +Function e_ultima_luna + Sele calendar + Loca For m.NL=NL And m.an=an + Skip + If Eof() + ultima_luna=.T. + Return .T. + Else + ultima_luna=.F. + Return .F. + Endif + + + ***----------------------------------------------------------------------------------------------------------------- +Procedure danu + Parameters m1 + od=Create('danu') + od.label1.Caption=m1 + od.Show(1) + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure danuquit + Parameters m1 + od=Create('danu') + od.label1.Caption=m1 + od.Show(1) + If buton=2 + Quit + Endif + Return + ***----------------------------------------------------------------------------------------------------------------- +Proc pr + Param j + + If j>M + OP.Release + OP=Crea('progresbar') + j=0 + OP.Show() + Endif + OP.PRBAR.Value=j + OP.p=Round(100*OP.PRBAR.Value/OP.PRBAR.Max,2) + OP.Refresh + j=j+1 + Return + ***----------------------------------------------------------------------------------------------------------------- +Proc MESAJT + Param M.denumire + OTEXT.oleTreeview.NODES.Add(,,,M.denumire,) + STARE=STARE+1 + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure nrord + Parameters ALI + Sele &ALI + A=Reccount() + If A=0 + Return + Endif + If A>65000 + Return 0 + Endif + Declare NROR(A) + K=0 + Scan + K=K+1 + NROR(K)=Recno() + Endscan + Return + +Function NRCRT + NR=Ascan(NROR,Recno()) + Return NR + ***----------------------------------------------------------------------------------------------------------------- +Procedure inchidprog + Local CC,M.NUMESTATIE,UU + Return + UU=utilizator + + If !Used('OPTIUNI') + Return + Endif + + Sele OPTIUNI + Loca For OPTIUNE='RETEA' + If !Found() Or (Found() And !DA) + Sele OPTIUNI + Use + Return + Endif + Sele OPTIUNI + Use + + If !File('C:\CONTAFIN\TEMP\RETEA.DBF') + Return + Endif + Sele 0 + Use C:\CONTAFIN\TEMP\RETEA Shar Alias RETEA + m.NUMESTATIE=Allt(NUMESTATIE) + CC=DIRGEN + Use + + If File('&DIRGEN\Dateretea\istoric.DBF') + Sele 0 + Use &DIRGEN\Dateretea\istoric Share Alias istoric + Else + Sele 0 + Use &CC\START2000\Data\istoric Share Alias istoric + Endif + + Sele istoric + Set Order To DATAORAINT + Loca For Empty(dataoraies) And Allt(statie)=m.NUMESTATIE And Allt(utilizator)=Allt(UU) + If Found() + If Flock() + Repl dataoraies With Datetime() + Unlock + Endif + Endif + Sele istoric + Use + + + If File('&DIRGEN\Dateretea\activ.DBF') + Sele 0 + Use &DIRGEN\Dateretea\Activ Share Alias Activ + Else + Sele 0 + Use &CC\START2000\Data\Activ Share Alias Activ + Endif + + Sele Activ + Loca For Allt(statie)=m.NUMESTATIE + If !Found() + Wait Wind 'Aceasta statie nu este inregistrata in server!' + Else + Sele Activ + If Flock() + Repl DEVIZE With .F. + Endif + Unlock + Endif + Sele Activ + Use + + + Return + ***----------------------------------------------------------------------------------------------------------------- +Proc gendinante + Sele ORDante + Set Filter To + Sele CLIE + Set Filter To + Sele ORDante.*,CLIE.* From ORDante,CLIE Where ORDante.codc=CLIE.codc Into Cursor cliord Order By DATAI + + + ovs=Crea('selante') + ovs.Show(1) + + Return + ***----------------------------------------------------------------------------------------------------------------- +Procedure AFISNOTEPAD + Param NUMEFIS + Do Case + Case File('C:\WINDOWS\NOTEPAD.EXE') + Run /N C:\Windows\NOTEPAD.Exe &NUMEFIS + Case File('C:\WINnt\system32\NOTEPAD.EXE') + Run /N C:\WINnt\system32\NOTEPAD.Exe &NUMEFIS + Otherwise + Do mesajatent With 'Nu se poate vizualiza textul','pe acest sistem!' + Endcase +***----------------------------------------------------------------------------------------------------------------- +Procedure SCRIETEXT + Param NUMEFIS,TEXTUL + + Set Textmerge To &NUMEFIS Additive Noshow + TEXT +<> + ENDTEXT + Return + +Endproc && SCRIETEXT +***----------------------------------------------------------------------------------------------------------------- +Procedure INITTEXT + Param NUMEFIS + + Set Textmerge To &NUMEFIS + Set Textmerge On Noshow + Return +***----------------------------------------------------------------------------------------------------------------- +Procedure SFTEXT + Set Textmerge To + Set Textmerge Off + Return +***----------------------------------------------------------------------------------------------------------------- +Procedure adaugtext + Param fisierul,TEXTUL + Wait Wind TEXTUL Nowait + Set Textmerge On + Set Textmerge Noshow + Set Textmerge To &fisierul Additive +\<> + Set Textmerge To + + Return +***----------------------------------------------------------------------------------------------------------------- +Procedure errq + Do mesaj With 'Pentru moment accesul nu este posibil','Incercati mai tarziu.' + errq=.T. + Return +***----------------------------------------------------------------------------------------------------------------- +*!* Function SUMA_IN_VORBE +*!* Param suma +*!* Local i,lit,numar1 +*!* Store 0 To i +*!* Store '' To lit,numar1 + +*!* numar1=Space(12) +*!* numar1=Str(suma,12) +*!* Dimension A(12) +*!* A(1)=Subs(numar1,12,1) +*!* A(2)=Subs(numar1,11,1) +*!* A(3)=Subs(numar1,10,1) +*!* A(4)=Subs(numar1,9,1) +*!* A(5)=Subs(numar1,8,1) +*!* A(6)=Subs(numar1,7,1) +*!* A(7)=Subs(numar1,6,1) +*!* A(8)=Subs(numar1,5,1) +*!* A(9)=Subs(numar1,4,1) +*!* A(10)=Subs(numar1,3,1) +*!* A(11)=Subs(numar1,2,1) +*!* A(12)=Subs(numar1,1,1) +*!* Sele mila1 +*!* ********************* +*!* Loca For NR=Val(A(12)) +*!* lit=lit+Alltri(cr1) + +*!* If Val(A(11))=1 +*!* If Val(A(10))=0 +*!* Loca For NR=Val(A(11)) +*!* lit=lit+Alltri(cr5) +*!* Else +*!* Loca For NR=Val(A(10)) +*!* lit=lit+Alltri(cr4) +*!* Endif +*!* Else +*!* If Val(A(10))=0 +*!* Loca For NR=Val(A(11)) +*!* lit=lit+Alltrim(cr5) +*!* Else +*!* Loca For NR=Val(A(11)) +*!* lit=lit+Alltrim(cr2) +*!* Loca For NR=Val(A(10)) +*!* lit=lit+Alltrim(cr3) +*!* Endif +*!* Endif +*!* Do Case +*!* Case Val(A(12)) # 0 +*!* lit=lit+' miliarde' +*!* Case Val(A(11)) # 0 +*!* lit=lit+' miliarde' +*!* Case Val(A(10)) # 0 +*!* lit=lit+' miliarde' +*!* Endcase +*!* *********************** +*!* Loca For NR=Val(A(9)) +*!* lit=lit+Alltri(cr1) + +*!* If Val(A(8))=1 +*!* If Val(A(7))=0 +*!* Loca For NR=Val(A(8)) +*!* lit=lit+Alltri(cr5) +*!* Else +*!* Loca For NR=Val(A(7)) +*!* lit=lit+Alltri(cr4) +*!* Endif +*!* Else +*!* If Val(A(7))=0 +*!* Loca For NR=Val(A(8)) +*!* lit=lit+Alltrim(cr5) +*!* Else +*!* Loca For NR=Val(A(8)) +*!* lit=lit+Alltrim(cr2) +*!* Loca For NR=Val(A(7)) +*!* lit=lit+Alltrim(cr3) +*!* Endif +*!* Endif +*!* Do Case +*!* Case Val(A(9)) # 0 +*!* lit=lit+' milioane' +*!* Case Val(A(8)) # 0 +*!* lit=lit+' milioane' +*!* Case Val(A(7)) # 0 +*!* lit=lit+' milioane' +*!* Endcase +*!* *********************** +*!* Loca For NR=Val(A(6)) +*!* lit=lit+Alltri(cr1) + +*!* If Val(A(5))=1 +*!* If Val(A(4))=0 +*!* Loca For NR=Val(A(5)) +*!* lit=lit+Alltri(cr5) +*!* Else +*!* Loca For NR=Val(A(4)) +*!* lit=lit+Alltri(cr4) +*!* Endif +*!* Else +*!* If Val(A(4))=0 +*!* Loca For NR=Val(A(5)) +*!* lit=lit+Alltrim(cr5) +*!* Else +*!* Loca For NR=Val(A(5)) +*!* lit=lit+Alltrim(cr2) +*!* Loca For NR=Val(A(4)) +*!* lit=lit+Alltrim(cr3) +*!* Endif +*!* Endif +*!* Do Case +*!* Case Val(A(6)) # 0 +*!* lit=lit+' mii' +*!* Case Val(A(5)) # 0 +*!* lit=lit+' mii' +*!* Case Val(A(4)) # 0 +*!* lit=lit+' mii' +*!* Endcase + +*!* ********************* +*!* Loca For NR=Val(A(3)) +*!* lit=lit+Alltri(cr1) + +*!* If Val(A(2))=1 +*!* If Val(A(1))=0 +*!* Loca For NR=Val(A(2)) +*!* lit=lit+Alltri(cr5) +*!* Else +*!* Loca For NR=Val(A(1)) +*!* lit=lit+Alltri(cr4) +*!* Endif +*!* Else +*!* If Val(A(1))=0 +*!* Loca For NR=Val(A(2)) +*!* lit=lit+Alltrim(cr5) +*!* Else +*!* Loca For NR=Val(A(2)) +*!* lit=lit+Alltrim(cr2) +*!* Loca For NR=Val(A(1)) +*!* lit=lit+Alltrim(cr3) +*!* Endif +*!* Endif +*!* Do Case +*!* Case Val(A(3)) # 0 +*!* lit=lit+' lei' +*!* Case Val(A(2)) # 0 +*!* lit=lit+' lei' +*!* Case Val(A(1)) # 0 +*!* lit=lit+' lei' +*!* Endcase + +*!* Sele mila1 +*!* *!* use + +*!* lit=Strtran(lit,' ','') +*!* Return lit +***----------------------------------------------------------------------------------------------------------------- +Procedure LIST_EXCEL + Param TTABEL,TTITLU,TAHEADER + + External Array TAHEADER + LCFIS=Allt(LOC)+"\"+Allt(NFSCURT)+"\TEMPO\LIST_"+Sys(2)+".XLS" + LCFIS=Strtran(LCFIS,'\\','\') + + Set Textmerge On To (LCFIS) Noshow + LCANTET=Uppe(Allt(TTITLU))+crlf +\ +\\<> +\ + If Parameters()<3 + LCHEADER="" + Sele (TTABEL) + For i=1 To Fcount() + LCHEADER=LCHEADER+Upper(Allt(Field(i)))+Tab + Endfor + LCHEADER=LCHEADER+crlf +\\<> + Sele (TTABEL) + Scan + LDATE="" + For i=1 To Fcount() + F=Field(i) + T=&F + LDATE=LDATE+Transform(T,"")+Tab + Endfor + LDATE=LDATE+crlf + \\<> + Endscan + Set Textmerge To + Else + LCHEADER="" + NRCOL=Alen(TAHEADER,1) + Sele (TTABEL) + For i=1 To NRCOL + + If Empty(TAHEADER[I,1]) + LCHEADER=LCHEADER+Upper(Allt(TAHEADER[I,2]))+Tab + Else + LCHEADER=LCHEADER+Upper(Allt(TAHEADER[I,1]))+Tab + Endif + + Endfor + LCHEADER=LCHEADER+crlf + +\\<> + + Sele (TTABEL) + Scan + LDATE="" + For i=1 To NRCOL + * F=Field(TAHEADER[I,2]) + F=TAHEADER[I,2] + * IF EXISTACAMP(,F) + T=&F + LDATE=LDATE+Alltrim(Transform(T,""))+Tab + * ELSE + * LDATE=LDATE+" "+Tab + * ENDIF + Endfor + LDATE=LDATE+crlf + \\<> + Endscan + Set Textmerge To + Endif + * WAIT WINDOW "Se deschide Excel..." NOWAIT + + + + OEXCEL = Createobject("Excel.Application") + OEXCEL.WorkBooks.Open(LCFIS) + OEXCEL.Visible=1 + *!* IF TYPE(OEXCEL)='0' + *!* OEXCEL="" + *!* ENDIF + +Endproc && list_excel + + +*__________________________________________________________ + +&& Folosesc un tabel (tabel,id) cu cate o linie pt fiecare tabel +&& aflu id-ul urmator si il scriu in tabela +&& returnez id-ul +&& EX1: LNEW_ID=NEW_ID("GRILA_SAL") --> urmatorul id din fara cautare in tabela originala +&& EX2: LNEW_ID=NEW_ID("GRILA_SAL","ID") --> urmatorul id din cu cautare in tabela originala dupa campul +&& ex3: LNEW_ID=NEW_ID("GRILA_SAL","ID",.T.) --> .T. INSEAMNA CA TABELUL ORIGINAL ESTE INDEXAT DUPA FAC SEEK IN LOC DE LOCATE +Procedure NEW_ID + Parameters TALIAS,TFIELD,TTAG&&,tTipField + *WAIT WINDOW TALIAS + *ON error Errorh(ERROR(),PROGRAM(),LINENO()) + LLLOOKUP=Iif(Type("tfield")="C",.T.,.F.) + LLChar = Iif(Type(TFIELD) = "C",.T.,.F.) + LLTAG=Iif(Type("TTAG")="C",.T.,.F.) + TALIAS=Upper(Alltrim(TALIAS)) + + + *** Save Stats + LCOLDALIAS = Alias() && keep current work area + LNOLDRECNO = Iif(!Eof(),Recno(),0) && save record number + + LCSETDEL=Set("deleted") + && lnmaxval = (10^pcidsize)-1 && wrap around after this val + + *** + && PUN ORDINEA PE ID + If LLLOOKUP And LLTAG + Sele (TALIAS) + Set Order To &TTAG + Endif + *** + LCNEWID = 0 && our return result - NULL if failed + Select IDS + Locate For Upper(Alltrim(TABEL))=TALIAS + If !Found() + If Flock() + Append Blank + Replace TABEL With TALIAS + Unlock + Endif + + Endif + + Set Deleted Off + && acum sunt pe inregistrarea corecta + + + *** lock counter table and update counter + Select IDS + If Rlock() + *** Avoid use of Macros - Convert to mem var & update it + LNCOUNTERVAL = NEW_ID + + *** VERIFY ID NUMBER - search 'til no match + Do While .T. + *** increase the counter - update field and var + LNCOUNTERVAL = LNCOUNTERVAL+1 + + *!* *** check for wraparound + *!* IF lncounterval > lnmaxval + *!* lncounterval = 1 + *!* ENDIF + + Select (TALIAS) + If LLLOOKUP + If LLTAG + LCAUT="SEEK "+Allt(Str(LNCOUNTERVAL)) + Else + If LLChar + LCAUT="LOCATE FOR "+Allt(TFIELD)+"='"+Allt(Str(LNCOUNTERVAL))+"'" + Else + LCAUT="LOCATE FOR "+Allt(TFIELD)+"="+Allt(Str(LNCOUNTERVAL)) + Endif + *** now see if it exists + &LCAUT + * LOCATE FOR &TFIELD=LNCOUNTERVAL + If !Found() + *** No match - DONE + Exit + Endif && !found() + Endif && lltag + Else + Exit + Endif && lllokup + + Enddo && done + + Sele IDS + Replace NEW_ID With LNCOUNTERVAL + LCNEWID=LNCOUNTERVAL + + Unlock In IDS + Endif && rlock() + + *** Reset record number on original file + + If !Empty(LCOLDALIAS) + Sele (LCOLDALIAS) + If LNOLDRECNO#0 + Goto LNOLDRECNO + Endif + Endif + Set Deleted &LCSETDEL + + Return LCNEWID + +Endproc && NEW_ID + + +***------------------------------------------------------------------------------------------------------- +*------------------------------------------------------------------------------------------- + +*** returneaza un obiect cu proprietatile an si nl (de fapt cu toate coloanele din calendar) +Function ret_luna + Parameters tcTitlu + + Private loLuna + + Select calendar + *!* USE DBF('calendar') IN 0 AGAIN ALIAS tsel_luna share + Select * From calendar Into Cursor tsel_luna Order By an Desc ,NL Desc + Select tsel_luna + loLuna=myscatter('blank') + + Ol=Createobject("frm_sel_luna") + With Ol + .lblTitlu.Caption=tcTitlu + If Empty(.cboLuna.RowSource) + .cboLuna.RowSource="tsel_luna.nl,an" + Endif + .oLuna=loLuna + If Empty(.cAlias) + .cAlias=Left(.cboLuna.RowSource,At(".",.cboLuna.RowSource)-1) + Endif + Endwith + Ol.Show(1) + + Use In tsel_luna + + Return loLuna +Endfunc && ret_oluna +***----------------------------------------------------------------------------------------------------------------- +*!* SET CLASSLIB TO d:\contafin\contab\clase\caut.vcx ADDITIVE +*!* oo=ret_luna("Luna de inceput") +*** scattered = MYSCATTER() && This is instead of SCATTER NAME... +Procedure myscatter + Parameters tcBlank + Local llBlank, loScatter + + llBlank=.F. + If Type('tcBlank')='C' + If 'BLANK'$Upper(tcBlank) + llBlank=.T. + Endif + Endif + + myScatterObject = Createobject("myScatterObject") + If !Empty(Alias()) + If llBlank + Scatter Name loScatter Memo Blank + Else + Scatter Name loScatter Memo + Endif + lnFields = Fcount(Alias()) + For N =1 To lnFields + lcField=Field(N) + lcvalue=loScatter.&lcField + myScatterObject.AddProperty(lcField, lcvalue) + Endfor + Release loScatter + Endif + Return myScatterObject && Always return an object, so GATHER command could not choke. +Endproc + +Define Class myScatterObject As Session + * You may use any VFP class directly like myScatterObject = CREATEOBJECT("Session") + * But you may optionally use this DEFINE CLASS + * and declare the native PEMs here as HIDDEN if you want, so they are not exposed + * in case you are using class other than Session or work with VFP version prior to VFP 7.0 +Enddefine + +***----------------------------------------------------------------------------------------------------------------- +Procedure caut_alfa_cursor + Parameters NUMEBAZA,NUMECIMP,CAPTEXT,VARMEM + Local MC0,MC1,MC2, llVizibil + Set Safety Off + llVizibil = .T. + + MC0='SELE '+NUMEBAZA + MC1='VARMEM=M.'+NUMECIMP + *MC2='SET order TO TAG '+NUMECIMP + MC2 = [INDEX ON ] +NUMECIMP+ [ TAG nume OF &loc\&nfscurt\tempo\xindex.idx COMPACT ASCENDING ] + + + *!* &MC0 + *!* &MC2 + *!* GO TOP + + Local lcNumeCol2 + Store '' To lcNumeCol2 + + LcCol = Alltrim(NUMEBAZA) + '.cod_fiscal' + If Type(LcCol) # 'U' + lcNumeCol2 = 'cod_fiscal' + Endif + + LcCol = Alltrim(NUMEBAZA) + '.gest' + If Type(LcCol) # 'U' + lcNumeCol2 = 'gest' + Endif + + LcCol = Alltrim(NUMEBAZA) + '.id_sectie' + If Type(LcCol) # 'U' + lcNumeCol2 = 'id_sectie' + Endif + + If Empty(lcNumeCol2) + lcNumeCol2 = 'space(4)' + llVizibil = .F. + Endif + + LcCol = Alltrim(NUMEBAZA) + '.id' + If Type(LcCol) # 'U' + lcNumeCol3 = 'id' + Else + lcNumeCol3 = 'space(4)' + Endif + + Select Distinct &NUMECIMP, &lcNumeCol2, &lcNumeCol3 From (NUMEBAZA) Into Cursor tnomenclator Readwrite Order By &NUMECIMP + + OCA=Createobject("CAUTALFa") + OCA.Caption=CAPTEXT + OCA.GRID1.RecordSource='tnomenclator' + OCA.GRID1.COLUMN1.ControlSource = NUMECIMP + OCA.GRID1.COLUMN2.ControlSource = lcNumeCol2 + OCA.GRID1.COLUMN2.Visible = llVizibil + OCA.cmdrenunt1.Visible=.T. + OCA.command1.Visible=.F. + OCA.command2.Visible=.F. + OCA.command3.Visible=.F. + OCA.Show(1) + + *!* &MC0 + *!* SCATTER MEMVAR + *!* SET FILTER TO + + If buton=2 + Use In tnomenclator + Return + Endif + + lcFile = Addbs(gcTempPath) + 'xindex.idx' + If File(lcFile) + Set Index To + Delete File &lcFile + Endif + *!* &MC1 + + Select tnomenclator + Scatter Memvar + + &MC1 + + + Use In tnomenclator + Return +***----------------------------------------------------------------------------------------------------------------- diff --git a/Programe/quitapp.prg b/Programe/quitapp.prg new file mode 100644 index 0000000..bd26e33 --- /dev/null +++ b/Programe/quitapp.prg @@ -0,0 +1,340 @@ +* Program: QUITAPP.PRG +* Description: Client-side of remote termination of applications. +* Created: 07/11/2003 +* Developer: Gregory L Reichert +* Copyright: Copyright (c) 2003 GLR software +*------------------------------------------------------------ +* Id Date By Description +* 1 07/11/2003 Gregory L Reichert Initial Creation +* +*------------------------------------------------------------ + +*!* Overview + +*!* The component is the client-side portion of a Remote Application Killer. +*!* With the use of a shared table, an network administrator can determine +*!* what workstation has what application running, and instruct that application +*!* to quit. + +*!* An administrator can monitor which applications are running, and instruct them +*!* termination themselves. + +*!* Instructions + +*!* This component is based on a Timer class with a one minute interval. Each minute +*!* the application check to see if the administrator wishs the application to +*!* quit. If discovered so, the countdown begins (default 10 minutes). During the +*!* Countdown, a message is displayed notifing the user that the automatic termination of +*!* the application is underway. They can manual exit the application, or wait for the +*!* automatic. Either way, it is intended for the user to complete their current task. +*!* At the end of the countdown, the application issues a QUIT command. + +*!* Call this routine, and a object reference is returned. This object should +*!* remain active throughout the life of the application. + +*!* PRIVATE oQuitApp +*!* oQuitApp = QuitApp( "\\MyServer\MyDrive\CommonFiles\" ) +*!* +*!* When the administrator wish to terminate one or more application, they place +*!* a True (.T.) in the "lQuit" field of the QuitApp.dbf table. As the Application continues +*!* countdown to automated termination, the "Remain" field indicates the number of minutes +*!* remaining. If the Admin changes the value of "Remain", the countdown continues from +*!* that new value. If a value less then zero (0) is entered, the application terminates +*!* the next time the QuitApp timer is fired. + + +*!* Two exposed method are provided to inform the routine that the application +*!* is performing critical operations and can not be interupted. These are called +*!* EnterCritical() and LeaveCritical(). The EnterCritical() should be called when the +*!* critical section begins, and the LeaveCritical() should be called when the section +*!* ends. + +*!* The administrator can check to see a application is running, or if it crashed before hand, +*!* by set the "aLiveTest" field of the QuitApp.dbf to False (.F.). After a couple of minutes, +*!* if the application is still alive, the field will revert to True (.T.). + +*!* The form called Admin_QuitApp.scx is used by the administrator to monitor and control the +*!* remote applications. + +*!* ===================================================================================== + +LPARAMETERS tcPath, tcQuitName + +RETURN CREATEOBJECT("QuitApp", tcPath, tcQuitName) + + +#DEFINE kQuitMax 10 && Wait 10 minutes before auto-quit + +*------------------------------------------------------------ +* Description: QuitApp class +*------------------------------------------------------------ +* Id Date By Description +* 1 07/11/2003 Gregory L Reichert Initial Creation +* +*------------------------------------------------------------ +DEFINE CLASS QuitApp AS TIMER + + INTERVAL = (60*1000) && check once a minute. + ENABLE = .T. + cPath = tcPath + cQuitName ="QuitApp" + cQFile ="QuitApp" + cAlias = "QuitApp" + && Full URN to QuitApp.dbf. Must be at a shared network location for all running application to gain access. + + *------------------------------------------------------------ + * Description: Error Trap + * Parameters: internal + * Return: n/a + * Use: internal + *------------------------------------------------------------ + * Id Date By Description + * 1 07/11/2003 Gregory L Reichert Initial Creation + * + *------------------------------------------------------------ + PROCEDURE ERROR( a,b,c ) + *-- ignore all error from this class + RETURN + ENDPROC + + *------------------------------------------------------------ + * Description: Initializes the timer + * Parameters: cPath: path to the shared QuitApp.dbf - path only + * Return: N/A + * Use: ox = CreateObject( "QuitApp","\\myserver\shared\CommonFiles\" ) + *------------------------------------------------------------ + * Id Date By Description + * 1 07/11/2003 Gregory L Reichert Initial Creation + * + *------------------------------------------------------------ + PROCEDURE INIT( cPath, cQuitName ) + LOCAL lc + lc = SELECT() + + + cPath = ADDBS(IIF(EMPTY(cPath),"", cPath)) + cQuitName = IIF(EMPTY(cQuitName),"QuitApp",JUSTSTEM(cQuitName)) + cQFile = cPath+cQuitName+".dbf" + cAlias = "QuitApp" + + this.cPath = cPath + this.cQuitName = cQuitName + this.cQFile = cQFile + this.cAlias = cAlias + *------------------------------------- + * create QuitApp table if missing. + *------------------------------------- + IF NOT FILE(this.cQFile) + SELECT 0 + CREATE TABLE (this.cQFile) (ws c(40),ID N(10,0), cCaption c(100),lQuit L, remain N(3), Critical L, aLiveTest L) + USE + ENDIF + + SELECT(lc) + ENDPROC + + *------------------------------------------------------------ + * Description: Timer routine + * Parameters: n/a + * Return: n/a + * Use: internal + *------------------------------------------------------------ + * Id Date By Description + * 1 07/11/2003 Gregory L Reichert Initial Creation + * + *------------------------------------------------------------ + PROCEDURE TIMER + + + LOCAL lc + lc = SELECT() + USE (this.cQFile) IN 0 SHARED ALIAS (this.cAlias) + SELECT (this.cAlias) + + LOCATE FOR ID=_VFP.HWND AND cCaption=_VFP.CAPTION AND NOT DELETED() + IF NOT FOUND() + + *------------------------------------- + * Add an instence for this workstation / application + INSERT INTO (this.cQFile) (ws,ID,cCaption,lQuit,remain, Critical, aLiveTest) ; + VALUES ( UPPER(SYS(0)),_VFP.HWND, _VFP.CAPTION, .F., kQuitMax, .F., .T.) + ENDIF + + *- Each time, reset the aLiveTest field. + REPLACE aLiveTest WITH .T. + + IF NOT Critical AND TXNLEVEL()=0 + *- do only if not in Critical Section of the code, + * and not in a Transaction block + IF lQuit + *------------------------------------- + * if still timing out, display remaining time. + *------------------------------------- + IF remain>0 + IF remain=kQuitMax + * - if first time displaying the warning, force application on top. + _SCREEN.ALWAYSONTOP=.T. + _SCREEN.ALWAYSONTOP=.F. + ENDIF + *- decrement the counter, and display warning. + REPLACE remain WITH remain -1 + osh=CREATEOBJECT('shell.application') + osh.minimazeall + _screen.windowstate=2 + WAIT WINDOW NOCLEAR NOWAIT "Programul se va inchide automat in " +ALLTRIM(STR(remain,10))+" minute." + ?? CHR(7) + osh.undominimazeall + RELEASE osh + ELSE + *------------------------------------- + * otherwise, quit the application. + *------------------------------------- + USE IN (this.cAlias) + CLEAR EVENTS + glQuit = .T. + QUIT + ENDIF + ELSE + *------------------------------------- + * if nolonger quiing, reset counter. + *------------------------------------- + REPLACE remain WITH kQuitMax + WAIT CLEAR + ENDIF + ENDIF + + USE IN (this.cAlias) + THIS.RESET + SELECT(lc) + ENDPROC + + *------------------------------------------------------------ + * Description: Called when entering a Critical Section of the code. + * Parameters: n/a + * Return: True + * Use: .EnterCritical + *------------------------------------------------------------ + * Id Date By Description + * 1 07/11/2003 Gregory L Reichert Initial Creation + * + *------------------------------------------------------------ + PROCEDURE EnterCritical() + LOCAL lc + lc = SELECT() + USE (this.cQFile) IN 0 SHARED ALIAS (this.cAlias) + SELECT (this.cAlias) + + UPDATE (this.cQFile) SET Critical=.T. WHERE ID=_VFP.HWND AND cCaption=_VFP.CAPTION + + USE IN (this.cAlias) + SELECT(lc) + ENDPROC + + *------------------------------------------------------------ + * Description: Called when exitting a Critical Section of the code. + * Parameters: n/a + * Return: True + * Use: .LeaveCritical + *------------------------------------------------------------ + * Id Date By Description + * 1 07/11/2003 Gregory L Reichert Initial Creation + * + *------------------------------------------------------------ + PROCEDURE LeaveCritical() + LOCAL lc + lc = SELECT() + USE (this.cQFile) IN 0 SHARED ALIAS (this.cAlias) + SELECT (this.cAlias) + + UPDATE (this.cQFile) SET Critical=.F. WHERE ID=_VFP.HWND AND cCaption=_VFP.CAPTION + + USE IN (this.cAlias) + SELECT(lc) + ENDPROC + + *------------------------------------------------------------ + * Description: Destroy this object + * Parameters: n/a + * Return: n/a + * Use: internal + *------------------------------------------------------------ + * Id Date By Description + * 1 07/11/2003 Gregory L Reichert Initial Creation + * + *------------------------------------------------------------ + PROCEDURE DESTROY + *----------------------------------------------- + * On destroy, remove the application reference from the QuitApp table. + *----------------------------------------------- + LOCAL lc + lc = SELECT() + USE (this.cQFile) IN 0 SHARED ALIAS (this.cAlias) + SELECT (this.cAlias) + + DELETE FROM (this.cQFile) WHERE ID=_VFP.HWND AND cCaption=_VFP.CAPTION + + USE IN (this.cAlias) + SELECT(lc) + ENDPROC + +ENDDEFINE + + + +&& ------------------------------INCEPUT: Quit_Automat ------------------------------ +*!* Procedura: Quit_Automat +*!* Parametri: tlQuit +*!* Data/Ora generarii: 19/02/2004 12:48 +*!* Autor: MARIUS.MUTU +PROCEDURE Quit_Automat +LPARAMETERS tlQuit + +IF tlQuit + QUIT +ENDIF + +ENDPROC +&& ------------------------------SFARSIT: Quit_Automat ------------------------------ + +* Eof QUITAPP.PRG +*************************** +*!* FUNCTION AppInstance +*!* PARAMETERS WindowName + +*!* #DEFINE GW_OWNER 4 +*!* #DEFINE GW_HWNDFIRST 0 +*!* #DEFINE GW_HWNDNEXT 2 +*!* #DEFINE SW_MAXIMIZE 3 +*!* #DEFINE SW_NORMAL 1 + +*!* DECLARE integer SetForegroundWindow in win32api long lnhWnd +*!* DECLARE integer GetWindowText in win32api integer, string, integer +*!* DECLARE integer GetWindow in win32api integer,INTEGER +*!* DECLARE integer IsWindowVisible in win32api integer +*!* DECLARE integer GetActiveWindow in win32api +*!* DECLARE integer ShowWindow in user32 INTEGER lnhWnd, INTEGER lnCmdShow + +*!* IsWindEx = .F. +*!* if len(WindowName) < 1 +*!* return .t. +*!* endif + +*!* foxhwnd = GetActiveWindow() +*!* hwndNext = GetWindow(foxhwnd,GW_HWNDFIRST) + +*!* DO WHILE hwndNext <> 0 +*!* IF (hwndnext <> foxhwnd .AND. GetWindow(hwndnext,GW_OWNER) = 0) +*!* Stuffer = SPACE(64) +*!* x = GetWindowText(hwndnext,@Stuffer,64) +*!* IF WindowName $ Stuffer +*!* IsWindEx = .T. +*!* =SetForegroundWindow(hwndnext) +*!* =ShowWindow(hwndNext,SW_MAXIMIZE) +*!* EXIT +*!* ENDIF +*!* ENDIF +*!* hwndNext = GetWindow(hwndnext,GW_HWNDNEXT) +*!* ENDDO + +*!* RETURN IsWindEx +*!* ENDFUNC \ No newline at end of file diff --git a/Programe/rapbal97.prg b/Programe/rapbal97.prg new file mode 100644 index 0000000..40f0093 --- /dev/null +++ b/Programe/rapbal97.prg @@ -0,0 +1,104 @@ +public wbal +dirfirm=loc+'\'+nfscurt +WBAL=0 + +sele bal +set filter to SUBS(CONT,1,1)='7' +TOTAL ON subs(cont,5,1) TO &dirfirm\tempo\TOTTOT7 +SELE BAL +set filter to SUBS(CONT,1,1)='6' +TOTAL ON SUBS(CONT,5,1) TO &dirfirm\tempo\TOTTOT6 + +SELE 0 +USE &dirfirm\tempo\TOTTOT7 +REPL DENUMIRE WITH 'TOTAL VENITURI'; + CONT WITH '7998' +SELE 0 +USE &dirfirm\tempo\TOTTOT6 +REPL DENUMIRE WITH 'TOTAL CHELTUIELI'; + CONT WITH '6998' +SELE BAL +SET FILTER TO + +SELE BAL +TOTAL ON SUBSTR(CONT,1,3) TO &dirfirm\tempo\TOTBAL + +SELE 0 +*USE DATEAN\TOTBAL +USE &dirfirm\tempo\totbal.dbf exclusive + +SELE BAL +COPY TO &dirfirm\tempo\RAPBAL + +SELE 0 +USE &dirfirm\tempo\RAPBAL +TOTAL ON SUBS(CONT,5,1) TO &dirfirm\tempo\TOTTOT + +SELE TOTBAL +REPL ALL DENUMIRE WITH 'TOTAL '+SUBSTR(CONT,1,3); + cont WITH substr(cont,1,3)+'A' +SELE 190 +USE &dirfirm\tempo\TOTTOT +REPL DENUMIRE WITH 'TOTAL GENERAL'; + CONT WITH '9999' +SELE TOTBAL +USE + +SELE TOTTOT +USE +SELE TOTTOT7 +USE +SELE TOTTOT6 +USE + + +SELE RAPBAL + +APPE FROM &dirfirm\tempo\TOTBAL +APPE FROM &dirfirm\tempo\TOTTOT +APPE FROM &dirfirm\tempo\TOTTOT7 +APPE FROM &dirfirm\tempo\TOTTOT6 + +INDEX ON CONT TO &dirfirm\tempo\BALRAP.CDX +GO TOP +GCONT=CONT +kg=0 +SCAN +SCATTER MEMVAR + +if subs(m.cont,1,3)=subs(gcont,1,3) +kg=kg+1 +else +kg=1 +endif +IF SUBS(M.CONT,4,1)='A' and kg=2 +DELETE +kg=0 +ENDIF +GCONT=M.CONT +ENDSCAN + +m.titlu='' +if a4 + REPORT FORMAT RAPBALa4.FRX TO PRINTER PROMPT preview +else + REPORT FORMAT RAPBALa3.FRX TO PRINTER PROMPT preview +endif + +SELE RAPBAL +USE +ERASE &dirfirm\tempo\RAPBAL.DBF + +ERASE &dirfirm\tempo\BALrap.cdx + +ERASE &dirfirm\tempo\TOTTOT.DBF + +ERASE &dirfirm\tempo\TOTTOT7.DBF + +ERASE &dirfirm\tempo\TOTTOT6.DBF + +ERASE &dirfirm\tempo\totBAL.DBF + + + +RETURN \ No newline at end of file diff --git a/Programe/refverif.prg b/Programe/refverif.prg new file mode 100644 index 0000000..a225bd1 --- /dev/null +++ b/Programe/refverif.prg @@ -0,0 +1,7489 @@ +PROCEDURE REFClienti && REFCLI +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\clienti.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'clienti.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\clienti.DBF IN 0 ALIAS clientiU + +SELECT clientiU + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('clientiu.totdeb') = 'U' + SELECT NUME,COD_FISCAL,avans AS precavans,productie AS precdeb,incasat AS preccred FROM clientiU INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + productie, totcred WITH preccred + incasat, totvaldeb WITH precvaldeb + prodval, totvalcre WITH precvalcre + incasval + REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('clientiu.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(precavans + avans) AS precavans, SUM(precavansv + avansval) AS precavansv, ; + SUM(precdeb + productie) AS precdeb, SUM(preccred+incasat) AS preccred, ; + SUM(precvaldeb + prodval) AS precvaldeb, SUM(precvalcre + incasval) AS precvalcre ; + FROM clientiU INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(precavans + avans) AS precavans, SUM(precavansv + avansval) AS precavansv, ; + SUM(precdeb + productie) AS precdeb, SUM(preccred+incasat) AS preccred, ; + SUM(precvaldeb + prodval) AS precvaldeb, SUM(precvalcre + incasval) AS precvalcre ; + FROM clientiU INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN clientiU + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA + +SELECT NUME, ; +IIF(LEFT(scd,3) = '411', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '411' AND scc # '4118', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '411' AND scd # '4118', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '411' AND scc # '4118', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '411' AND scd # '4118', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE (LEFT(scd, 3)='411' AND scd # '4118') OR (LEFT(scc, 3)='411' AND scc # '4118'); +INTO CURSOR t411 GROUP BY 1, 2, 3 + +SELECT t411 +SCAN + SCATTER NAME o411 + SELECT rcli + SEEK LEFT(o411.NUME,30) + o411.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o411.COD_FISCAL + ENDIF + ELSE + SEEK LEFT(o411.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o411.acont + ELSE + APPEND BLANK + GATHER NAME o411 + ENDIF + ENDIF + REPLACE productie WITH productie + o411.debit, incasat WITH incasat + o411.credit, prodval WITH prodval + o411.valdebit, incasval WITH incasval + o411.valcredit + + SELECT t411 +ENDSCAN +RELEASE o411 +USE IN t411 + +SELECT NUME, ; +IIF(LEFT(scd,3) = '419', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '419', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '419', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '419', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '419', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('419',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t419 GROUP BY 1, 2 + + +SELECT t419 +SCAN + SCATTER NAME o419 + SELECT rcli + SEEK LEFT(o419.NUME,30) + o419.acont + IF !FOUND() + LOCATE FOR ALLTRIM(nume) = ALLTRIM(o419.NUME) + IF !FOUND() + APPEND BLANK + GATHER NAME o419 + ENDIF + ENDIF + REPLACE avans WITH avans - o419.debit + o419.credit + REPLACE avansval WITH avansval - o419.valdebit + o419.valcredit + SELECT t419 +ENDSCAN +RELEASE o419 +USE IN t419 + + +SELECT rcli +REPLACE ALL totdeb WITH precdeb+productie,totcred WITH preccred+incasat,totavans WITH precavans+avans +REPLACE ALL totvaldeb WITH precvaldeb+prodval,totvalcre WITH precvalcre+incasval,totavansv WITH precavansv+avansval + +SELECT clienti +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +*USE IN clientiU + +SELECT clienti +SET ORDER TO TAG NANA +RETURN + + +*_________________________________________ +PROCEDURE REFFurnizor && REFFUR +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\FURNIZOR.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'FURNIZOR.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\FURNIZOR.DBF IN 0 ALIAS FURNIZORU + +SELECT FURNIZORU + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('FURNIZORu.totdeb') = 'U' + SELECT NUME, COD_FISCAL, avans AS precavans, platit AS precdeb, achizit AS preccred FROM FURNIZORU INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + platit, totcred WITH preccred + achizit , totvaldeb WITH precvaldeb + platival, totvalcre WITH precvalcre + achizitval + REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('FURNIZORu.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(precavans + avans) AS precavans, SUM(precavansv + avansval) AS precavansv, ; + SUM(precdeb + platit) AS precdeb, SUM(preccred + achizit) AS preccred, ; + SUM(precvaldeb + platival) AS precvaldeb, SUM(precvalcre + achizitval) AS precvalcre ; + FROM FURNIZORU INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(precavans + avans) AS precavans, SUM(precavansv + avansval) AS precavansv, ; + SUM(precdeb + platit) AS precdeb, SUM(preccred + achizit) AS preccred, ; + SUM(precvaldeb + platival) AS precvaldeb, SUM(precvalcre + achizitval) AS precvalcre ; + FROM FURNIZORU INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN FURNIZORU + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA + +SELECT NUME, ; +IIF(LEFT(scd,3) = '401', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '401', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '401', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '401', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '401', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('401',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t401 GROUP BY 1, 2, 3 + +SELECT t401 +SCAN + SCATTER NAME o401 + SELECT rcli + SEEK LEFT(o401.NUME,30) + o401.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o401.COD_FISCAL + ENDIF + ELSE + SEEK LEFT(o401.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o401.acont + ELSE + APPEND BLANK + GATHER NAME o401 + ENDIF + ENDIF + REPLACE platit WITH platit + o401.debit, achizit WITH achizit + o401.credit, platival WITH platival + o401.valdebit, achizitval WITH achizitval + o401.valcredit + + SELECT t401 +ENDSCAN +RELEASE o401 +USE IN t401 + +SELECT NUME, ; +IIF(LEFT(scd,3) = '409', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '409', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '409', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '409', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '409', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('409',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t409 GROUP BY 1, 2 + + + +SELECT t409 +SCAN + SCATTER NAME o409 + SELECT rcli + SEEK LEFT(o409.NUME,30) + o409.acont + IF !FOUND() + LOCATE FOR ALLTRIM(nume) = ALLTRIM(o409.NUME) + IF !FOUND() + APPEND BLANK + GATHER NAME o409 + ENDIF + ENDIF + REPLACE avans WITH avans + o409.debit - o409.credit + REPLACE avansval WITH avansval + o409.valdebit - o409.valcredit + SELECT t409 +ENDSCAN +RELEASE o409 +USE IN t409 + + +SELECT rcli +REPLACE ALL totdeb WITH precdeb + platit, totcred WITH preccred + achizit, totavans WITH precavans + avans +REPLACE ALL totvaldeb WITH precvaldeb + platival, totvalcre WITH precvalcre + achizitval, totavansv WITH precavansv + avansval + +SELECT FURNIZOR +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +*USE IN FURNIZORU + +SELECT FURNIZOR +SET ORDER TO TAG NANA +RETURN + + + +*!* LOCAL nla,nlb,ana,anb + +*!* IF !se_reface() +*!* RETURN +*!* ENDIF + +*!* nlb=m.nl +*!* anb=m.an +*!* dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +*!* SELE calendar +*!* LOCATE FOR nl=m.nl AND an=m.an +*!* SKIP -1 +*!* IF !BOF() +*!* nla=nl +*!* ana=an +*!* dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +*!* ELSE +*!* dateA=dirgen+'\_alfa\an0000\date00\' +*!* ENDIF + + +*!* SET SAFETY OFF +*!* COPY FILE &dirgen\_alfa\an0000\date00\FURNIZOR.* TO &loc\&nfscurt\tempo\rcli.* + +*!* USE &dateA\FURNIZOR.DBF IN 0 ALIAS FURNIZORU +*!* SELECT FURNIZORU +*!* SET ORDER TO 1 && NUME +*!* TOTAL TO &loc\&nfscurt\tempo\FURNIZORA ON NUME +*!* USE &loc\&nfscurt\tempo\FURNIZORA IN 0 ALIAS FURNIZORA +*!* SELECT FURNIZORA +*!* IF TYPE('FURNIZORa.totdeb') # 'U' +*!* * SUM TOTcred, achizit TO M.TOTcred, M.achizit +*!* REPLACE ALL totdeb WITH precdeb + platit, totcred WITH preccred + achizit +*!* ELSE +*!* SUM platit TO M.platit +*!* m.totdeb=0 +*!* ENDIF + + + +*!* USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +*!* &&precedente--------- +*!* IF TYPE('FURNIZORa.totdeb') = "U" +*!* SELECT NUME,COD_FISCAL,avans AS precavans,platit AS precdeb,achizit AS preccred FROM FURNIZORA INTO CURSOR rrr +*!* ELSE +*!* * Select NUME,COD_FISCAL,totavans As precavans,totdeb As precdeb,totcred As preccred From FURNIZORa Into Cursor rrr +*!* SELECT NUME,COD_FISCAL,NUMEVAL,; +*!* totavans AS precavans,totdeb AS precdeb,totcred AS preccred,; +*!* totavansV AS precavansV,totVALdeb AS precVALdeb,totVALcre AS precVALcre; +*!* FROM FURNIZORA INTO CURSOR rrr +*!* ENDIF + +*!* USE IN FURNIZORA + +*!* SELECT rcli +*!* APPEND FROM DBF('rrr') +*!* USE IN rrr + + +*!* &&rulaje------------ +*!* SELE rcli +*!* SET ORDER TO TAG NUME +*!* DO REDAU WITH 'SCC="401 " ','RCLI','M.NUME','ACHIZIT' +*!* DO REDAU WITH 'SCD="401 " ','RCLI','M.NUME','PLATIT' +*!* DO REDAU WITH 'SCD="409 " ','RCLI','M.NUME','AVANS' +*!* DO REDAUsc WITH 'SCc="409 " ','RCLI','M.NUME','AVANS' + +*!* DO REDAUVAL WITH 'SCC="401 " ','RCLI','M.NUME','ACHIZITVAL' +*!* DO REDAUVAL WITH 'SCD="401 " ','RCLI','M.NUME','PLATIVAL' +*!* DO REDAUVAL WITH 'SCD="409 " ','RCLI','M.NUME','AVANSVAL' +*!* DO REDAUscVAL WITH 'SCc="409 " ','RCLI','M.NUME','AVANSVAL' + +*!* SELECT rcli +*!* REPLACE ALL totdeb WITH precdeb+platit,; +*!* totcred WITH preccred+achizit,; +*!* totavans WITH precavans+avans +*!* REPLACE ALL totVALdeb WITH precVALdeb+PLATIVAL,; +*!* totVALcre WITH precVALcre+ACHIZITVAL,; +*!* totavansV WITH precavansV+AVANSVAL + +*!* *Do suprapune WITH 'FURNIZOR','rcli' +*!* SELECT FURNIZOR +*!* IF FLOCK() +*!* DELETE ALL +*!* APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +*!* ENDIF +*!* UNLOCK +*!* USE IN rcli +*!* USE IN FURNIZORU + +*!* SELECT FURNIZOR +*!* SET ORDER TO TAG NUME +*!* RETURN + + +*_________________________________________ +PROCEDURE VERBAL +LOCAL btotdeb,btotcred,bpreccred,bprecdeb,dateA,dateb,tsuma,ttotdeb,ttotcred +*i=1 +*STARE=1 +*orm=createobj('textmult') +OTEXT=CREATE('text_TREE') +STARE=1 + +CLOSE DATABASE +SELECT 0 +USE datEAN\calendar.DBF; +AGAIN ALIAS calendar ; +ORDER 0 +btotdeb=0 +btotcred=0 +bprecdeb=0 +bpreccred=0 +SELE calendar +SCAN + SCATTER MEMVAR + dateA=calefirma+'\an'+m.an+'\'+'date'+M.nl + + SELE 0 + USE &dateA\BAL.DBF SHARED + SELE 0 + USE &dateA\act.DBF SHARED + SELE BAL + SUM precdeb,preccred,RULDEB,RULCRED TO bprecdeb,bpreccred,ttotdeb,ttotcred + SELE act + SUM suma TO tsuma + + IF ttotdeb# tsuma + m.DENUMIRE='Diferente pe debit in luna '+M.nl+' '+M.an + DO mesajt WITH M.DENUMIRE +* WAIT WIND 'Diferente pe debit in luna '+M.NL+' '+M.AN + ENDIF + + IF ttotcred# tsuma + m.DENUMIRE='Diferente pe credit' + DO mesajt WITH M.DENUMIRE +* WAIT WIND 'Diferente pe credit' + ENDIF + + SELE BAL + IF btotdeb# bprecdeb OR btotcred # bpreccred + m.DENUMIRE='Eroare de preluare in luna '+M.nl+' '+M.an + DO mesajt WITH M.DENUMIRE +* WAIT WIND 'Eroare de preluare in luna '+M.NL+' '+M.AN + ELSE + m.DENUMIRE='Preluare corecta in luna '+M.nl+' '+M.an + DO mesajt WITH M.DENUMIRE +* WAIT WIND 'Preluare corecta in luna '+M.NL+' '+M.AN + ENDIF + + IF M.nl='12' + SUM SOLDDEB,SOLDCRED TO btotdeb,btotcred + ELSE + SUM totdeb,totcred TO btotdeb,btotcred + ENDIF + + SELE BAL + USE + SELE act + USE +ENDSCAN + +IF STARE!=1 + OTEXT.DEUNDE='C' + OTEXT.label10.CAPTION='RAPORT VERIFICARE BALANTA' + OTEXT.CMDLIST1.VISIBLE=.F. + OTEXT.CMDLIST2.VISIBLE=.F. + OTEXT.CMDRENUNT1.VISIBLE=.F. + OTEXT.SHOW(1) +ENDIF + +DO TOTV.PRG +RETURN + + +*_________________________________________ +PROCEDURE vercasa +LOCAL m.ban + +STORE 0 TO TINCASARI,TPLATI +m.ban='' +SELECT BAL +SEEK ('5311 ') +SCATTER MEMVAR +SELE CASA +SUM INCASARI,PLATI TO m.TINCASARI,M.TPLATI +IF M.TINCASARI-M.TPLATI# M.SOLDDEB +***WAIT WINDOWS 'DIFERENTA LA CASA '+STR(M.TINCASARI-M.TPLATI-M.SOLDDEB,10) + DO mesaj WITH 'Diferenta la casa: '+STR(M.TINCASARI-M.TPLATI-M.SOLDDEB,10),'' + +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE LA CASA IN LUNA '+NL+' ANUL '+M.AN + DO mesaj WITH 'Nu sunt deferente la casa in luna: '+nl+' '+M.an,'' + +*** +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE verBANCA +LOCAL m.ban + +STORE 0 TO TINCASARI,TPLATI +m.ban='' +SELECT BAL +SEEK ('5121 ') +SCATTER MEMVAR +SELE BANCA +SUM INCASARI,PLATI TO m.TINCASARI,M.TPLATI +IF M.TINCASARI-M.TPLATI# M.SOLDDEB +***WAIT WINDOWS 'DIFERENTA LA BANCA IN VALUTA '+STR(M.TINCASARI-M.TPLATI-M.SOLDDEB,10) + DO mesaj WITH 'Diferenta la banca in valuta: '+STR(M.TINCASARI-M.TPLATI-M.SOLDDEB,10),'' + +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE LA BANCA IN VALUTA IN LUNA '+NL+' ANUL '+M.AN + DO mesaj WITH 'Nu sunt deferente la banca in valuta in luna: '+nl+'$'+M.an,'' + +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE verVALBANCA +LOCAL m.ban + +STORE 0 TO TINCASARI,TPLATI +m.ban='' +SELECT BAL +SEEK ('5124 ') +SCATTER MEMVAR +SELE BANCAVAL +SUM INCASARI,PLATI TO m.TINCASARI,M.TPLATI +IF M.TINCASARI-M.TPLATI# M.SOLDDEB +***WAIT WINDOWS 'DIFERENTA LA BANCA '+STR(M.TINCASARI-M.TPLATI-M.SOLDDEB,10) + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta la banca: '+STR(M.TINCASARI-M.TPLATI-M.SOLDDEB,10) + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE LA BANCA IN LUNA '+NL+' ANUL '+M.AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Nu sunt diferente la banca in luna: '+nl+' '+M.an + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE VERCUMP +SELE CUMP +SUM totctva,neimpozab,totftvaI,tvaI,totftvaM,tvaM; +TO m.Stotctva,m.Sneimpozab,m.StotftvaI,m.StvaI,; +M.StotftvaM,m.StvaM + +m.ADUN=m.Sneimpozab+m.StotftvaI+m.StvaI+; +M.StotftvaM+m.StvaM + +SELE BAL +SEEK '401 ' +SCATTER MEMVAR +m.f401=m.RULCRED +SEEK '404 ' +SCATTER MEMVAR +m.f404=m.RULCRED +m.f401404=m.f401+m.f404 +IF M.Stotctva-M.ADUN#0 +***WAIT WINDOWS 'DIFERENTA ESTE DE '+STR(M.STOTCTVA-M.ADUN,12,0) + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta este: '+STR(M.Stotctva-M.ADUN,12,0) + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +IF M.Stotctva-M.f401404#0 +***WAIT WINDOWS 'DIFERENTA FATA DE 401+404 ESTE DE '+STR(M.STOTCTVA-M.f401404,12,0)+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta fata de 401+404 este: '+STR(M.Stotctva-M.f401404,12,0) + ot.label3.CAPTION='in luna '+nl+' '+an + ot.SHOW(1) +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE FATA DE 401+404'+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Nu sunt diferente fata de 401+404'+' in luna '+nl+' '+an + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE VERVANZ +SELE VANZ +SUM totctva,neimpozab,totftvaI,tvaI,totftvaM,tvaM; +TO m.Stotctva,m.Sneimpozab,m.StotftvaI,m.StvaI,; +M.StotftvaM,m.StvaM + +m.ADUN=m.Sneimpozab+m.StotftvaI+m.StvaI+; +M.StotftvaM+m.StvaM +SELE BAL +SEEK '411 ' +SCATTER MEMVAR +m.f411=m.RULDEB + +IF M.Stotctva-M.ADUN#0 +***WAIT WINDOWS 'DIFERENTA ESTE DE '+STR(M.STOTCTVA-M.ADUN,12,0) + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta este de: '+STR(M.Stotctva-M.ADUN,12,0) + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +IF M.Stotctva-M.f411#0 +***WAIT WINDOWS 'DIFERENTA FATA DE 411 ESTE DE '+STR(M.STOTCTVA-M.f411,12,0)+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta fata de 411 este de: '+STR(M.Stotctva-M.f411,12,0) + ot.label3.CAPTION='in luna '+nl+' '+an + ot.SHOW(1) +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE FATA DE 411'+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Nu sunt diferente fata de 411 in luna: '+nl+' '+an + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE VERFUR +SELE FURNIZOR +SUM achizit,platit,avans TO M.TACHIZIT,M.TPLATIT,M.TAVANS +SELE BAL +SEEK '401 ' +SCATTER MEMVAR +m.SOLD=M.SOLDCRED +SEEK '404 ' +SCATTER MEMVAR +m.SOLD=M.SOLDCRED+M.SOLD +IF M.SOLD # m.TACHIZIT-M.TPLATIT +***WAIT WINDOWS 'DIFERENTA LA SOLD ESTE DE '+STR(M.SOLD+M.TPLATIT-M.TACHIZIT)+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta la sold este '+STR(M.SOLD+M.TPLATIT-M.TACHIZIT) + ot.label3.CAPTION='in luna '+nl+' '+an + ot.SHOW(1) +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE LA FURNIZORI'+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Nu sunt diferente la furnizori'+' in luna '+nl+' '+an + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE VERCLI +SELECT clienti + +SUM avans,incasat,productie TO m.SUM1,M.SUM2,M.SUM3 +m.SUM4=m.SUM3-M.SUM2 +SELE BAL +SEEK '411 ' +SCATTER MEMVAR + +IF M.SOLDDEB # M.SUM3-M.SUM2 +***WAIT WINDOWS 'DIFERENTA IN SOLD FATA DE 411 ESTE DE '+STR(M.SOLDDEB-M.SUM3+M.SUM2)+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta in sold fata de 411 este '+STR(M.SOLDDEB-M.SUM3+M.SUM2) + ot.label3.CAPTION='in luna '+nl+' '+an + ot.SHOW(1) +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE LA CLIENTI'+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Nu sunt diferente la clienti '+' in luna '+nl+' '+an + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +RETURN + + +*_________________________________________ +PROCEDURE VERACHI +SELECT ACHIT542 +SUM LUAT,DAT TO m.SUM1,M.SUM2 +m.SUM3=M.SUM1-M.SUM2 +SELE BAL +SEEK '542 ' +SCATTER MEMVAR +IF M.SOLDDEB # M.SUM3 +***WAIT WINDOWS 'DIFERENTA SOLDULUI CONT.542 ESTE DE '+STR(M.SOLDDEB-M.SUM3)+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Diferenta soldului cont.542 este de: '+STR(M.SOLDDEB-M.SUM3) + ot.label3.CAPTION='in luna '+nl+' '+an + ot.SHOW(1) +*** +ELSE +***WAIT WINDOWS 'NU SUNT DIFERENTE LA 542'+' IN LUNA '+NL+' ANUL '+AN + ot=CREATEOBJ("text") + ot.label2.CAPTION='Nu sunt diferente la 542'+' in luna: '+nl+' '+an + ot.label3.VISIBLE=.F. + ot.SHOW(1) +*** +ENDIF +RETURN + + +*_________________________________________________________________ +PROCEDURE REFCasa +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + + +USE &dateA\casanume IN 0 SHARED ALIAS CASANUMEP +IF TYPE('casanumep.precdeb') # 'U' + SELECT casa, precdeb + incasari as precdeb, preccred + plati as preccred FROM casanumeP ; + INTO CURSOR tprec ORDER BY casa +ELSE + SELECT casa, incasari as precdeb, plati as preccred FROM casanumeP ; + INTO CURSOR tprec ORDER BY casa +ENDIF + +SELE CASA +IF FLOCK() + DELETE ALL + m.casa = 'SOLD' + m.DATAIREG = {} + m.COD = -1 + m.INCASARI = 0 + m.PLATI = 0 + m.scd = '' + m.scc = '' + SELE tprec + SCAN + SCATTER MEMVAR + SELE CASA + GOTO BOTTOM + APPE BLANK + m.INCASARI=M.precdeb-M.preccred + m.PLATI=0 + GATHER MEMVAR + SELE tprec + ENDSCAN + UNLOCK +ENDIF + +SELECT cod, dataireg, nume_3 as casa, scd, scc,; + IIF(scd = '5311', suma, 00000000000000) as incasari, ; + IIF(scc = '5311', suma, 00000000000000) as plati ; + FROM act WHERE scd = '5311' OR scc = '5311' ; + INTO CURSOR tact + +SELECT casa +APPEND FROM DBF('tact') +USE IN tact + + +SELECT CASANUME +IF FLOCK() + DELE ALL + APPEND FROM DBF('tprec') + + SELECT nume_3 as casa, ; + sum(IIF(scd = '5311', suma, 00000000000000)) as incasari, ; + sum(IIF(scc = '5311', suma, 00000000000000)) as plati ; + FROM act WHERE scd = '5311' OR scc = '5311' ; + INTO CURSOR tact; + GROUP BY 1 + + + SELECT tact + SCAN + SCATTER NAME ot + SELECT casanume + LOCATE FOR ALLTRIM(casa) = ALLTRIM(ot.casa) + IF !FOUND() + APPEND blank + REPLACE casa WITH ot.casa + ENDIF + REPLACE incasari WITH incasari + ot.incasari, plati WITH plati + ot.plati + SELECT tact + ENDSCAN + +UNLOCK +ENDIF + +IF USED('tact') + USE IN tact +ENDIF +USE IN tprec +USE IN CASANUMEP + +*!* SELE act +*!* SCAN FOR scd='5311' +*!* SCATTER MEMVAR +*!* IF LEFT(m.nume_3,2)=' ' +*!* REPL nume_3 WITH 'CENTRALA' +*!* m.nume_3='CENTRALA' +*!* ENDIF +*!* SELE CASA +*!* m.CASA=M.nume_3 +*!* m.INCASARI=M.suma +*!* m.PLATI=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN + +*!* SCAN FOR scc='5311' +*!* SCATTER MEMVAR +*!* IF LEFT(m.nume_3,2)=' ' +*!* REPL nume_3 WITH 'CENTRALA' +*!* m.nume_3='CENTRALA' +*!* ENDIF +*!* SELE CASA +*!* m.CASA=M.nume_3 +*!* m.PLATI=M.suma +*!* m.INCASARI=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN +*!* ENDIF +****WAIT WIND 'J' + + +*!* SELE 0 +*!* USE &DATE\casanume + + +*!* IF FLOCK() + +*!* SELE CASA +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE casanume +*!* LOCA FOR CASA=ALLTRIM(M.CASA) +*!* IF NOT FOUND() +*!* GOTO BOTTOM +*!* APPE BLANK +*!* REPL CASA WITH M.CASA +*!* ENDIF +*!* SELE CASA +*!* ENDSCAN + +*!* SELE casanume +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE CASA +*!* SUM INCASARI,PLATI TO M.INCASARI,M.PLATI FOR ALLTRIM(CASA)=ALLTRIM(M.CASA) +*!* SELE casanume + +*!* REPL INCASARI WITH M.INCASARI +*!* REPL PLATI WITH M.PLATI +*!* SELE casanume +*!* ENDSCAN +*!* ENDIF + +*!* UNLOCK IN CASA +*!* UNLOCK IN casanume + +SELE CASA +SET ORDER TO TAG DATAIREG +RETURN + + + + + + +*__________________________________________________ +PROCEDURE REFBANCA +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +USE &dateA\bannume IN 0 SHARED ALIAS banNUMEP +IF TYPE('bannumep.precdeb') # 'U' + SELECT nume_2, precdeb + incasari as precdeb, preccred + plati as preccred FROM bannumeP ; + INTO CURSOR tprec ORDER BY nume_2 +ELSE + SELECT nume_2, incasari as precdeb, plati as preccred FROM bannumeP ; + INTO CURSOR tprec ORDER BY nume_2 +ENDIF + +SELE banca +IF FLOCK() + DELETE ALL + m.DATAIREG = {} + m.COD = -1 + m.INCASARI = 0 + m.PLATI = 0 + m.scd = '' + m.scc = '' + SELE tprec + SCAN + SCATTER MEMVAR + m.INCASARI = M.precdeb-M.preccred + m.PLATI = 0 + m.banca = m.nume_2 + SELE banca + GOTO BOTTOM + APPE BLANK + GATHER MEMVAR + SELE tprec + ENDSCAN + UNLOCK +ENDIF + +SELECT cod, dataireg, nume_2 as banca, scd, scc,; + IIF(scd = '5121', suma, 00000000000000) as incasari, ; + IIF(scc = '5121', suma, 00000000000000) as plati ; + FROM act WHERE scd = '5121' OR scc = '5121' ; + INTO CURSOR tact + +SELECT banca +APPEND FROM DBF('tact') +USE IN tact + + +SELECT banNUME +IF FLOCK() + DELE ALL + APPEND FROM DBF('tprec') + + SELECT nume_2 as banca, ; + sum(IIF(scd = '5121', suma, 00000000000000)) as incasari, ; + sum(IIF(scc = '5121', suma, 00000000000000)) as plati ; + FROM act WHERE scd = '5121' OR scc = '5121' ; + INTO CURSOR tact; + GROUP BY 1 + + + SELECT tact + SCAN + SCATTER NAME ot + SELECT bannume + LOCATE FOR ALLTRIM(nume_2) = ALLTRIM(ot.banca) + IF !FOUND() + APPEND blank + REPLACE nume_2 WITH ot.banca + ENDIF + REPLACE incasari WITH incasari + ot.incasari, plati WITH plati + ot.plati + SELECT tact + ENDSCAN + +UNLOCK +ENDIF + +IF USED('tact') + USE IN tact +ENDIF +USE IN tprec +USE IN banNUMEP + +*!* SELE BANCA +*!* SET ORDER TO TAG COD +*!* IF FLOCK() +*!* DELE ALL + + +*!* SELE BANNUME +*!* USE +*!* SELE 0 +*!* USE &dateA\BANNUME + +*!* m.DATAIREG={} +*!* m.COD=-1 +*!* m.INCASARI=0 +*!* m.PLATI=0 +*!* m.scd='' +*!* m.scc='' +*!* SELE BANNUME +*!* SCAN +*!* SCATTER MEMVAR +*!* m.BANCA=m.nume_2 +*!* SELE BANCA +*!* GOTO BOTTOM +*!* APPE BLANK +*!* m.INCASARI=M.INCASARI-M.PLATI +*!* m.PLATI=0 +*!* GATHER MEMVAR +*!* SELE BANNUME +*!* ENDSCAN +*!* SELE BANNUME +*!* USE +*!* SELE BANCA +*!* m.BANCA='BANCA COMPENSARI' +*!* m.INCASARI=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR + +*!* SELE act +*!* SCAN FOR scd='5121' +*!* SCATTER MEMVAR +*!* SELE BANCA +*!* m.BANCA=M.nume_2 +*!* m.INCASARI=M.suma +*!* m.PLATI=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN + +*!* SCAN FOR scc='5121' +*!* SCATTER MEMVAR +*!* SELE BANCA +*!* m.BANCA=M.nume_2 +*!* m.PLATI=M.suma +*!* m.INCASARI=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN +*!* ENDIF + + +*!* SELE 0 +*!* USE &DATE\BANNUME +*!* IF FLOCK() +*!* DELE ALL +*!* &&&exclusive +*!* &&&zap + +*!* SELE BANCA +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE BANNUME +*!* LOCA FOR nume_2=ALLTRIM(M.BANCA) +*!* IF NOT FOUND() +*!* GOTO BOTTOM +*!* APPE BLANK +*!* REPL nume_2 WITH M.BANCA +*!* ENDIF +*!* SELE BANCA +*!* ENDSCAN + +*!* SELE BANNUME +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE BANCA +*!* SUM INCASARI,PLATI TO M.INCASARI,M.PLATI FOR BANCA=M.nume_2 +*!* SELE BANNUME +*!* REPL INCASARI WITH M.INCASARI +*!* REPL PLATI WITH M.PLATI +*!* SELE BANNUME +*!* ENDSCAN +*!* ENDIF +*!* UNLOCK IN BANCA +*!* UNLOCK IN BANNUME + +SELE BANCA +SET ORDER TO TAG DATAIREG +RETURN + + + + +*_________________________________________ +PROCEDURE REFBancaVal && REFVALBANCA +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + + +USE &dateA\banvnume IN 0 SHARED ALIAS banvnumeP +IF TYPE('banvnumep.precdeb') # 'U' + SELECT nume_3, numeval, ; + precdeb + incasari as precdeb, preccred + plati as preccred, ; + precvaldeb + incasval as precvaldeb, precvalcre + platival as precvalcre ; + FROM banvnumeP ; + INTO CURSOR tprec ORDER BY nume_3 +ELSE + SELECT nume_3, numeval, incasari as precdeb, plati as preccred, incasval as precvaldeb, platival as precvalcre ; + FROM banvnumeP ; + INTO CURSOR tprec ORDER BY nume_3 +ENDIF + +SELE bancaval +IF FLOCK() + DELETE ALL + m.DATAIREG={} + m.COD=-1 + m.INCASARI=0 + m.PLATI=0 + m.incasval=0 + m.platival=0 + m.scd='' + m.scc='' + m.CURSSCHIMB=0 + m.CURSBNR=0 + + SELE tprec + SCAN + SCATTER MEMVAR + m.INCASARI = M.precdeb-M.preccred + m.PLATI = 0 + m.INCASval = M.precvaldeb-M.precvalcre + m.PLATIval = 0 + m.banca = m.nume_3 + SELE bancaval + GOTO BOTTOM + APPE BLANK + GATHER MEMVAR + SELE tprec + ENDSCAN + UNLOCK +ENDIF + +SELECT cod, dataireg, nume_3 as banca, scd, scc, suma_3 as cursschimb, nume_4 as numeval, ; + IIF(scd = '5124', suma, 00000000000000) as incasari, ; + IIF(scc = '5124', suma, 00000000000000) as plati, ; + IIF(scd = '5124', suma_2, 000000000000.00) as incasval, ; + IIF(scc = '5124', suma_2, 000000000000.00) as platival ; + FROM act WHERE scd = '5124' OR scc = '5124' ; + INTO CURSOR tact + +SELECT bancaval +APPEND FROM DBF('tact') +USE IN tact + + +SELECT banvnume +IF FLOCK() + DELE ALL + APPEND FROM DBF('tprec') + +SELECT nume_3 as bancaval, nume_4 as numeval, ; + sum(IIF(scd = '5124', suma, 00000000000000)) as incasari, ; + sum(IIF(scc = '5124', suma, 00000000000000)) as plati, ; + sum(IIF(scd = '5124', suma_2, 000000000000.00)) as incasval, ; + sum(IIF(scc = '5124', suma_2, 000000000000.00)) as platival ; + FROM act WHERE scd = '5124' OR scc = '5124' ; + INTO CURSOR tact; + GROUP BY 1 + + + SELECT tact + SCAN + SCATTER NAME ot + SELECT banvnume + LOCATE FOR ALLTRIM(nume_3) = ALLTRIM(ot.bancaval) + IF !FOUND() + APPEND blank + REPLACE nume_3 WITH ot.bancaval + REPLACE numeval WITH ot.numeval + ENDIF + REPLACE incasari WITH incasari + ot.incasari, plati WITH plati + ot.plati + REPLACE incasval WITH incasval + ot.incasval, platival WITH platival + ot.platival + SELECT tact + ENDSCAN + +UNLOCK +ENDIF + +IF USED('tact') + USE IN tact +ENDIF +USE IN tprec +USE IN banvnumeP + +*!* SELE BANCAVAL +*!* IF FLOCK() +*!* DELE ALL +*!* SET ORDER TO TAG COD +*!* &&&ZAP + +*!* SELE BANVNUME +*!* USE + +*!* SELE 0 +*!* USE &dateA\BANVNUME + +*!* m.DATAIREG={} +*!* m.COD=-1 +*!* m.INCASARI=0 +*!* m.PLATI=0 +*!* m.incasval=0 +*!* m.platival=0 +*!* m.scd='' +*!* m.scc='' +*!* m.CURSSCHIMB=0 +*!* m.CURSBNR=0 +*!* SELE BANVNUME +*!* SCAN +*!* SCATTER MEMVAR +*!* m.BANCA=m.nume_3 +*!* SELE BANCAVAL +*!* APPE BLANK +*!* m.INCASARI=M.INCASARI-M.PLATI +*!* m.incasval=M.incasval-M.platival +*!* m.PLATI=0 +*!* m.platival=0 +*!* GATHER MEMVAR +*!* SELE BANVNUME +*!* ENDSCAN + +*!* SELE BANVNUME +*!* USE +*!* SELE BANCAVAL +*!* m.BANCA='BANCA COMPENSARI' +*!* m.INCASARI=0 +*!* m.incasval=0 +*!* APPE BLANK +*!* GATHER MEMVAR + +*!* SELE act +*!* SCAN FOR scd='5124' +*!* SCATTER MEMVAR +*!* SELE BANCAVAL +*!* m.BANCA=M.nume_3 +*!* m.INCASARI=M.suma + +*!* m.incasval=M.suma_2 +*!* m.CURSSCHIMB=M.SUMA_3 + +*!* m.SBNR=SUBSTR(M.EXPLICATIA,8,14) +*!* m.CURSBNR=VAL(M.SBNR) +*!* m.PLATI=0 +*!* m.platival=0 +*!* m.NUMEVAL=m.nume_4 +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN + +*!* SELE act +*!* SCAN FOR scc='5124' +*!* SCATTER MEMVAR +*!* SELE BANCAVAL +*!* m.BANCA=M.nume_3 +*!* m.PLATI=M.suma +*!* m.platival=M.suma_2 +*!* m.CURSSCHIMB=M.SUMA_3 +*!* m.SBNR=SUBSTR(M.EXPLICATIA,8,14) +*!* m.CURSBNR=VAL(M.SBNR) +*!* m.INCASARI=0 +*!* m.incasval=0 +*!* m.NUMEVAL=m.nume_4 +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN +*!* ENDIF +*!* &&REFACERE BANVNUME DUPA BANCAVAL===================== +*!* SELE 0 +*!* USE &DATE\BANVNUME +*!* IF FLOCK() +*!* DELE ALL + +*!* &&NUMELE BANCILOR============= +*!* SELE BANCAVAL +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE BANVNUME +*!* LOCA FOR nume_3=M.BANCA +*!* IF NOT FOUND() +*!* GOTO BOTTOM +*!* APPE BLANK +*!* REPL nume_3 WITH M.BANCA +*!* ENDIF +*!* SELE BANVNUME +*!* REPL NUMEVAL WITH m.NUMEVAL +*!* SELE BANCAVAL +*!* ENDSCAN +*!* &&VALORILE========== +*!* SELE BANVNUME +*!* SCAN +*!* SCATTER FIEL nume_3 MEMVAR +*!* SELE BANCAVAL +*!* SUM INCASARI,PLATI,incasval,platival TO M.INCASARI,M.PLATI,M.incasval,M.platival FOR ALLT(BANCA)=ALLT(M.nume_3) +*!* IF EMPTY(ALLT(M.nume_3)) +*!* SUM INCASARI,PLATI,incasval,platival TO M.INCASARI,M.PLATI,M.incasval,M.platival FOR EMPTY(ALLT(BANCA)) +*!* ENDIF +*!* SELE BANVNUME +*!* REPL INCASARI WITH M.INCASARI +*!* REPL PLATI WITH M.PLATI +*!* REPL incasval WITH M.incasval +*!* REPL platival WITH M.platival +*!* SELE BANVNUME +*!* ENDSCAN +*!* ENDIF +*!* UNLOCK IN BANCA +*!* UNLOCK IN BANCAVAL + +SELE BANCAVAL +SET ORDER TO TAG DATAIREG +RETURN + + + + +*__________________________________________________ +PROCEDURE REFCec +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + + +USE &dateA\CECnume IN 0 SHARED ALIAS CECNUMEP +IF TYPE('CECnumep.precdeb') # 'U' + SELECT CEC, precdeb + INCARCAT as precdeb, preccred + plati as preccred FROM CECnumeP ; + INTO CURSOR tprec ORDER BY CEC +ELSE + SELECT CEC, INCARCAT as precdeb, plati as preccred FROM CECnumeP ; + INTO CURSOR tprec ORDER BY CEC +ENDIF + +SELE CEC +IF FLOCK() + DELETE ALL + m.CEC = 'SOLD' + m.DATAIREG = {} + m.COD = -1 + m.INCARCAT = 0 + m.PLATI = 0 + m.scd = '' + m.scc = '' + SELE tprec + SCAN + SCATTER MEMVAR + SELE CEC + GOTO BOTTOM + APPE BLANK + m.INCARCAT=M.precdeb-M.preccred + m.PLATI=0 + GATHER MEMVAR + SELE tprec + ENDSCAN + UNLOCK +ENDIF + +SELECT cod, dataireg, CEC, scd, scc,; + IIF(scd = '5112', suma, 00000000000000) as INCARCAT, ; + IIF(scc = '5112', suma, 00000000000000) as plati ; + FROM act WHERE scd = '5112' OR scc = '5112' ; + INTO CURSOR tact + +SELECT CEC +APPEND FROM DBF('tact') +USE IN tact + + +SELECT CECNUME +IF FLOCK() + DELE ALL + APPEND FROM DBF('tprec') + + SELECT CEC, ; + sum(IIF(scd = '5112', suma, 00000000000000)) as INCARCAT, ; + sum(IIF(scc = '5112', suma, 00000000000000)) as plati ; + FROM act WHERE scd = '5112' OR scc = '5112' ; + INTO CURSOR tact; + GROUP BY 1 + + + SELECT tact + SCAN + SCATTER NAME ot + SELECT CECnume + LOCATE FOR ALLTRIM(CEC) = ALLTRIM(ot.CEC) + IF !FOUND() + APPEND blank + REPLACE CEC WITH ot.CEC + ENDIF + REPLACE INCARCAT WITH INCARCAT + ot.INCARCAT, plati WITH plati + ot.plati + SELECT tact + ENDSCAN + +UNLOCK +ENDIF + +IF USED('tact') + USE IN tact +ENDIF +USE IN tprec +USE IN CECNUMEP + + + +*!* SELE cec +*!* *set order to tag cod +*!* IF FLOCK() +*!* DELE ALL + + +*!* SELE cecnume +*!* USE +*!* IF !FILE('&DATEA\cecnume.dbf') +*!* COPY FILE &dirgen\_alfa\an0000\date00\cecnume.* TO &dateA\*.* +*!* ENDIF +*!* SELE 0 +*!* USE &dateA\cecnume + +*!* m.DATAIREG={} +*!* m.COD=-1 +*!* m.INcarcat=0 +*!* m.PLATI=0 +*!* m.scd='' +*!* m.scc='' +*!* ********incarcare solduri precedente +*!* SELE cecnume +*!* SCAN +*!* SCATTER MEMVAR +*!* *m.cec=m.explicatia +*!* SELE cec +*!* GOTO BOTTOM +*!* APPE BLANK +*!* m.INcarcat=M.INcarcat-M.PLATI +*!* m.PLATI=0 +*!* GATHER MEMVAR +*!* SELE cecnume +*!* ENDSCAN +*!* SELE cecnume +*!* USE + +*!* **********************incarcare in cec lunca curenta +*!* SELE act +*!* SCAN FOR scd='5112' +*!* SCATTER MEMVAR +*!* SELE cec +*!* m.cec=m.EXPLICATIA +*!* m.INcarcat=M.suma +*!* m.PLATI=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN + +*!* SCAN FOR scc='5112' +*!* SCATTER MEMVAR +*!* SELE cec +*!* m.cec=m.EXPLICATIA +*!* m.PLATI=M.suma +*!* m.INcarcat=0 +*!* GOTO BOTTOM +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN +*!* ENDIF + + +*!* SELE 0 +*!* USE &DATE\cecnume +*!* IF FLOCK() +*!* DELE ALL +*!* &&&exclusive +*!* &&&zap +*!* ********************incarcare denumiri in ccecnume +*!* SELE cec +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE cecnume +*!* LOCA FOR ALLTRIM(cec)=ALLTRIM(M.cec) +*!* IF NOT FOUND() +*!* GOTO BOTTOM +*!* APPE BLANK +*!* REPL cec WITH M.cec +*!* ENDIF +*!* SELE cec +*!* ENDSCAN +*!* *************************incarcare soduri in cecnume +*!* SELE cecnume +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE cec +*!* SUM INcarcat,PLATI TO M.INcarcat,M.PLATI FOR cec=M.cec +*!* SELE cecnume +*!* REPL INcarcat WITH M.INcarcat +*!* REPL PLATI WITH M.PLATI +*!* SELE cecnume +*!* ENDSCAN +*!* ENDIF +*!* UNLOCK IN cec +*!* UNLOCK IN cecnume + +SELE cec +SET ORDER TO TAG DATAIREG +RETURN + + + +*_________________________________________ +PROCEDURE REDAU +PARAMETERS CT,ALI,ETI,CIMP +IF ETI='M.NUME_2' + CIMP1='NUME_2' +ELSE + CIMP1='NUME' +ENDIF + +SELE &ALI +SELE act +SCAN FOR &CT + SCATTER MEMVAR + SELE &ALI + SEEK &ETI + IF FOUND() + REPL &CIMP WITH &CIMP +M.suma +*!* IF INLIST(UPPER(ALI),'FURNIZOR','CLIENTI',"RCLI",'ANA408','CLIENT4118') +*!* REPL COD_FISCAL WITH m.COD_FISCAL +*!* ENDIF + lcCod = m.COD_FISCAL + IF EMPTY(COD_FISCAL) AND !EMPTY(lcCod) + REPLACE COD_FISCAL WITH lcCod + ENDIF + + ELSE + GOTO BOTTOM + APPE BLANK + REPL &CIMP1 WITH &ETI + REPL &CIMP WITH &CIMP +M.suma + IF INLIST(UPPER(ALI),'FURNIZOR','CLIENTI',"RCLI",'ANA408','CLIENT4118') + REPL COD_FISCAL WITH m.COD_FISCAL + ENDIF + GO TOP + ENDIF + SELE act +ENDSCAN +RETURN + + +*_________________________________________ +PROCEDURE REDAUVAL +PARAMETERS CT,ALI,ETI,CIMP +IF ETI='M.NUME_2' + CIMP1='NUME_2' +ELSE + CIMP1='NUME' +ENDIF +SELE &ALI +SELE act +SCAN FOR &CT + SCATTER MEMVAR + IF M.SUMA_3#0 + SELE &ALI + SEEK &ETI + IF FOUND() + REPL &CIMP WITH &CIMP +M.suma_2 + REPLACE NUMEVAL WITH M.nume_4 +*If Inlist(Upper(ALI),'FURNIZOR','CLIENTI') +* REPL COD_FISCAL WITH m.COD_FISCAL +*Endif + ELSE + GOTO BOTTOM + APPE BLANK + REPL &CIMP1 WITH &ETI + REPL &CIMP WITH &CIMP +M.suma_2 + REPLACE NUMEVAL WITH M.nume_4 + REPL COD_FISCAL WITH m.COD_FISCAL + GO TOP + ENDIF + ENDIF + SELE act +ENDSCAN +RETURN + +************ +PROCEDURE REDAUsc +PARAMETERS CT,ALI,ETI,CIMP +IF ETI='M.NUME_2' + CIMP1='NUME_2' +ELSE + CIMP1='NUME' +ENDIF +SELE &ALI +SELE act +SCAN FOR &CT + SCATTER MEMVAR + SELE &ALI + SEEK &ETI + IF FOUND() + REPL &CIMP WITH &CIMP -M.suma + ELSE + GOTO BOTTOM + APPE BLANK + REPL &CIMP1 WITH &ETI + REPL &CIMP WITH &CIMP +M.suma + GO TOP + ENDIF + SELE act +ENDSCAN +RETURN + +************ +PROCEDURE REDAUscVAL +PARAMETERS CT,ALI,ETI,CIMP +IF ETI='M.NUME_2' + CIMP1='NUME_2' +ELSE + CIMP1='NUME' +ENDIF +SELE &ALI +SELE act +SCAN FOR &CT + SCATTER MEMVAR + IF M.SUMA_3#0 + SELE &ALI + SEEK &ETI + IF FOUND() + REPL &CIMP WITH &CIMP -M.suma_2 + REPLACE NUMEVAL WITH M.nume_4 + ELSE + GOTO BOTTOM + APPE BLANK + REPL &CIMP1 WITH &ETI + REPL &CIMP WITH &CIMP +M.suma_2 + REPLACE NUMEVAL WITH M.nume_4 + GO TOP + ENDIF + ENDIF + SELE act +ENDSCAN +RETURN + + + + +*_________________________________________ + +PROCEDURE REFDEBITOR +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\DEBITOR.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'DEBITOR.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\DEBITOR.DBF IN 0 ALIAS DEBITORU + +SELECT DEBITORU + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('DEBITORu.totdeb') = 'U' + SELECT NUME,COD_FISCAL, LUAT AS precdeb, DAT AS preccred FROM DEBITORU INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit, totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit +*REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('DEBITORu.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM DEBITORU INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM DEBITORU INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN DEBITORU + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA + +SELECT NUME, ; +IIF(LEFT(scd,3) = '461', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '461', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '461', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '461', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '461', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('461',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t461 GROUP BY 1, 2, 3 + +SELECT t461 +SCAN + SCATTER NAME o461 + SELECT rcli + SEEK LEFT(o461.NUME,30) + o461.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o461.COD_FISCAL + ENDIF + REPLACE debit WITH debit + o461.debit, credit WITH credit + o461.credit, valdebit WITH valdebit + o461.valdebit, valcredit WITH valcredit + o461.valcredit + ELSE + SEEK LEFT(o461.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o461.acont + REPLACE debit WITH debit + o461.debit, credit WITH credit + o461.credit, valdebit WITH valdebit + o461.valdebit, valcredit WITH valcredit + o461.valcredit + ELSE + APPEND BLANK + GATHER NAME o461 + ENDIF + ENDIF + + SELECT t461 +ENDSCAN +RELEASE o461 +USE IN t461 + +SELECT rcli +REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit &&,totavans WITH precavans+avans +REPLACE ALL totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit &&,TOTAVANSV WITH PRECAVANSV+AVANSVAL + +SELECT DEBITOR +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +SELECT DEBITOR +SET ORDER TO TAG NANA +RETURN + + +*_________________________________________ + +PROCEDURE REFCreditor +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\creditor.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'creditor.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\creditor.DBF IN 0 ALIAS creditorU + +SELECT creditorU + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('creditoru.totdeb') = 'U' + SELECT NUME,COD_FISCAL, DAT AS precdeb, LUAT AS preccred FROM creditorU INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit, totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit +*REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('creditoru.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM creditorU INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM creditorU INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN creditorU + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA +SELECT IIF(LEFT(scc,3) = '462' AND INLIST(LEFT(scd,3),'411','451') AND !EMPTY(nume_2), nume_2, NUME) AS NUME, ; +IIF(LEFT(scd,3) = '462', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '462', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '462', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '462', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '462', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('462',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t462 GROUP BY 1, 2, 3 + +SELECT t462 +SCAN + SCATTER NAME o462 + SELECT rcli + SEEK LEFT(o462.NUME,30) + o462.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o462.COD_FISCAL + ENDIF + REPLACE debit WITH debit + o462.debit, credit WITH credit + o462.credit, valdebit WITH valdebit + o462.valdebit, valcredit WITH valcredit + o462.valcredit + ELSE + SEEK LEFT(o462.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o462.acont + REPLACE debit WITH debit + o462.debit, credit WITH credit + o462.credit, valdebit WITH valdebit + o462.valdebit, valcredit WITH valcredit + o462.valcredit + ELSE + APPEND BLANK + GATHER NAME o462 + ENDIF + ENDIF + + SELECT t462 +ENDSCAN +RELEASE o462 +USE IN t462 + +SELECT rcli +REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit &&,totavans WITH precavans+avans +REPLACE ALL totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit &&,TOTAVANSV WITH PRECAVANSV+AVANSVAL + +SELECT creditor +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +SELECT creditor +SET ORDER TO TAG NANA +RETURN + +*_________________________________________ +PROCEDURE VERdebitor +SELECT DEBITOR +SUM LUAT,DAT TO m.SUM1,M.SUM2 +m.SUM3=M.SUM1-M.SUM2 +SELE BAL +SEEK '461 ' +SCATTER MEMVAR +IF M.SOLDDEB # M.SUM3 + DO mesajval WITH 'Diferenta soldului cont.461 este de: ',M.SOLDDEB-M.SUM3 +*** +ELSE + DO mesaj WITH 'Nu sunt diferente la 461',' in luna: '+nl+' '+an +*** +ENDIF +RETURN + +*_________________________________________ +PROCEDURE VERcreditor +SELECT creditor +SUM LUAT,DAT TO m.SUM1,M.SUM2 +m.SUM3=M.SUM1-M.SUM2 +SELE BAL +SEEK '462 ' +SCATTER MEMVAR +IF M.SOLDCRED # M.SUM3 + DO mesajval WITH 'Diferenta soldului cont.462 este de: ',M.SOLDDEB-M.SUM3 +*** +ELSE + DO mesaj WITH 'Nu sunt diferente la 462',' in luna: '+nl+' '+an +*** +ENDIF +RETURN + + + +*____________________________________________________________________________________________________________ +*** INCEPUT PROCEDURA REFCUMP +PROCEDURE REFCump && refcumpnou + + +LOCAL lnTipTVA,llProcTva + + +llProcTva=.F. +SELECT act +IF TYPE('act.proc_tva')!="U" && daca exista campul proc_tva + llProcTva=.T. +ENDIF +DO CASE + CASE m.ctvam = 1 AND m.ctvai = 1 OR !llProcTva && firma neplatitoare de TVA + lnTipTVA = 1 + CASE (m.ctvam >1 AND m.ctvai = m.ctvam) OR !llProcTva && firma platitoare de TVA inainte de TVA REDUS + lnTipTVA = 2 + CASE (m.ctvam >=1 AND m.ctvai != m.ctvam) AND llProcTva && firma platitoare de TVA cu TVA REDUS adica am coloana proc_tva + lnTipTVA = 3 + OTHERWISE && consider firma platitoare de TVA inainte de TVA REDUS + lnTipTVA = 2 +ENDCASE + +locCond = [(SCC='401 ' OR SCC='404 ' OR (SCC='4428' AND SCD='4426'))] +IF gle4511 + SELECT * FROM act WHERE (&locCond OR COD IN (SELE DISTINCT COD FROM act WHERE (scc = '4511' AND (scd = '4426' OR !EMPTY(neimpozab))))) AND scc # '767 ' ; + INTO CURSOR tact +ELSE + SELECT * FROM act WHERE &locCond INTO CURSOR tact +ENDIF + + +*!* IF gle4511 +*!* locCond = [(SCC='401 ' OR SCC='404 ' OR (SCC='4428' AND SCD='4426') OR (scc = '4511' and (scd = '4426' or !EMPTY(neimpozab))))] +*!* ELSE +*!* locCond = [(SCC='401 ' OR SCC='404 ' OR (SCC='4428' AND SCD='4426'))] +*!* ENDIF + +SELE CUMP +IF FLOCK() + DELE ALL + + + SELE tact +*SET FILTER TO SCC='401 ' OR SCC='404 ' OR (SCC='4428' AND SCD='4426') +*SET FILTER TO &locCond + + STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA + SCAN FOR fdoc#'Nota modificare stoc' + SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,scc,scd MEMV + SELE CUMP + LOCA FOR NUME=m.NUME AND dataact=m.dataact AND nract=m.nract + IF !FOUND() + SELE CUMP + APPE BLAN + GATH MEMV +* REPLACE scd WITH m.scc && nu-i bine din cauza selectiei : Marfa - Alte achizitii + ENDIF + SELE tact + ENDSCAN +******* +SELECT cump + + + SELE CUMP + SCAN + SCAT MEMV + SELE tact + STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA + IF USED('tact5') + USE IN tact5 + ENDIF + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + SELECT suma,neimpozab,scd,scc FROM tact ; + WHERE NUME=m.NUME AND dataact=m.dataact AND nract=m.nract ; + INTO CURSOR tact5 NOFILTER + OTHERWISE + SELECT suma,neimpozab,scd,scc,IIF(proc_tva=0 AND neimpozab=0,m.ctvam,proc_tva) AS proc_tva FROM tact ; + WHERE NUME=m.NUME AND dataact=m.dataact AND nract=m.nract ; + INTO CURSOR tact5 NOFILTER + + ENDCASE + SELECT tact5 + SCAN + DO CASE + CASE scd='4426' + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + m.tvaM=M.tvaM+suma + OTHERWISE && dupa tva redus + IF proc_tva=m.ctvam OR proc_tva=0 + m.tvaM=M.tvaM+suma + ELSE + IF proc_tva=m.ctvai + m.tvaI=m.tvaI+suma + ENDIF + ENDIF + ENDCASE + + + CASE scd#'4426' + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + m.totftvaM=M.totftvaM+(suma-neimpozab) + OTHERWISE + IF proc_tva=m.ctvam OR (proc_tva=0 AND neimpozab=0) + m.totftvaM=M.totftvaM+(suma-neimpozab) + ELSE + IF proc_tva=m.ctvai + m.totftvaI=M.totftvaI+(suma-neimpozab) + ENDIF + ENDIF + ENDCASE + + + m.neimpozab=m.neimpozab+neimpozab + + IF LEFT(scd,3)='371' + m.scd=scd + ENDIF +*!* IF SCD='635 ' + +*!* m.neimpozab=m.neimpozab+SUMA +*!* DO CASE +*!* CASE INLIST(lnTipTVA,1,2) && inainte de tva redus +*!* m.totftvaM=m.totftvaM-SUMA +*!* OTHERWISE +*!* IF proc_tva=m.ctvam OR (proc_tva=0 AND neimpozab=0) +*!* m.totftvaM=m.totftvaM-SUMA +*!* ELSE +*!* IF proc_tva=m.ctvai +*!* m.totftvaI=m.totftvaI-SUMA +*!* ENDIF +*!* ENDIF +*!* ENDCASE +*!* ENDIF + ENDCASE + + + ENDSCAN + IF USED('tact5') + USE IN tact5 + ENDIF + +*!* Scan For NUME=m.NUME And dataact=m.dataact And nract=m.nract +*!* Do Case +*!* Case SCD='4426' +*!* m.tvaM=M.tvaM+SUMA + +*!* Case SCD#'4426' +*!* m.totftvaM=M.totftvaM+(SUMA-neimpozab) +*!* m.neimpozab=m.neimpozab+neimpozab +*!* If Left(SCD,3)='371' +*!* m.SCD=SCD +*!* Endif +*!* If SCD='635 ' +*!* m.neimpozab=m.neimpozab+SUMA +*!* m.totftvaM=m.totftvaM-SUMA +*!* Endif +*!* Endcase +*!* ENDSCAN + + +*********** + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + m.totctva=M.tvaM+M.totftvaM+M.neimpozab + SELE CUMP + REPL tvaM WITH M.tvaM; + totftvaM WITH M.totftvaM; + neimpozab WITH M.neimpozab; + totctva WITH M.totctva + OTHERWISE + m.totctva=M.tvaM+M.totftvaM+m.tvaI+m.totftvaI+M.neimpozab + SELE CUMP + REPL tvaM WITH M.tvaM; + totftvaM WITH M.totftvaM; + tvaI WITH M.tvaI; + totftvaI WITH M.totftvaI; + neimpozab WITH M.neimpozab; + totctva WITH M.totctva + ENDCASE +*************************************** + SELECT FURNIZOR + LOCATE FOR NUME = m.NUME + IF FOUND() + lcCodFiscal = COD_FISCAL + SELECT CUMP + REPLACE COD_FISCAL WITH lcCodFiscal + ENDIF +**************************************** + SELECT CUMP + + ENDSCAN + +************** + + SELE act +* SCAN FOR SCD='408 ' + SCAN FOR scd='4426' AND scc='4428' &&&&&&& modificare la 11 martie 2004, Georgiana + SCAT MEMV + SELE CUMP + LOCA FOR NUME=m.NUME AND dataact=m.dataact AND nract=m.nract + IF FOUND() + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus +* REPL totftvaM WITH ROUND(tvaM/(m.ctvam-1),0) + IF totftvaM # 0 && pt 4426 = 4428 fara baza + REPL totftvaM WITH totftvaM - m.suma + ENDIF + REPL totctva WITH totftvaM+tvaM+neimpozab + OTHERWISE + IF m.proc_tva=m.ctvam OR (m.proc_tva=0 AND m.neimpozab=0) +* REPL totftvaM WITH ROUND(tvaM/(m.ctvam-1),0) + IF totftvaM # 0 && pt 4426 = 4428 fara baza + REPLACE totftvaM WITH totftvaM - m.suma + ENDIF + ELSE + IF m.proc_tva=m.ctvai +* REPLACE totftvai WITH ROUND(tvai/(m.ctvai-1),0) + IF totftvaI # 0 && pt 4426 = 4428 fara baza + REPLACE totftvaI WITH totftvaI - m.suma + ENDIF + ENDIF + ENDIF + REPL totctva WITH totftvaM+tvaM+totftvaI+tvaI+neimpozab + ENDCASE + + ENDIF + SELE act + ENDSCAN + + + IF gle4511 + LlCondScan = [INLIST(LEFT(scd, 3), '401', '404', '451')] + ELSE + LlCondScan = [INLIST(LEFT(scd, 3), '401', '404')] + ENDIF + SELE act + SET FILTER TO + SCAN FOR scc='767 ' AND &LlCondScan &&INLIST(LEFT(scd, 3), '401', '404', '451') + + SCAT MEMV + SELE CUMP + LOCA FOR nract=m.nract AND NUME=m.NUME +*REPL TOTFTVAM WITH TOTFTVAM-TVAM+neimpozab + IF FOUND() + IF m.neimpozab#0 + REPLACE neimpozab WITH neimpozab-M.suma + ELSE + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + REPL totftvaM WITH totftvaM-m.suma + OTHERWISE + IF M.proc_tva=m.ctvam OR (M.proc_tva=0 AND M.neimpozab=0) + REPL totftvaM WITH totftvaM - m.suma + ELSE + IF M.proc_tva=m.ctvai + REPL totftvaI WITH totftvaI-m.suma + ENDIF + ENDIF + ENDCASE + ENDIF + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + REPL totctva WITH totftvaM+tvaM+neimpozab + OTHERWISE + REPL totctva WITH totftvaM+tvaM+totftvaI+tvaI+neimpozab + ENDCASE + ENDIF + SELE act + ENDSCAN + + SELE act + SET FILTER TO + IF USED('tact') + USE IN tact + ENDIF + +ENDIF +UNLOCK IN CUMP + + +ENDPROC +*** SFARSIT PROCEDURA REFCUMP +*_________________________________________________________________________________________________ +*_________________________________________________________________________________________________ +*** INCEPUT PROCEDURA REFVANZ +PROCEDURE REFVanz +LOCAL lnTipTVA,llProcTva + +llProcTva=.F. +SELECT act +IF TYPE('act.proc_tva')!="U" && daca exista campul proc_tva + llProcTva=.T. +ENDIF +DO CASE + CASE (m.ctvam = 1 AND m.ctvai = 1) OR !llProcTva && firma neplatitoare de TVA + lnTipTVA = 1 + CASE (m.ctvam >1 AND m.ctvai = m.ctvam) OR !llProcTva && firma platitoare de TVA inainte de TVA REDUS + lnTipTVA = 2 + CASE (m.ctvam >=1 AND m.ctvai != m.ctvam) AND llProcTva && firma platitoare de TVA cu TVA REDUS adica am coloana proc_tva + lnTipTVA = 3 + OTHERWISE && consider firma platitoare de TVA inainte de TVA REDUS + lnTipTVA = 2 +ENDCASE + +COPY FILE &dirgen\_alfa\an0000\date00\VANZ.* TO &loc\&nfscurt\tempo\vanz0.* + +USE &loc\&nfscurt\tempo\vanz0 IN 0 ALIAS vanz0 EXCLUSIVE +SELECT vanz0 +INDEX ON NUME+DTOC(dataact)+STR(nract,14)+scd TAG ndn OF &loc\&nfscurt\tempo\vanz0 +SET ORDER TO TAG ndn + + +*!* Sele VANZ +*!* If Flock() +*!* Dele All +SELECT vanz0 + +IF gle4511 + locCond = [(LEFT(SCD,3)='411' AND SCD#'4118') OR (SCD='635 ' AND SCC='4427') OR (scd = '4511' AND (SCC='4427' OR neimpozab # 0))] +ELSE + locCond = [(LEFT(SCD,3)='411' AND SCD#'4118') OR (SCD='635 ' AND SCC='4427')] +ENDIF + +&& adaug inregistrari pt prima oara--------------------------------------------------- +SELECT act +*SET FILTER TO (LEFT(SCD,3)='411' AND SCD#'4118') OR (SCD='635 ' AND SCC='4427') && OR (LEFT(SCD,3)='428' AND SCC='4427') OR (SCD='4428' AND SCC='4427') +SET FILTER TO &locCond +STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA +SCAN + SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,scd MEMV + SELE vanz0 + SEEK m.NUME+DTOC(m.dataact)+STR(m.nract,14)+m.scd + IF !FOUND() + SELE vanz0 + APPEND BLAN + GATH MEMV + ENDIF + SELE act +ENDSCAN + + +SELECT act +SET FILTER TO + +SELECT DISTINCT COD FROM act WHERE scd='461 ' AND (scc='4427' OR neimpozab # 0) INTO CURSOR C461 +SELECT COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,suma,scd FROM act; +WHERE COD IN (SELECT DISTINCT COD FROM C461); +INTO CURSOR CC461 ORDER BY dataact + +SELECT CC461 +STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA +SCAN + SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,scd MEMV + SELE vanz0 + SEEK m.NUME+DTOC(m.dataact)+STR(m.nract,14)+m.scd + IF !FOUND() + SELE vanz0 + APPE BLAN + GATH MEMV + ENDIF + SELE CC461 +ENDSCAN +USE IN CC461 + +*!* SELECT DISTINCT COD FROM ACT WHERE SCC='4118' AND SCD='4427' INTO CURSOR C4118 +*!* SELECT COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,SUMA,SCD FROM ACT; +*!* WHERE COD IN (SELECT DISTINCT COD FROM C4118); +*!* INTO CURSOR CC4118 ORDER BY dataact + +*!* SELECT CC4118 +*!* STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA +*!* SCAN +*!* SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,SCD MEMV +*!* SELE vanz0 +*!* SEEK m.NUME+DTOC(m.dataact)+STR(m.nract,14) +*!* IF !FOUND() +*!* DO CASE +*!* IF scd#4427 +*!* m.totftvam=-suma +*!* ELSE +*!* m.tvam=-suma +*!* ENDIF +*!* ENDCASE +*!* +*!* SELE vanz0 +*!* APPE BLAN +*!* GATH MEMV + +*!* +*!* ENDIF +*!* SELE CC4118 +*!* ENDSCAN +*!* USE IN CC4118 + +SELECT DISTINCT COD FROM act WHERE scc='4118' AND scd='4427' INTO CURSOR C4118 +SELECT COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,SUM(IIF(scd='4427',-suma,0)) AS tvaM ,SUM(IIF(scd#'4427',-suma,0)) AS totftvaM,scd ; +FROM act GROUP BY act.COD ; +WHERE COD IN (SELECT DISTINCT COD FROM C4118); +INTO CURSOR CC4118 ORDER BY dataact + +SELECT CC4118 +STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA +SCAN + SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL,scd,tvaM,totftvaM MEMV + m.totctva=m.totftvaM+m.tvaM + SELE vanz0 + SEEK m.NUME+DTOC(m.dataact)+STR(m.nract,14)+m.scd + IF !FOUND() + SELE vanz0 + APPE BLAN + GATH MEMV + REPLACE scd WITH '4118' + ENDIF + SELE CC4118 +ENDSCAN +USE IN CC4118 +******* + +SELE vanz0 +SCAN FOR scd#'4118' + SCAT MEMV + SELE act + STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA + + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + SELECT suma,neimpozab,scc,scd FROM act WHERE NUME=m.NUME AND dataact=m.dataact AND nract=m.nract; + AND (scd=m.scd OR (scd='4428' AND scc='4427') OR (scd='635 ' AND scc='4427')); + INTO CURSOR act4 + OTHERWISE + SELECT IIF(LEFT(scd,3) # '419', suma, -suma) AS suma, neimpozab, scc, scd,IIF(neimpozab=0 AND proc_tva=0,m.ctvam,proc_tva) AS proc_tva FROM act WHERE NUME=m.NUME AND dataact=m.dataact AND nract=m.nract; + AND (scd=m.scd OR (scd='4428' AND scc='4427') OR (scd='635 ' AND scc='4427') OR INLIST('419',LEFT(scd,3),LEFT(scc,3))); + INTO CURSOR act4 + ENDCASE + + + SELECT act4 + GO TOP + IF (LEFT(scd,3) = '419' AND LEFT(scc,3) = '411') OR (LEFT(scc,3) = '419' AND LEFT(scd,1) = '5') + lnScd = '419' + ELSE + lnScd = m.scd + ENDIF + +******* de completat + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + SUM suma TO m.tvaM FOR scc='4427' + SUM suma-neimpozab,neimpozab TO m.totftvaM,m.neimpozab FOR scc#'4427' + OTHERWISE + SUM suma TO m.tvaM FOR scc='4427' AND proc_tva=m.ctvam + SUM suma TO m.tvaI FOR scc='4427' AND proc_tva=m.ctvai + SUM IIF(proc_tva=m.ctvam,suma-neimpozab,0),IIF(proc_tva=m.ctvai,suma-neimpozab,0),neimpozab TO m.totftvaM,m.totftvaI,m.neimpozab FOR scc#'4427' + ENDCASE + + USE IN act4 + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus + m.totctva=M.tvaM+M.totftvaM+M.neimpozab + SELE vanz0 + REPL tvaM WITH M.tvaM; + totftvaM WITH M.totftvaM; + neimpozab WITH M.neimpozab; + totctva WITH M.totctva, scd WITH lnScd + OTHERWISE + m.totctva=M.tvaM+M.totftvaM+M.tvaI+M.totftvaI+M.neimpozab + SELE vanz0 + REPL tvaM WITH M.tvaM; + totftvaM WITH M.totftvaM; + tvaI WITH M.tvaI; + totftvaI WITH M.totftvaI; + neimpozab WITH M.neimpozab; + totctva WITH M.totctva, scd WITH lnScd + ENDCASE + +ENDSCAN + + +*********************** +SELE act +SET FILTER TO +*!* SCAN FOR (SCD='667 ' AND LEFT(SCC,3)='411') OR SCC='418 ' +SCAN FOR (INLIST(LEFT(scd,3),'667','622') AND INLIST(LEFT(scc,3),'411', '451')) OR (scd='4428' AND scc='4427') && modificat la 11 martie 2004, Georgiana, 622 - 27 august 2004 Marius + SCAT FIEL NUME,nract,dataact,scc,suma MEMV + IF m.scc = '4427' + m.scc = '411' + ENDIF + m.scd=m.scc + SELE vanz0 + SEEK m.NUME+DTOC(m.dataact)+STR(m.nract,14)+m.scd + IF FOUND() + DO CASE + CASE INLIST(lnTipTVA,1,2) && inainte de tva redus +*!* IF m.SCC='418 ' +*!* REPL totftvaM WITH ROUND(tvaM/(m.ctvam-1),0) +*!* REPL totctva WITH totftvaM+tvaM+neimpozab +*!* ELSE + IF m.ctvam # 1 + REPL totftvaM WITH totftvaM-m.suma + ELSE + REPLACE neimpozab WITH neimpozab-m.suma + ENDIF + + REPL totctva WITH totftvaM+tvaM+neimpozab +*!* ENDIF + OTHERWISE + m.proc_tva=act.proc_tva + IF m.proc_tva=0 AND neimpozab=0 + m.proc_tva=m.ctvam + ENDIF +*!* IF m.SCC='418 ' +*!* IF m.proc_tva=m.ctvam +*!* REPL totftvaM WITH ROUND(tvaM/(m.ctvam-1),0) +*!* ENDIF +*!* IF m.proc_tva=m.ctvai +*!* REPL totftvaI WITH ROUND(tvaI/(m.ctvaI-1),0) +*!* ENDIF +*!* REPL totctva WITH totftvaM+tvaM+totftvaI+tvaI+neimpozab +*!* ELSE + IF m.proc_tva=m.ctvam + REPL totftvaM WITH totftvaM-m.suma + ENDIF + IF m.proc_tva=m.ctvai + REPL totftvaI WITH totftvaI-m.suma + ENDIF + + REPL totctva WITH totftvaM+tvaM+totftvaI+tvaI+neimpozab +*!* ENDIF + ENDCASE + + ENDIF + SELE act +ENDSCAN + +***************** + +SELECT VANZ +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\vanz0 + +ENDIF +UNLOCK IN VANZ +USE IN vanz0 + +*** SFARSIT PROCEDURA REFVANZ************************************************************************ + +*____________________________________________________________________________________________________ + +*** REFACERE BALANTA ANALITICA FARA PRECEDENTE******************************************************* +PROCEDURE REFBALANTA_ANA &&REFBAL_ANA +IF !se_reface() + RETURN +ENDIF + +SELE BALANA +IF FLOCK() + DELETE ALL FOR EMPTY(acont) + REPLACE ALL RULDEB WITH 0; + RULCRED WITH 0 + SCAN + SCATTER MEMVAR + SELE act + IF m.acont#'0000' + SUM suma TO m.RULDEB FOR scd=m.cont AND ASCD=M.acont + SUM suma TO m.RULCRED FOR scc=m.cont AND ASCC=M.acont + ELSE + SUM suma TO m.RULDEB FOR scd=m.cont AND (ASCD=M.acont OR EMPTY(ASCD)) + SUM suma TO m.RULCRED FOR scc=m.cont AND (ASCC=M.acont OR EMPTY(ASCC)) + ENDIF + + SELE BALANA + REPL RULDEB WITH M.RULDEB; + RULCRED WITH M.RULCRED + + ENDSCAN + + IF TYPE('PRECDEB1')!="U" + DELETE ALL FOR PRECDEB1 = 0 AND PRECCRED1 = 0 AND precdeb = 0 AND preccred = 0 AND RULDEB = 0 AND RULCRED = 0 AND totdeb = 0 AND totcred = 0 AND SOLDDEB = 0 AND SOLDCRED = 0 + ELSE + DELETE ALL FOR precdeb = 0 AND preccred = 0 AND RULDEB = 0 AND RULCRED = 0 AND totdeb = 0 AND totcred = 0 AND SOLDDEB = 0 AND SOLDCRED = 0 + ENDIF + +ENDIF + +DO CALCULEAZABALANTA_ANA +*UNLOCK +RETURN + + + + +*** REFACERE BALANTA SINTETICA FARA PRECEDENTE******************************************************* +PROCEDURE REFBalanta && REFBAL +IF !se_reface() + RETURN +ENDIF + +SELE BAL +IF FLOCK() + REPLACE ALL RULDEB WITH 0; + RULCRED WITH 0 + SCAN + SCATTER MEMVAR + SELE act + SUM suma TO m.RULDEB FOR scd=SUBS(m.cont,1,4) + SUM suma TO m.RULCRED FOR scc=SUBS(m.cont,1,4) + SELE BAL + REPL RULDEB WITH M.RULDEB; + RULCRED WITH M.RULCRED + + ENDSCAN + + IF TYPE('PRECDEB1')!="U" + DELETE ALL FOR PRECDEB1 = 0 AND PRECCRED1 = 0 AND precdeb = 0 AND preccred = 0 AND RULDEB = 0 AND RULCRED = 0 AND totdeb = 0 AND totcred = 0 AND SOLDDEB = 0 AND SOLDCRED = 0 + ELSE + DELETE ALL FOR precdeb = 0 AND preccred = 0 AND RULDEB = 0 AND RULCRED = 0 AND totdeb = 0 AND totcred = 0 AND SOLDDEB = 0 AND SOLDCRED = 0 + ENDIF + +ENDIF +DO CALCULEAZABALANTA +*UNLOCK +RETURN + + + +PROCEDURE VERDIFBAL +SELE BAL +IF FLOCK() + SUM RULDEB TO M.RULDEB + SUM RULCRED TO M.RULCRED + SELE act + SUM suma TO M.suma + IF M.RULDEB #M.suma + DO VERDIFDEB + DO REFBalanta + ENDIF + IF M.RULCRED #M.suma + DO VERDIFCRED + DO REFBalanta + ENDIF +ENDIF +UNLOCK IN BAL +RETURN + +************* +PROCEDURE VERDIFDEB +SELE act +DEB=' ' +SCAN + SCATTER MEMVAR + IF M.scd#DEB + DEB=M.scd + SELE BAL + SEEK DEB + IF ! FOUND() +*WAIT WINDOWS 'CONTUL '+DEB+' NU ESTE INTRODUS IN BALANTA' +**** + WAIT WIND 'Se introduce in balanta contul '+ DEB NOWAIT + SELE PLCONT +*LOCATE FOR LEFT(CIMP1,4)=LEFT(DEB,4) + LOCATE FOR ALLTRIM(CIMP1)=ALLTRIM(DEB) + IF FOUND() + SCATTER MEMVAR + m.cont=M.CIMP1 + m.DENUMIRE=m.cimp2 + SELE BAL + APPEND BLANK +*GATHER MEMVAR + REPL CONT WITH M.cont + REPL DENUMIRE WITH M.DENUMIRE + ELSE + WAIT WINDOWS 'CONTUL '+DEB+' NU ESTE INTRODUS IN PLANUL DE CONTURI' + ENDIF + +***** + ENDIF + SELE act + ENDIF +ENDSCAN +RETURN + +PROCEDURE VERDIFCRED +SELE act +DEB=' ' +SCAN + SCATTER MEMVAR + IF M.scc#DEB + DEB=M.scc + SELE BAL + SEEK DEB + IF ! FOUND() +*WAIT WINDOWS 'CONTUL '+DEB+' NU ESTE INTRODUS IN BALANTA' + WAIT WIND 'Se introduce in balanta contul'+DEB NOWAIT + SELE PLCONT +*LOCATE FOR LEFT(CIMP1,4)=LEFT(DEB,4) + LOCATE FOR ALLTRIM(CIMP1)=ALLTRIM(DEB) + IF FOUND() + SCATTER MEMVAR + m.cont=M.CIMP1 + m.DENUMIRE=m.cimp2 + SELE BAL + APPEND BLANK +*GATHER MEMVAR + REPL CONT WITH M.cont + REPL DENUMIRE WITH M.DENUMIRE + ELSE + WAIT WINDOWS 'CONTUL '+DEB+' NU ESTE INTRODUS IN PLANUL DE CONTURI' + ENDIF + ENDIF + SELE act + ENDIF + +ENDSCAN +RETURN + + + + +*___________________________________________________________________ +PROCEDURE refstocinloc &&REFSTOC + +IF !se_reface() + RETURN +ENDIF + + +SELE rull +M=3*RECCOUNT() +OP=CREA('PROGRESBAR') +OP.titlu.CAPTION='Refacere Stocuri' +OP.SHOW() +j=0 + +SELE inloc +*Set Order To Tag CODMAT2 +REPL ALL CANT WITH 0; +CANTE WITH 0 +SELE rull +SET ORDER TO TAG COD +SCAN + SCATTER MEMVAR + SELE W50 + SEEK M.COD + IF NOT FOUND() + SELE rull + IF FLOCK() + DELETE + ENDIF + UNLOCK + ENDIF + DO pr WITH j + SELE rull +ENDSCAN + +SELECT rull +IF FLOCK() + REPLACE ALL pretvtva WITH ROUND(pretv+tvav,0) FOR !EMPTY(pretv) AND !EMPTY(tvav) AND EMPTY(pretvtva) + REPLACE ALL DATAIN WITH dataact FOR CANT#0 AND EMPTY(DATAIN) + REPLACE ALL DATAOUT WITH dataact FOR CANTE#0 AND EMPTY(DATAOUT) +ENDIF +UNLOCK + +SELE inloc +REPL ALL CANT WITH 0; +CANTE WITH 0 + +*********** +&&gestiuni la pret de achizitie: +SELECT rull.* FROM rull WHERE rull.scd # '8039' AND gest in (sele DISTINCT gest FROM numegest WHERE nrg<>6 ) ; +INTO CURSOR rullachi + +SELECT inloc +SET ORDER TO TAG achi + +SELE rullachi +SCAN + m.cants=0 + m.CANT=0 + m.CANTE=0 + SCATTER MEMVAR + SELE inloc + SEEK STR(m.gest,3)+m.scd+STR(m.PRET,14,2)+m.CODMAT+m.DENUMIRE + IF FOUND() + REPL CANTE WITH CANTE+M.CANTE + REPL CANT WITH CANT+M.CANT + IF M.CANT#0 + REPLACE DATAIN WITH M.DATAIN + ELSE + REPLACE DATAOUT WITH M.DATAOUT + ENDIF + ELSE + APPEND BLANK + GATHER MEMV + ENDIF + + DO pr WITH j + SELE rullachi +ENDSCAN +USE IN rullachi + +&&gestiuni la pret de vanzare: +SELECT rull.* FROM rull WHERE gest in (sele DISTINCT gest FROM numegest WHERE nrg=6 ); +INTO CURSOR rullvanz + +SELECT inloc +SET ORDER TO TAG VANZ + +SELE rullvanz +SCAN + m.cants=0 + m.CANT=0 + m.CANTE=0 + SCATTER MEMVAR + SELE inloc + SEEK STR(m.gest,3)+m.scd+STR(m.PRET,14,2)+STR(m.pretvtva,14,2)+ m.CODMAT+m.DENUMIRE + +*!* Loca For GEST=M.GEST And SCD=M.SCD ; +*!* AND PRET=M.PRET AND PRETvtva=M.PRETvtva ; +*!* And Allt(CODMAT)=Allt(M.CODMAT) And Allt(DENUMIRE)=Allt(M.DENUMIRE) + IF FOUND() + REPL CANTE WITH CANTE+M.CANTE + REPL CANT WITH CANT+M.CANT + IF M.CANT#0 + REPLACE DATAIN WITH M.DATAIN + ELSE + REPLACE DATAOUT WITH M.DATAOUT + ENDIF + ELSE + APPEND BLANK + GATHER MEMV + ENDIF + + DO pr WITH j + SELE rullvanz +ENDSCAN +USE IN rullvanz + +OP.RELEASE +RETURN + + +*________________________________________________________________ +PROCEDURE refstoc &&refstint +LOCAL lp,ap +_SCREEN.MOUSEPOINTER=11 + +SET SAFETY OFF + +SELE calendar +LOCA FOR nl=m.nl AND an=m.an +SKIP -1 +IF BOF() + + dateA=dirgen+'\_alfa\an0000\date00' +ELSE + lp=nl + ap=an + dateA=calefirma+'\an'+ap+'\'+'date'+lp +ENDIF +dateb=calefirma+'\an'+m.an+'\'+'date'+M.nl + +SELE rull +SET FILTER TO + +SELE STOC +SET FILTER TO + +&&refacere fisier inlocuitor inloc +COPY FILE &dateA\STOC.* TO &loc\&nfscurt\tempo\inloc.* + +USE &loc\&nfscurt\tempo\inloc IN 0 ALIAS inloc EXCL +SELECT inloc +REPL ALL cants WITH cants+CANT-CANTE +DELE ALL FOR cants=0 +DELETE ALL FOR scd = '8039' +PACK + +SELECT inloc +INDEX ON STR(gest,3)+scd+STR(PRET,14,2)+ CODMAT+DENUMIRE TAG achi OF &loc\&nfscurt\tempo\inloc +INDEX ON STR(gest,3)+scd+STR(PRET,14,2)+STR(pretvtva,14,2)+ CODMAT+DENUMIRE TAG VANZ OF &loc\&nfscurt\tempo\inloc + + +DO refstocinloc &&REFSTOC + +SELECT inloc +ALTER TABLE inloc ADD COLUMN detoate c(175) +SET FILTER TO +INDEX ON detoate TAG detoate OF &loc\&nfscurt\tempo\inloc +SET ORDER TO TAG detoate +REPLACE ALL detoate WITH STR(gest,3)+scd+STR(PRET,14,2)+STR(pretvtva,14,2)+ CODMAT+DENUMIRE + +SELECT inloc +SET FILTER TO +TOTAL TO &loc\&nfscurt\tempo\inloctot ON detoate FIELDS CANT,CANTE,cants + + +USE &loc\&nfscurt\tempo\inloctot IN 0 ALIAS inloctot + +*DO suprapune WITH 'stoc','inloc' +SELECT STOC +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\inloctot +ENDIF +UNLOCK +USE IN inloc +USE IN inloctot + +SELECT STOC +SET ORDER TO TAG DENUMIRE + +_SCREEN.MOUSEPOINTER=0 +RETURN + + + + + + + +*________________________________________________________________ +PROCEDURE REFCumpAn && refcumpnouAN +LOCAL L,A +LOCAL M.BAZA, M.NE, M.TX + +L=M.nl +A=M.an + +SELE actan +M=3*RECCOUNT() +OP=CREA('PROGRESBAR') +OP.titlu.CAPTION='Refacere Total Cumparari' +OP.SHOW() +j=0 + +SELE CUMPAN +USE +SELE CUMP +USE +SELE act +USE +SELECT 0 +USE &datEAN\CUMPAN.DBF EXCLUSIVE ALIAS CUMP +ZAP +SELE actan +SET FILTER TO scc='401 ' OR scc='404 ' OR (scc='4428' AND scd='4426') +*SET FILTER TO SCC='401 ' OR SCC='404 ' OR SCC='4428' +*SET FILTER TO SCC='401 ' OR SCC='404 ' +STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA +SCAN + SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL MEMV + SELE CUMP + LOCA FOR NUME=m.NUME AND dataact=m.dataact AND nract=m.nract + IF !FOUND() + SELE CUMP + GO BOTTOM + APPE BLAN + GATH MEMV + ENDIF + DO pr WITH j + SELE actan +ENDSCAN +******* +SELE CUMP +SCAN + SCAT MEMV + SELE actan + STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA + SCAN FOR NUME=m.NUME AND dataact=m.dataact AND nract=m.nract + DO CASE + CASE scd='4426' + m.tvaM=M.tvaM+suma + + CASE scd#'4426' + m.totftvaM=M.totftvaM+(suma-neimpozab) + m.neimpozab=m.neimpozab+neimpozab + IF scd='635 ' +*M.TX=.T. + m.neimpozab=m.neimpozab+suma + m.totftvaM=m.totftvaM-suma + ENDIF + ENDCASE + + ENDSCAN + +*********** + + m.totctva=M.tvaM+M.totftvaM+M.neimpozab + SELE CUMP + REPL tvaM WITH M.tvaM; + totftvaM WITH M.totftvaM; + neimpozab WITH M.neimpozab; + totctva WITH M.totctva + DO pr WITH j +ENDSCAN +SELE actan +SCAN FOR scd='408 ' + SCAT MEMV + SELE CUMP + LOCA FOR nract=m.nract AND NUME=m.NUME +*REPL TOTFTVAM WITH TOTFTVAM-TVAM + REPL totftvaM WITH ROUND(tvaM/(m.ctvam-1),0) + REPL totctva WITH totftvaM+tvaM+neimpozab + DO pr WITH j + SELE actan +ENDSCAN + +SELE CUMP +USE + +OP.RELEASE +*SELECT 0 +*USE &dateAN\cumpAN.dbf alias cumpan + +************DO RC1.PRG +m.an=A +m.nl=L +CLOSE DATABASE +DO TOTV.PRG +RETURN + + +*___________________________________________________________________________________________ +PROCEDURE refVANZAN +LOCAL L,A +LOCAL M.BAZA, M.NE, M.TX + +L=M.nl +A=M.an + +SELE actan +M=2*RECCOUNT() +OP=CREA('PROGRESBAR') +OP.titlu.CAPTION='Refacere Total Vanzari' +OP.SHOW() +j=0 + +SELE VANZAN +USE +SELE VANZ +USE +SELE CUMP +USE +SELE act +USE +SELECT 0 +USE &datEAN\VANZAN.DBF EXCLUSIVE ALIAS CUMP +ZAP +SELE actan +SET FILTER TO INLIST(scd,'411 ','461 ','4118') OR (scd='4428' AND scc='4427') OR (scd='635 ' AND scc='4427') +&&SET FILTER TO SCd='411 ' or (scd='4428' and scc='4427') +*OR (SCD='635 ' AND SCC='4427') +*SET FILTER TO SCD='411 ' or (scd='4428' and !inlist(left(scc,3),'371','408')) +STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA +SCAN + SCAT FIEL COD,DATAIREG,dataact,NUME,fdoc,nract,datascad,COD_FISCAL MEMV + SELE CUMP + LOCA FOR NUME=m.NUME AND dataact=m.dataact AND nract=m.nract + IF !FOUND() + SELE CUMP + GO BOTTOM + APPE BLAN + GATH MEMV + ENDIF + DO pr WITH j + SELE actan +ENDSCAN +******* +SELE CUMP +SCAN + SCAT MEMV + SELE actan + STORE 0 TO M.totftvaI,M.totftvaM,M.neimpozab,M.tvaI,M.tvaM,M.totctva,M.BAZA + SCAN FOR NUME=m.NUME AND dataact=m.dataact AND nract=m.nract + DO CASE + CASE scc='4427' + m.tvaM=M.tvaM+suma + + CASE scc#'4427' + m.totftvaM=M.totftvaM+(suma-neimpozab) + m.neimpozab=m.neimpozab+neimpozab + m.sumaval=m.sumaval+suma_2 + m.NUMEVAL=nume_4 + m.CURSSCHIMB=SUMA_3 + + + ENDCASE + + ENDSCAN + +*********** + + m.totctva=M.tvaM+M.totftvaM+M.neimpozab + SELE CUMP + REPL tvaM WITH M.tvaM; + totftvaM WITH M.totftvaM; + neimpozab WITH M.neimpozab; + totctva WITH M.totctva + DO pr WITH j + SELE actan +ENDSCAN + +SELE CUMP +USE + +SELECT 0 +USE &datEAN\VANZAN.DBF ALIAS VANZAN + +OP.RELEASE +*********************DO RV1.PRG +m.an=A +m.nl=L +CLOSE DATABASE +DO TOTV.PRG +RETURN + +*-------------------------------------------------------------- + +*** REFACERE BALANTA SINTETICA CU PRECEDENTE +PROCEDURE REFBal && REFBalanta +LOCAL dateA + +IF !se_reface() + RETURN +ENDIF +SET SAFETY OFF + + +*** adaug in balanta curenta balanta din luna precedenta +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +IF FOUND() + SKIP -1 + IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla + ELSE + dateA=dirgen+'\_alfa\an0000\date00\' && 'Aceasta este prima luna deschisa!','' + ENDIF + DATE=calefirma+'\an'+m.an+'\date'+m.nl +ELSE + DO mesaj WITH 'Fisierul Calendar.dbf este defect!','' + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + + +SELE BAL +IF FLOCK() + DELE ALL + APPE FROM &dateA\BAL.DBF FOR !DELETED() + UNLOCK +ENDIF + + +*** verific daca am campurile de solduri la 1 ianuarie +llNuSold=.F. +IF TYPE('precdeb1')!="U" && am campurile precdeb1, deci trebuie sa completez soldul de la 1 ianuarie + llNuSold=.T. +ENDIF + + +*** caut prima balanta din anul curent care are campuri cu solduri de la 1 ianuarie +llgasit=.F. +lcBal1ian=calefirma+'\an'+m.an+'\date01\bal.dbf' +IF llNuSold + lnan=VAL(m.an) + + FOR i=1 TO 12 + SELECT calendar + LOCATE FOR VAL(an)=lnan AND VAL(nl)=i AND VAL(nl)!=VAL(m.nl) + IF FOUND() + lcBal1ian=calefirma+'\an'+calendar.an+'\date'+calendar.nl+'\bal.dbf' + IF FILE(lcBal1ian) + USE (lcBal1ian) IN 0 AGAIN SHARED ALIAS bal1ian + SELECT bal1ian + IF TYPE("precdeb1")!="U" && exxista campul precdeb1 in balanta selectata + USE IN bal1ian + llgasit=.T. + EXIT + ENDIF + USE IN bal1ian + ENDIF + ENDIF + ENDFOR +ENDIF + + + +*** daca am campul de sold la 1 ianuarie le preiau din prima balanta cu solduri la 1 ianuarie din anul respectiv +IF llNuSold + IF llgasit && daca am gasit prima balanta sintetica cu solduri la 1 ianuarie + + USE (lcBal1ian) IN 0 AGAIN SHARED ALIAS bal1ian + SELECT CONT,PRECDEB1,PRECCRED1 FROM bal1ian INTO CURSOR t1ian ORDER BY CONT + SELECT BAL + IF FLOCK() + REPLACE ALL PRECDEB1 WITH 0,PRECCRED1 WITH 0 + SCAN + lcCont=CONT + lnprecdeb1=PRECDEB1 + lnpreccred1=PRECCRED1 + + SELECT t1ian + LOCATE FOR CONT=lcCont + IF FOUND() + lnprecdeb1=PRECDEB1 + lnpreccred1=PRECCRED1 + ENDIF + + SELECT BAL + REPLACE PRECDEB1 WITH lnprecdeb1,PRECCRED1 WITH lnpreccred1 + ENDSCAN + UNLOCK IN BAL + ENDIF + USE IN bal1ian + USE IN t1ian + ENDIF + +ENDIF + + +SELE BAL +SET ORDER TO TAG CONT + +SELE BAL +IF FLOCK() + IF m.nl='01' + REPL ALL precdeb WITH 0,preccred WITH 0 + REPL ALL precdeb WITH SOLDDEB,preccred WITH SOLDCRED + IF llNuSold && AM CAMPURILE DE SOLDURI LA 1 IANUARIE + REPLACE ALL PRECDEB1 WITH SOLDDEB,PRECCRED1 WITH SOLDCRED + ENDIF + ELSE + + REPL ALL precdeb WITH 0, preccred WITH 0 + REPL ALL RULDEB WITH 0, RULCRED WITH 0 + REPL ALL precdeb WITH totdeb, preccred WITH totcred + ENDIF + UNLOCK +ENDIF + +DO REFBalanta +DO VERDIFBAL +DO CALCULEAZABALANTA + + +DO REFBALANA +RETURN + +*_______________________________________________________________________________________ + +*** REFACERE BALANTA ANALITICA CU PRECEDENTE*** +PROCEDURE REFBALANA && RefBalanta_ana +LOCAL dateA + +IF !se_reface() + RETURN +ENDIF + +SET SAFETY OFF + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' && 'Aceasta este prima luna deschisa!','' +ENDIF +DATE=calefirma+'\an'+m.an+'\date'+m.nl + + +*** caut bal si balana din prima luna din anul curent pt soldurile de la 1 ianuarie in caz ca nu gasesc in balanta precedenta +llgasit=.F. +lcBal1ian=calefirma+'\an'+m.an+'\date01\bal.dbf' +lnan=VAL(m.an) + +FOR i=1 TO 12 + SELECT calendar + LOCATE FOR VAL(an)=lnan AND VAL(nl)=i + IF FOUND() + lcBal1ian=calefirma+'\an'+calendar.an+'\date'+calendar.nl+'\balana.dbf' + IF FILE(lcBal1ian) + USE (lcBal1ian) IN 0 AGAIN SHARED ALIAS bal1ian + SELECT bal1ian + IF TYPE("precdeb1")!="U" && exxista campul precdeb1 in balanta selectata + USE IN bal1ian + llgasit=.T. + EXIT + ENDIF + USE IN bal1ian + ENDIF + ENDIF +ENDFOR + +SELE BALANA +IF FLOCK() + DELE ALL + IF FILE('&dateA\BALANA.DBF') + APPE FROM &dateA\BALANA.DBF FOR !DELETED() + ENDIF + + +*** verific daca am soldurile de la 1 ianuarie + llNuSold=.F. + STORE 0 TO lnprecdeb1,lnpreccred1 + IF existacamp('bal','precdeb1') +*!* CALCULATE sum(precdeb1),sum(preccred1) TO lnprecdeb1,lnpreccred1 +*!* +*!* IF lnprecdeb1=0 && nu am soldurile de la 1 ianuarie + llNuSold=.T. +*!* ENDIF + ENDIF + +*** Daca nu am soldurile de la 1 ianuarie dupa ce am facut append inseamna ca nu le am nici in balanta precedenta, +*** deci o sa le caut in prima balanta din anul respectiv + IF llNuSold + IF llgasit && daca am gasit prima balanta analitica + USE (lcBal1ian) IN 0 AGAIN SHARED ALIAS bal1ian + IF existacamp('bal1ian','precdeb1') AND existacamp('bal1ian','preccred1') + SELECT CONT,acont,PRECDEB1,PRECCRED1 FROM bal1ian INTO CURSOR t1ian ORDER BY CONT + SELECT BALANA + SCAN + lcCont=CONT + lcACont=acont + lnprecdeb1=PRECDEB1 + lnpreccred1=PRECCRED1 + + SELECT t1ian + LOCATE FOR CONT=lcCont AND acont=lcACont + IF FOUND() + lnprecdeb1=PRECDEB1 + lnpreccred1=PRECCRED1 + ENDIF + + SELECT BALANA + REPLACE PRECDEB1 WITH lnprecdeb1,PRECCRED1 WITH lnpreccred1 + ENDSCAN + USE IN bal1ian + USE IN t1ian + ENDIF + ENDIF + ENDIF + + + + SELE BALANA + SET ORDER TO TAG CONTACONT + + SELECT PLCONTANA + SCAN + SCATTER MEMV + SELECT BALANA + SEEK M.cont+M.acont + IF !FOUND() + APPEND BLANK + REPLACE CONT WITH M.cont, acont WITH M.acont, DENUMIRE WITH M.DENUMIRE + ENDIF + SELECT PLCONTANA + ENDSCAN + + SELECT DISTINCT scd AS CONT,ASCD AS acont ; + FROM act ; + WHERE !EMPTY(ASCD) AND LEFT(scd,4)+LEFT(ASCD,4) NOT IN ; + (SELE LEFT(CONT,4)+LEFT(acont,4) FROM BALANA) ; + INTO CURSOR tscd + + SELE BALANA + APPEND FROM DBF('tscd') + USE IN tscd + + SELECT DISTINCT scc AS CONT,ASCC AS acont ; + FROM act ; + WHERE !EMPTY(ASCC) AND LEFT(scc,4)+LEFT(ASCC,4) NOT IN ; + (SELE LEFT(CONT,4)+LEFT(acont,4) FROM BALANA) ; + INTO CURSOR tscc + + SELE BALANA + APPEND FROM DBF('tscc') + USE IN tscc + + IF m.nl='01' + REPL ALL precdeb WITH 0, preccred WITH 0 + REPL ALL precdeb WITH SOLDDEB, preccred WITH SOLDCRED + IF llNuSold && AM CAMPURILE DE SOLDURI LA 1 IANUARIE + REPLACE ALL PRECDEB1 WITH SOLDDEB,PRECCRED1 WITH SOLDCRED + ENDIF + + ELSE + + REPL ALL precdeb WITH 0, preccred WITH 0 + REPL ALL RULDEB WITH 0, RULCRED WITH 0 + REPL ALL precdeb WITH totdeb, preccred WITH totcred + ENDIF + + DO REFBALANTA_ANA +*DO VERDIFBAL_ANA + DO verif_balana + DO CALCULEAZABALANTA_ANA +ENDIF +UNLOCK IN BALANA +RETURN + +*______________________________________________________ + +PROCEDURE REFCasaVal && REFVALCASA +LOCAL ap,lp,D +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +USE &dateA\casvnume IN 0 SHARED ALIAS casvnumeP +IF TYPE('casvnumep.precdeb') # 'U' + SELECT nume_5, numeval, ; + precdeb + incasari as precdeb, preccred + plati as preccred, ; + precvaldeb + incasval as precvaldeb, precvalcre + platival as precvalcre ; + FROM casvnumeP ; + INTO CURSOR tprec ORDER BY nume_5 +ELSE + SELECT nume_5, numeval, incasari as precdeb, plati as preccred, incasval as precvaldeb, platival as precvalcre ; + FROM casvnumeP ; + INTO CURSOR tprec ORDER BY nume_5 +ENDIF + +SELE casaval +IF FLOCK() + DELETE ALL + m.DATAIREG={} + m.COD=-1 + m.INCASARI=0 + m.PLATI=0 + m.incasval=0 + m.platival=0 + m.scd='' + m.scc='' + m.CURSSCHIMB=0 + m.CURSBNR=0 + + SELE tprec + SCAN + SCATTER MEMVAR + m.INCASARI = M.precdeb-M.preccred + m.PLATI = 0 + m.INCASval = M.precvaldeb-M.precvalcre + m.PLATIval = 0 + m.casa = m.nume_5 + SELE casaval + GOTO BOTTOM + APPE BLANK + GATHER MEMVAR + SELE tprec + ENDSCAN + UNLOCK +ENDIF + +SELECT cod, dataireg, nume_5 as casa, scd, scc, suma_3 as cursschimb, nume_4 as numeval, ; + IIF(scd = '5314', suma, 00000000000000) as incasari, ; + IIF(scc = '5314', suma, 00000000000000) as plati, ; + IIF(scd = '5314', suma_2, 000000000000.00) as incasval, ; + IIF(scc = '5314', suma_2, 000000000000.00) as platival ; + FROM act WHERE scd = '5314' OR scc = '5314' ; + INTO CURSOR tact + +SELECT casaval +APPEND FROM DBF('tact') +USE IN tact + + +SELECT casvnume +IF FLOCK() + DELE ALL + APPEND FROM DBF('tprec') + +SELECT nume_5 as casaval, nume_4 as numeval, ; + sum(IIF(scd = '5314', suma, 00000000000000)) as incasari, ; + sum(IIF(scc = '5314', suma, 00000000000000)) as plati, ; + sum(IIF(scd = '5314', suma_2, 000000000000.00)) as incasval, ; + sum(IIF(scc = '5314', suma_2, 000000000000.00)) as platival ; + FROM act WHERE scd = '5314' OR scc = '5314' ; + INTO CURSOR tact; + GROUP BY 1 + + + SELECT tact + SCAN + SCATTER NAME ot + SELECT casvnume + LOCATE FOR ALLTRIM(nume_5) = ALLTRIM(ot.casaval) + IF !FOUND() + APPEND blank + REPLACE nume_5 WITH ot.casaval + REPLACE numeval WITH ot.numeval + ENDIF + REPLACE incasari WITH incasari + ot.incasari, plati WITH plati + ot.plati + REPLACE incasval WITH incasval + ot.incasval, platival WITH platival + ot.platival + SELECT tact + ENDSCAN + +UNLOCK +ENDIF + +IF USED('tact') + USE IN tact +ENDIF +USE IN tprec +USE IN casvnumeP + + +*!* SELE CASAVAL +*!* SET ORDER TO TAG COD +*!* IF FLOCK() +*!* DELE ALL + +*!* SELE CASVNUME +*!* USE + +*!* IF !FILE('&DATEA\CASVNUME.DBF') +*!* COPY FILE &dirgen\_alfa\an0000\date00\CASVNUME.* TO &dateA\CASVNUME.* +*!* ENDIF +*!* SELE 0 +*!* USE &dateA\CASVNUME + +*!* m.DATAIREG={} +*!* m.COD=-1 +*!* m.INCASARI=0 +*!* m.PLATI=0 +*!* m.incasval=0 +*!* m.platival=0 +*!* m.scd='' +*!* m.scc='' +*!* m.CURSSCHIMB=0 +*!* m.CURSBNR=0 + +*!* &&REFACERE SOLDURI IN CASAVAL DUPA CASVNUME DIN LUNA PRECEDENTA======================= +*!* SELE CASVNUME +*!* SCAN +*!* SCATTER MEMVAR +*!* m.CASA=m.nume_5 +*!* SELE CASAVAL +*!* APPE BLANK +*!* m.INCASARI=M.INCASARI-M.PLATI +*!* m.incasval=M.incasval-M.platival +*!* m.PLATI=0 +*!* m.platival=0 +*!* GATHER MEMVAR +*!* SELE CASVNUME +*!* ENDSCAN + +*!* SELE CASVNUME +*!* USE + +*!* &&REFACERE SUME IN CASAVAL DUPA ACT====================== +*!* &&IN DEB====================== +*!* SELE act +*!* SCAN FOR scd='5314' +*!* SCATTER MEMVAR +*!* SELE CASAVAL +*!* m.CASA=M.nume_5 +*!* m.INCASARI=M.suma +*!* m.incasval=M.suma_2 +*!* m.CURSSCHIMB=M.SUMA_3 +*!* m.SBNR=SUBSTR(M.EXPLICATIA,8,14) +*!* m.CURSBNR=VAL(M.SBNR) +*!* m.PLATI=0 +*!* m.platival=0 +*!* m.NUMEVAL=m.nume_4 +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN&& +*!* &&IN CRED======================= +*!* SELE act +*!* SCAN FOR scc='5314' +*!* SCATTER MEMVAR +*!* SELE CASAVAL +*!* m.CASA=M.nume_5 +*!* m.PLATI=M.suma +*!* m.platival=M.suma_2 +*!* m.CURSSCHIMB=M.SUMA_3 +*!* m.SBNR=SUBSTR(M.EXPLICATIA,8,14) +*!* m.CURSBNR=VAL(M.SBNR) +*!* m.INCASARI=0 +*!* m.incasval=0 +*!* m.NUMEVAL=m.nume_4 +*!* APPE BLANK +*!* GATHER MEMVAR +*!* SELE act +*!* ENDSCAN +*!* ENDIF +*!* &&REFACERE CASVNUME DUPA CASAVAL=================== +*!* SELE 0 +*!* USE &DATE\CASVNUME +*!* &&& exclusive +*!* &&&zap +*!* IF FLOCK() +*!* DELE ALL +*!* &&NUMELE CASELOR=========== +*!* SELE CASAVAL +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE CASVNUME +*!* LOCA FOR nume_5=M.CASA +*!* IF NOT FOUND() +*!* GOTO BOTTOM +*!* APPE BLANK +*!* REPL nume_5 WITH M.CASA +*!* ENDIF +*!* REPL NUMEVAL WITH m.NUMEVAL +*!* SELE CASAVAL +*!* ENDSCAN +*!* &&VALORILE=============== +*!* SELE CASVNUME +*!* SCAN +*!* SCATTER MEMVAR +*!* SELE CASAVAL +*!* SUM INCASARI,PLATI,incasval,platival TO M.INCASARI,M.PLATI,M.incasval,M.platival FOR ALLT(CASA)=ALLT(M.nume_5) +*!* IF EMPTY(ALLT(M.nume_5)) +*!* SUM INCASARI,PLATI,incasval,platival TO M.INCASARI,M.PLATI,M.incasval,M.platival FOR EMPTY(ALLT(CASA)) +*!* ENDIF +*!* SELE CASVNUME +*!* REPL INCASARI WITH M.INCASARI +*!* REPL PLATI WITH M.PLATI +*!* REPL incasval WITH M.incasval +*!* REPL platival WITH M.platival +*!* SELE CASVNUME +*!* ENDSCAN +*!* ENDIF +*!* UNLOCK IN CASAVAL +*!* UNLOCK IN CASVNUME +SELE CASAVAL +SET ORDER TO TAG DATAIREG +RETURN + + + +***____________________________________________________ +PROCEDURE CURATARE &&CURATARE INREGISTRARI STERSE +DO CURATARE1 +ON ERROR +RETURN + +*______________________ +PROCEDURE CURATARE1 +SELECT REFACERI +SCAN + LcFisier=ALLTRIM(tabel) + DO pack_fisier WITH LcFisier + SELECT REFACERI +ENDSCAN + +DO pack_fisier WITH 'BALANA' +DO pack_fisier WITH 'BALANTA_PARTENER' + +RETURN + +*___________________________ +*** INCEPUT PROCEDURA PACK_FISIER +PROCEDURE pack_fisier +PARAM numefis + +SELE &numefis +USE +SELE 0 + +lcOldError=ON("error") +ON ERROR DO daca_ruleaza1 +USE &DATE\&numefis EXCL ALIAS &numefis +PACK +SELE &numefis +USE + +DO des WITH numefis +ON ERROR &lcOldError +ENDPROC +*** SFARSIT PROCEDURA PACK_FISIER + +*_______________________ +PROC daca_ruleaza1 +DO daca_ruleaza +RETURN TO CURATARE + +*_______________________ +PROC daca_ruleaza +DO mesajmare WITH ' Inainte de a executa aceasta operatiune trebuie sa va asigurati ca programul nu mai ruleaza pe alte statii din retea.'+; ++SPACE(50)+'Inchideti programele CONTAFIN deschise pe toate celelalte statii si apoi reveniti.' +semafor1=.T. +RETURN +RETURN + + + + + + + +*_________________________________________ +PROCEDURE REFCumplun +LOCAL nla,nlb,ana,anb,cond,cond1 + +IF !se_reface() + RETURN +ENDIF + + +cond='(year(dataireg)0 + SCAT MEMV + SELE cumplun + LOCA FOR nract=m.nract AND NUME=m.NUME +*REPL TOTFTVAM WITH TOTFTVAM-TVAM+neimpozab + REPL totftvaM WITH totftvaM-M.suma + REPL neimpozab WITH M.suma + + REPL totctva WITH totftvaM+tvaM+neimpozab + SELE act + ENDSCAN +*************BILETE MASA********* + SELE act + SCAN FOR scd='5328' AND LEFT(EXPLICATIA,7)='TICHETE' AND neimpozab=0 + SCAT MEMV + SELE cumplun + LOCA FOR nract=m.nract AND NUME=m.NUME +* BROWSE +* SELECT cumplun +*REPL TOTFTVAM WITH TOTFTVAM-TVAM+neimpozab + REPL totftvaM WITH totftvaM-M.suma + REPL neimpozab WITH M.suma + + REPL totctva WITH totftvaM+tvaM+neimpozab +* BROWSE + SELE act + ENDSCAN +************* + SELE act + SET FILTER TO +*SCAN FOR SCc='4428' and LEFT(scd,3)='371' +*SCAT MEMV +*SELE cumplun +*loca for nract=m.nract and nume=m.nume + +*if found() +*m.neimpozab=totftvam*(-1) +*REPL TOTFTVAM WITH totftvam+m.neimpozab +*REPL neimpozab WITH m.neimpozab +*REPL TOTCTVA WITH TOTFTVAM+TVAM+neimpozab +*endif +*SELE act +*ENDSCAN +*endif + + SELE cumplun + SET FILTER TO + GO TOP +*BROW + +&&ca in rc1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& + SELE cumplun + REPL ALL achitat WITH 0 FOR !&cond + + SELE act + SET ORDER TO TAG PERECHE +*Set Filter To (ACT.SCD='401 ' Or ACT.SCD='404 ') And PERECHE#0 + SET FILTER TO act.scd='401 ' AND PERECHE#0 + + SELE act + GO TOP + DO WHILE !EOF() + m.achitat=0 + m.achitatval=0 + SCAT MEMV + DO WHILE PERECHE=M.PERECHE AND ALLTR(NUME)=ALLT(M.NUME) AND ASCD=m.ASCD + m.achitat=m.achitat+suma + m.achitatval=m.achitatval+suma_2 + SKIP + ENDDO + SELE cumplun + LOCA FOR nract=m.PERECHE AND ALLTR(NUME)=ALLT(M.NUME) AND acont=m.ASCD + IF !FOUND() + LOCATE FOR nract=m.PERECHE AND ALLT(NUME)=ALLT(M.NUME) + ENDIF + IF FOUND() + REPL achitat WITH m.achitat+achitat + REPL achitatval WITH m.achitatval+achitatval + ENDIF +*SET FILTER TO ACHITAT=0 + SELE act + ENDDO + + +ENDIF +UNLOCK IN cumplun +SELE cumplun +SET FILTER TO +SELECT act +SET FILTER TO +RETURN + + +*------------------------------------------------------------------------------------ + +PROCEDURE REFvanzlun +LOCAL nla,nlb,ana,anb,cond,cond1 +STORE 0 TO M.suma_2, M.achitatval,M.suma,M.sumaval,M.achitat + + +IF !se_reface() + RETURN +ENDIF + +*** actualizez act cu pereche si pereche2 daca am optiunea refac=.T. +DO refac_act WITH "411" IN actualizare_act.PRG + +cond='(year(dataireg)'4118') AND !(LEFT(scd,3)='411' AND scc='4427') AND id_set != 90501 AND ; + NUME+'/'+DTOC(dataact)+'/'+STR(nract,14)+'/'+ASCD NOT IN (SELE NUME+'/'+DTOC(dataact)+'/'+STR(nract,14)+'/'+ACONT FROM vanzlun) ; + INTO CURSOR tact ; + GROUP BY NUME,dataact,nract,ASCD + + + lnrec = _TALLY + SELECT vanzlun + APPEND FROM DBF('tact') + USE IN tact + + + +************************************************************************************************* + lcfis = ALLTRIM(loc) + [\] + ALLTRIM(nfscurt) + [\tempo\tact.dbf] + + + SELE NUME,nract,dataact,ASCD, ; + SUM(suma) AS totctva, SUM(suma_2) AS sumaval ; + FROM act ; + WHERE LEFT(scd,3)='411' AND scd<>'4118' ; + INTO TABLE (lcfis) ; + GROUP BY NUME,dataact,nract,ASCD ; + ORDER BY NUME,dataact,nract,ASCD + + SELECT tact + INDEX ON NUME+[\]+DTOC(dataact)+[\]+STR(nract)+[\]+ASCD TAG ordine + SET ORDER TO ordine + + SELECT vanzlun + SET FILTER TO !&cond + SCAN + lcFactura = NUME+[\]+DTOC(dataact)+[\]+STR(nract)+[\]+acont + lnSumaVal=sumaval + lnTotctva = totctva + + SELECT tact + IF SEEK(lcFactura) + + lnTotctva = lnTotctva + totctva + lnSumaVal = lnSumaVal + sumaval + SELECT vanzlun + REPL totctva WITH lnTotctva, sumaval WITH lnSumaVal + ENDIF + SELECT vanzlun + + ENDSCAN + + USE IN tact +************************************************************************************************* + + + SELE act + SET FILTER TO + SCAN FOR INLIST(LEFT(scd,3),'667','622') AND LEFT(scc,3)='411' && 622 la 27 august 2004 Marius (Conpress - comision agent vanzare) + SCAT MEMV + SELE vanzlun + LOCA FOR nract=m.nract AND NUME=m.NUME AND acont=m.ASCC + + IF FOUND() + REPLACE totctva WITH totctva - m.suma + ENDIF + SELE act + ENDSCAN + + + lModifAct=.T. +******** + SELE vanzlun + SET FILTER TO + + REPL ALL achitat WITH 0 FOR !&cond + + +&& id_set = 90501 diferente de curs provenite din actualizarea facturilor la 31.12.NN + SELECT nract, NUME, ASCC AS acont, pereche2, ; + SUM(suma) AS achitat, SUM(suma_2) AS achitatval ; + FROM act WHERE LEFT(scc,3)='411' AND scc<>'4118' AND pereche2#0 AND id_set != 90501; + GROUP BY pereche2, NUME, ASCC ; + INTO CURSOR t411 + + SELECT t411 + SCAN + SCATTER NAME o411 + SELECT vanzlun + LOCATE FOR nract=o411.pereche2 AND ALLT(NUME)=ALLTRIM(o411.NUME) AND acont=o411.acont + IF !FOUND() + LOCATE FOR nract=o411.pereche2 AND ALLTRIM(NUME)=ALLTRIM(o411.NUME) + ENDIF + + IF FOUND() + REPLACE achitat WITH achitat + o411.achitat + REPLACE achitatval WITH achitatval + o411.achitatval + ENDIF + SELECT t411 + ENDSCAN + + RELEASE o411 + USE IN t411 + + + + +*** actualizarea soldurilor facturilor in valuta la 31.12.NN + SELECT nract, NUME, IIF(LEFT(scd,3)='411',ASCD,ASCC) AS acont, pereche2, ; + IIF(LEFT(scd,3)='411',suma,(-1)*suma) AS diferenta, SUMA_3 AS CURSSCHIMB ; + FROM act WHERE (LEFT(scc,3)='411' OR LEFT(scd,3)='411') AND scc<>'4118' AND pereche2#0 AND id_set = 90501; + INTO CURSOR tactualizare + + SELECT tactualizare + SCAN + SCATTER NAME lo501 + SELECT vanzlun + LOCATE FOR nract = lo501.pereche2 AND ALLT(NUME)=ALLTRIM(lo501.NUME) AND acont=lo501.acont + IF FOUND() + REPLACE totctva WITH totctva + lo501.diferenta, CURSSCHIMB WITH lo501.CURSSCHIMB + ENDIF + SELECT tactualizare + ENDSCAN + RELEASE lo501 + USE IN tactualizare + + + SELE act + SET FILT TO +******* +&&pt regularizare clienti creditori +&& and id_set#10421 + + + SELE DISTINCT COD,pereche2 FROM &DATE\act WHERE scd='419 ' AND LEFT(scc,3)='411' INTO CURSOR c419 ORDER BY COD &&pt regularizare clienti creditori + SELE act + SET FILT TO + SELE c419 + SCAN + SCAT FIEL COD,pereche2 MEMV + SELE act + LOCA FOR COD=m.COD AND pereche2=m.pereche2 AND LEFT(scd,3)='411' AND scd#'4118' AND scc='4427' + IF !FOUND() + LOOP + ENDIF + SCAT MEMV + + SELE vanzlun + LOCA FOR NUME=m.NUME AND nract=m.pereche2 AND acont=m.ASCD + IF !FOUND() + LOCA FOR NUME=m.NUME AND nract=m.pereche2 + ENDIF + IF FOUND() + REPL achitat WITH achitat+ABS(m.suma) + ENDIF + SELE c419 + ENDSCAN + USE IN c419 +&&pt regularizare clienti creditori +ENDIF +UNLOCK IN vanzlun +SELE vanzlun +SET FILTER TO +RETURN + +*_________________________________________ +PROCEDURE REFobinvent +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +SELECT rull +SCAN FOR scd = '8039' AND EMPTY(nresp) + lnR = RECNO() + lnC = COD + LOCATE FOR COD = lnC AND !EMPTY(nresp) + lcResp = nresp + IF FOUND() + GOTO lnR + REPLACE nresp WITH lcResp + ELSE + GOTO lnR + ENDIF + + SELECT rull +ENDSCAN + + +SELE obinvent +IF FLOCK() + DELE ALL + APPEND FROM &DATE\rull FOR scd = '8039' +ENDIF +UNLOCK IN obinvent + +SELE rull +SET FILTER TO + +SELE STOC_obinv +SET FILTER TO + + +&&refacere stoc obiecte de inventar aflate in folosinta +lcfis = dateA+'\stoc_obinv.Dbf' +lcStoc = dateA+'\stoc.Dbf' + +IF FILE(lcfis) + COPY FILE &dateA\STOC_obinv.* TO &loc\&nfscurt\tempo\inloc.* + USE &loc\&nfscurt\tempo\inloc IN 0 ALIAS inloc EXCL +ELSE + COPY FILE &dirgen\_alfa\an0000\date00\STOC_obinv.* TO &loc\&nfscurt\tempo\inloc.* + USE &loc\&nfscurt\tempo\inloc IN 0 ALIAS inloc EXCL + SELECT inloc + APPEND FROM &lcStoc FOR scd = '8039' +ENDIF + + +SELECT inloc +REPL ALL cants WITH cants+CANT-CANTE +DELE ALL FOR cants=0 +PACK +REPL ALL CANT WITH 0, CANTE WITH 0 + +SELECT inloc +INDEX ON STR(PRET,14,2)+ nresp+ CODMAT + DENUMIRE TAG achi OF &loc\&nfscurt\tempo\inloc + +SELECT rull +SCAN FOR scd = '8039' + SCATTER NAME orull + SELECT inloc + SEEK STR(orull.PRET,14,2)+ orull.nresp+ orull.CODMAT+orull.DENUMIRE +*LOCATE FOR GEST = orull.gest AND PRET = orull.pret AND CODMAT = orull.codmat AND DENUMIRE = orull.denumire AND nresp = orull.nresp + IF FOUND() + IF FLOCK() + REPLACE CANT WITH CANT + orull.CANT, CANTE WITH CANTE + orull.CANTE, DATAOUT WITH orull.DATAOUT + ENDIF + UNLOCK + ELSE + APPEND BLANK + GATHER NAME orull + ENDIF +ENDSCAN + +SELECT inloc +ALTER TABLE inloc ADD COLUMN detoate c(175) +SET FILTER TO +INDEX ON detoate TAG detoate OF &loc\&nfscurt\tempo\inloc +SET ORDER TO TAG detoate +REPLACE ALL detoate WITH STR(PRET,14,2)+ nresp+ CODMAT+DENUMIRE + +SELECT inloc +SET FILTER TO +TOTAL TO &loc\&nfscurt\tempo\inloctot ON detoate FIELDS CANT,CANTE,cants + + +USE &loc\&nfscurt\tempo\inloctot IN 0 ALIAS inloctot + +SELECT STOC_obinv +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\inloctot +ENDIF +UNLOCK +USE IN inloc +USE IN inloctot + +SELECT STOC_obinv +SET ORDER TO TAG DENUMIRE + +RETURN + +*_________________________________________ + + +PROCEDURE REFrespons +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +SELE respons +IF FLOCK() + DELE ALL + + APPEND FROM &dateA\respons.DBF FOR !DELETED() AND !EMPTY(nume_2) + + SELE DISTINCT act.nresp FROM act INTO CURSOR ttt + SELE ttt + SCAN + SCAT MEMV + SELE respons + LOCA FOR ALLT(m.nresp)=ALLT(nume_2) + IF !FOUND() + APPE BLAN + REPL nume_2 WITH m.nresp + ENDIF + SELE ttt + ENDSCAN + +ENDIF +UNLOCK IN respons +RETURN + + + + +*----------------------------------------- +PROCEDURE refavans409 +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +DO refac_act WITH "409" IN actualizare_act.PRG + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +IF !FILE('&dateA\avans409.dbf') + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +SELE avans409 +IF FLOCK() + DELE ALL + APPEND FROM &dateA\avans409.DBF FOR achitat<>facturat OR achitatval<>factval + SELE nract,dataact,COD,NUME,fdoc,suma AS achitat,suma_2 AS achitatval,SUMA_3 AS CURSSCHIMB,; + nume_4 AS NUMEVAL,DATAIREG,datascad,m.nl AS nl,m.an AS an, scd as cont, ASCD AS acont ; + FROM act WHERE LEFT(scd, 3)='409' INTO CURSOR aaa ORDER BY dataact + + SELE avans409 + APPE FROM DBF('aaa') + + SELE act + SCAN FOR LEFT(scc,3) = '409' + SCAT MEMV + SELE avans409 + LOCA FOR NUME=m.NUME AND nract=m.pereche2 AND cont = m.scc and acont=m.ASCC &&And dataact=DAT + IF !FOUND() + LOCA FOR NUME=m.NUME AND nract=m.pereche2 + ENDIF + IF FOUND() + REPL facturat WITH facturat+m.suma + REPL factval WITH factval+m.suma_2 + ENDIF + SELE act + ENDSCAN + + +ENDIF +UNLOCK IN avans409 + +RETURN + +*----------------------------------------- +PROCEDURE refavans419 +LOCAL nla,nlb,ana,anb + + + +IF !se_reface() + RETURN +ENDIF + +DO refac_act WITH "419" IN actualizare_act.PRG + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +IF !FILE('&dateA\avans419.dbf') + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + + +SELE avans419 +IF FLOCK() + DELE ALL + APPEND FROM &dateA\avans419.DBF FOR achitat<>facturat OR achitatval<>factval + + SELE nract,dataact,COD,NUME,fdoc,suma AS achitat,suma_2 AS achitatval,SUMA_3 AS CURSSCHIMB,; + nume_4 AS NUMEVAL,DATAIREG,datascad,m.nl AS nl,m.an AS an, ASCC AS acont, scc as cont ; + FROM act WHERE LEFT(scc, 3) = '419' INTO CURSOR aaa ORDER BY dataact + + SELE avans419 + APPE FROM DBF('aaa') + + SELE act + SCAN FOR ALLTRIM(scd)='419' + SCAT MEMV + SELE avans419 + LOCA FOR NUME=m.NUME AND nract=m.PERECHE AND acont=m.ASCD &&And dataact=DAT + IF !FOUND() + LOCA FOR NUME=m.NUME AND nract=m.PERECHE + ENDIF + IF FOUND() + REPL facturat WITH facturat+m.suma + REPL factval WITH factval+m.suma_2 + ENDIF + SELE act + ENDSCAN + + +ENDIF +UNLOCK IN avans419 +RETURN + + + + + + +*-------------------------------------------------------------------------------------- +PROCEDURE completeaza_analitic +SET SAFETY OFF +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +IF !FILE('&datea\analitic.dbf') + COPY FILE _alfa\an0000\date00\analitic.* TO &dateA\analitic.* +ENDIF + +WAIT WINDOW 'Se calculeaza precedentele conturilor bifate...' NOWAIT +&& precedente pentru toate conturile recalculabile------------------- +USE &dateA\analitic.DBF IN 0 ALIAS analitica +SELECT analitica +*BROW +IF existacimp('analitica','totdeb') + SELECT CONT,NUME,totdeb AS precdeb,totcred AS preccred FROM analitica ; + WHERE CONT IN (SELECT CONT FROM f_analitic WHERE f_analitic.ales); + INTO CURSOR rrr +ELSE + SELECT CONT,NUME,DEB AS precdeb,cred AS preccred FROM analitica INTO CURSOR rrr +ENDIF +USE IN analitica +SELECT rrr +*BROW + +WAIT WINDOW 'Se readuc precedentele conturilor NEbifate...' NOWAIT +* conturi nerecalculabile------------------------ +SELECT * FROM analitic ; +WHERE CONT NOT IN (SELECT CONT FROM f_analitic WHERE f_analitic.ales); +INTO CURSOR sss + + + +*aduc in ana-------------------- +SELE analitic +COPY STRUCTURE TO &loc\&nfscurt\tempo\ana WITH CDX + +USE &loc\&nfscurt\tempo\ana IN 0 EXCL ALIAS ana ORDER TAG cn +SELE ana +APPEND FROM DBF('rrr') +APPEND FROM DBF('sss') + +USE IN rrr +USE IN sss + +WAIT WINDOW 'Se calculeaza rulajele...' NOWAIT + +SELECT * FROM act WHERE ; +scd IN (SELECT CONT FROM f_analitic WHERE f_analitic.ales) OR ; +scc IN (SELECT CONT FROM f_analitic WHERE f_analitic.ales); +INTO CURSOR aaa + +SELECT A.*,b.NUME AS numescd FROM aaa A FULL JOIN f_analitic b; +ON A.scd=b.CONT AND b.ales INTO CURSOR bbb + +SELECT A.*,b.NUME AS numescc FROM bbb A FULL JOIN f_analitic b; +ON A.scc=b.CONT AND b.ales INTO CURSOR actmic ORDER BY DATAIREG + +SELECT actmic +*brow + +*refacere ana--- +SELE actmic +*!* Set Filter To +*!* Set Order To DATAIREG +SCAN FOR !ISNULL(COD) + SCAT MEMV + + IF !ISNULL(numescd) + T='m.nume='+numescd + &T +* WAIT WINDOW t +* WAIT WINDOW m.nume + WAIT WINDOW 'Data: '+DTOC(DATAIREG) NOWAIT + SELE ana + SEEK m.scd+m.NUME + + IF FOUND() + REPL DEB WITH DEB+m.suma + ELSE + m.cont=m.scd + m.DEB=m.suma + m.cred=0 + APPE BLAN + GATH FIEL CONT,DEB,NUME MEMV + ENDIF + ENDIF + + SELE actmic + IF !ISNULL(numescc) + T='m.nume='+numescc + &T + SELE ana + SEEK m.scc+m.NUME + IF FOUND() + REPL cred WITH cred+m.suma + ELSE + m.cont=m.scc + m.cred=m.suma + m.DEB=0 + APPE BLAN + GATH FIEL CONT,cred,NUME MEMV + ENDIF + ENDIF + SELE actmic +ENDSCAN +SELE ana +DELE FOR EMPTY(CONT) +IF existacimp('ana','totdeb') + REPLACE ALL totdeb WITH DEB+precdeb,totcred WITH preccred+cred +ENDIF +PACK +*din ana in analitic----- +WAIT WINDOW 'Se salveaza datele...' NOWAIT +DO suprapune WITH 'analitic','ana' +SELECT analitic +SET ORDER TO TAG NUME + +USE IN ana + +RETURN + + + +*------------------------------------------------------------------------------- +PROCEDURE suprapune +PARAMETERS DEST,sursa +LOCAL R +R=0 +**golire +SELECT &DEST +SCATTER MEMVAR BLANK +SCAN + GATHER MEMV +ENDSCAN + +SELECT &DEST +SET ORDER TO +ON ERROR APPE BLAN +GOTO 1 +*BROWSE TITLE 'DEST' +IF FLOCK() + RECALL ALL + + SELECT &sursa + SET ORDER TO +*BROWSE TITLE 'SURSA' + SCAN + R=RECNO() + SCATTER MEMV + SELECT &DEST +*SKIP +*!* If Eof() +*!* Append Blank +*!* ELSE + ON ERROR APPE BLAN + GOTO R +*!* ENDIF + GATHER MEMV + SELECT &sursa + ENDSCAN + + SELECT &DEST + R=RECNO() + DELETE FOR RECNO()>R + +ENDIF +UNLOCK IN &DEST + +RETURN + + + + +*-------------------------------------------------------------------------------------------------------------- +FUNCTION se_reface +LOCAL SE,PRIMALUNA,ACTGOL +SE=.T. +STORE .F. TO PRIMALUNA,ACTGOL + +&&E PRIMA LUNA? +SELECT calendar +GO TOP +IF an=M.an AND nl=M.nl + PRIMALUNA=.T. +ENDIF +SELECT * FROM act INTO CURSOR bbb +IF _TALLY<3 + ACTGOL=.T. +ENDIF + +buton=1 +IF PRIMALUNA AND !ACTGOL + OTM=CREA('TEXTMARER') + OTM.label2.CAPTION='Aceasta este prima luna deschisa. Prin refacere se sterg toate acele date de initializare inscrise'+; + ' manual direct in fisiere si carora nu le corespund inregistrari in registrul jurnal. Doriti ca totusi sa execute refacerea?' + OTM.SHOW(1) + IF buton=2 + RETURN .F. + ENDIF +ENDIF + +SE=!(PRIMALUNA AND ACTGOL) +IF !SE + DO mesaj WITH 'Aceasta este prima luna iar registrul jurnal este gol.','Refacerea nu se executa!' +ENDIF +RETURN SE + + + + + + +*_________________________________________ +PROCEDURE REFcredlun +LOCAL nla,nlb,ana,anb,cond,cond1 + +IF !se_reface() + RETURN +ENDIF + + +cond='(year(dataireg)10000) + IF FOUND() + REPL achitat WITH m.achitat+achitat + REPL achitatval WITH achitatval+m.achitatval + ENDIF + SELE act + ENDDO + +ENDIF + + +SELE act +SET FILT TO + +UNLOCK IN deblun +SELE deblun +SET FILTER TO +RETURN + + +*---------------------------------------------------------------------------------------------- +PROCEDURE refchavans +LOCAL nla,nlb,ana,anb,cond,cond1 +STORE 0 TO M.suma_2, M.achitatval,M.suma,M.sumaval,M.achitat + + +IF !se_reface() + RETURN +ENDIF + +DO refac_act WITH "471" IN actualizare_act.PRG + +cond='(year(dataireg)10000) + IF FOUND() + REPL achitat WITH m.achitat+achitat + REPL achitatval WITH achitatval+m.achitatval + ENDIF +* SET FILTER TO ACHITAT=0 + SELE act + ENDDO + +ENDIF + +UNLOCK IN vanzlu4118 +SELE vanzlu4118 +SET FILTER TO +SELECT act +SET FILTER TO +RETURN + + + +*_______________________________________ +PROCEDURE CALCULEAZABALANTA +SELECT BAL +IF FLOCK() + REPLACE ALL totdeb WITH RULDEB+precdeb; + totcred WITH RULCRED+preccred +ENDIF +UNLOCK +SCAN + IF FLOCK() + IF totdeb-totcred>0 + REPLACE SOLDDEB WITH totdeb-totcred; + SOLDCRED WITH 0 + ELSE + REPLACE SOLDCRED WITH totcred-totdeb; + SOLDDEB WITH 0 + ENDIF + ENDIF + UNLOCK +ENDSCAN +RETURN + +*_________________________________________ + +PROCEDURE RefAna418 +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\ANA418.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'ANA418.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\ANA418.DBF IN 0 ALIAS ANA418U + +SELECT ANA418U + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('ANA418u.totdeb') = 'U' + SELECT NUME,COD_FISCAL, productie AS precdeb,incasat AS preccred FROM ANA418U INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + productie, totcred WITH preccred + incasat, totvaldeb WITH precvaldeb + prodval, totvalcre WITH precvalcre + incasval +*REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('ANA418u.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(PRECdeb + productie) AS precdeb, SUM(preccred + incasat) AS preccred, ; + SUM(precvaldeb + prodval) AS precvaldeb, SUM(precvalcre + incasval) AS precvalcre ; + FROM ANA418U INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(PRECdeb + productie) AS precdeb, SUM(preccred + incasat) AS preccred, ; + SUM(precvaldeb + prodval) AS precvaldeb, SUM(precvalcre + incasval) AS precvalcre ; + FROM ANA418U INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN ANA418U + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA + +SELECT NUME, ; +IIF(LEFT(scd,3) = '418', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '418', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '418', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '418', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '418', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('418',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t418 GROUP BY 1, 2, 3 + +SELECT t418 +SCAN + SCATTER NAME o418 + SELECT rcli + SEEK LEFT(o418.NUME,30) + o418.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o418.COD_FISCAL + ENDIF + ELSE + SEEK LEFT(o418.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o418.acont + ELSE + APPEND BLANK + GATHER NAME o418 + ENDIF + ENDIF + REPLACE productie WITH productie + o418.debit, incasat WITH incasat + o418.credit, prodval WITH prodval + o418.valdebit, incasval WITH incasval + o418.valcredit + + SELECT t418 +ENDSCAN +RELEASE o418 +USE IN t418 + +SELECT rcli +REPLACE ALL totdeb WITH precdeb+productie,totcred WITH preccred+incasat &&,totavans WITH precavans+avans +REPLACE ALL totvaldeb WITH precvaldeb+prodval,totvalcre WITH precvalcre+incasval &&,TOTAVANSV WITH PRECAVANSV+AVANSVAL + +SELECT ANA418 +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +SELECT ANA418 +SET ORDER TO TAG NANA +RETURN + + +*_________________________________________ +PROCEDURE RefFact418 +LOCAL nla,nlb,ana,anb,cond,cond1 +STORE 0 TO M.suma_2, M.achitatval,M.suma,M.sumaval,M.achitat + + +IF !se_reface() + RETURN +ENDIF + +DO refac_act WITH "418" IN actualizare_act.PRG + +cond='(year(dataireg)10000) + IF FOUND() + REPL achitat WITH m.achitat+achitat + REPL achitatval WITH achitatval+m.achitatval + ENDIF +* SET FILTER TO ACHITAT=0 + SELE act + ENDDO + +ENDIF +UNLOCK IN Fact418 +SELECT act +SET FILTER TO +SELE Fact418 +SET FILTER TO +RETURN + + +*---------------------------------------------------------------------------------------------- +PROCEDURE REFVNAvans && refVENITavans +LOCAL nla,ana,anb,cond,cond1,dateA +*Store 0 To M.SUMA_2, M.achitatval,M.SUMA,M.sumaval,M.achitat + + +IF !se_reface() + RETURN +ENDIF + +cond='(year(dataireg)10000) + IF FOUND() + REPL achitat WITH m.achitat+achitat + REPL achitatval WITH achitatval+m.achitatval + REPLACE nume_4 WITH m.EXPLICATIA + ENDIF + SELE act + ENDDO + + +ENDIF + + +SELE act +SET FILT TO + +UNLOCK IN ACHILUN +SELE ACHILUN +SET FILTER TO +RETURN + +*___________________________________________________________________________ + +PROCEDURE REFdividende +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\dividende.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'dividende.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\dividende.DBF IN 0 ALIAS dividendeU + +SELECT dividendeU + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('dividendeu.totdeb') = 'U' + SELECT NUME,COD_FISCAL, LUAT AS precdeb, DAT AS preccred FROM dividendeU INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit, totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit +*REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('dividendeu.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM dividendeU INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM dividendeU INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN dividendeU + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA + +SELECT NUME, ; +IIF(LEFT(scd,3) = '457', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '457', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '457', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '457', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '457', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('457',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t457 GROUP BY 1, 2, 3 + +SELECT t457 +SCAN + SCATTER NAME o457 + SELECT rcli + SEEK LEFT(o457.NUME,30) + o457.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o457.COD_FISCAL + ENDIF + REPLACE debit WITH debit + o457.debit, credit WITH credit + o457.credit, valdebit WITH valdebit + o457.valdebit, valcredit WITH valcredit + o457.valcredit + ELSE + SEEK LEFT(o457.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o457.acont + REPLACE debit WITH debit + o457.debit, credit WITH credit + o457.credit, valdebit WITH valdebit + o457.valdebit, valcredit WITH valcredit + o457.valcredit + ELSE + APPEND BLANK + GATHER NAME o457 + ENDIF + ENDIF + + SELECT t457 +ENDSCAN +RELEASE o457 +USE IN t457 + +SELECT rcli +REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit &&,totavans WITH precavans+avans +REPLACE ALL totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit &&,TOTAVANSV WITH PRECAVANSV+AVANSVAL + +SELECT dividende +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +SELECT dividende +SET ORDER TO TAG NANA +RETURN + +*_________________________________________ + +PROCEDURE refdivLUN +LOCAL nla,nlb,ana,anb,cond,cond1 +STORE 0 TO M.suma_2, M.achitatval,M.suma,M.sumaval,M.achitat + + +IF !se_reface() + RETURN +ENDIF + +cond='(year(dataireg)10000) + IF FOUND() + REPL achitat WITH m.achitat+achitat + REPL achitatval WITH achitatval+m.achitatval + REPLACE nume_4 WITH m.EXPLICATIA + ENDIF + SELE act + ENDDO + + +ENDIF + + +SELE act +SET FILT TO + +UNLOCK IN divLUN +SELE divLUN +SET FILTER TO +RETURN + +*________________________________________________________ + +PROCEDURE REFActionar +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +COPY FILE &dirgen\_alfa\an0000\date00\ACTIONAR.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'ACTIONAR.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\ACTIONAR.DBF IN 0 ALIAS ACTIONARU + +SELECT ACTIONARU + + +USE &loc\&nfscurt\tempo\rcli IN 0 ALIAS rcli + +&&precedente--------- +IF TYPE('ACTIONARu.totdeb') = 'U' + SELECT NUME,COD_FISCAL, DAT AS precdeb, LUAT AS preccred FROM ACTIONARU INTO CURSOR rrr +ELSE + REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit, totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit +*REPLACE ALL totavans WITH precavans + avans, totavansv WITH precavansv + avansval + IF TYPE('ACTIONARu.acont') # 'U' + SELECT NUME, acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM ACTIONARU INTO CURSOR rrr GROUP BY NUME, acont + + ELSE + SELECT NUME, SPACE(4) AS acont, COD_FISCAL, NUMEVAL, ; + SUM(precdeb + debit) AS precdeb, SUM(preccred + credit) AS preccred, ; + SUM(precvaldeb + valdebit) AS precvaldeb, SUM(precvalcre + valcredit) AS precvalcre ; + FROM ACTIONARU INTO CURSOR rrr GROUP BY NUME + ENDIF +ENDIF + +USE IN ACTIONARU + +SELECT rcli +APPEND FROM DBF('rrr') +USE IN rrr + + +&&rulaje------------ +SELE rcli +SET ORDER TO TAG NANA + +SELECT NUME, ; +IIF(LEFT(scd,3) = '455', ASCD, ASCC) AS acont, ; +COD_FISCAL, nume_4 AS NUMEVAL, ; +SUM(IIF(LEFT(scc,3) = '455', suma, 00000000000000)) AS credit, ; +SUM(IIF(LEFT(scd,3) = '455', suma, 00000000000000)) AS debit, ; +SUM(IIF(LEFT(scc,3) = '455', suma_2, 00000000000000.00)) AS valcredit, ; +SUM(IIF(LEFT(scd,3) = '455', suma_2, 00000000000000.00)) AS valdebit ; +FROM act ; +WHERE INLIST('455',LEFT(scd, 3), LEFT(scc,3)) ; +INTO CURSOR t455 GROUP BY 1, 2, 3 + +SELECT t455 +SCAN + SCATTER NAME o455 + SELECT rcli + SEEK LEFT(o455.NUME,30) + o455.acont + IF FOUND() + IF EMPTY(COD_FISCAL) + REPLACE COD_FISCAL WITH o455.COD_FISCAL + ENDIF + REPLACE debit WITH debit + o455.debit, credit WITH credit + o455.credit, valdebit WITH valdebit + o455.valdebit, valcredit WITH valcredit + o455.valcredit + ELSE + SEEK LEFT(o455.NUME,30) + SPACE(4) + IF FOUND() + REPLACE acont WITH o455.acont + REPLACE debit WITH debit + o455.debit, credit WITH credit + o455.credit, valdebit WITH valdebit + o455.valdebit, valcredit WITH valcredit + o455.valcredit + ELSE + APPEND BLANK + GATHER NAME o455 + ENDIF + ENDIF + + SELECT t455 +ENDSCAN +RELEASE o455 +USE IN t455 + +SELECT rcli +REPLACE ALL totdeb WITH precdeb + debit, totcred WITH preccred + credit &&,totavans WITH precavans+avans +REPLACE ALL totvaldeb WITH precvaldeb + valdebit, totvalcre WITH precvalcre + valcredit &&,TOTAVANSV WITH PRECAVANSV+AVANSVAL + +SELECT ACTIONAR +IF FLOCK() + DELETE ALL + APPEND FROM &loc\&nfscurt\tempo\rcli FOR !DELETED() +ENDIF +UNLOCK +USE IN rcli +SELECT ACTIONAR +SET ORDER TO TAG NANA +RETURN + + +*_________________________________________ + +PROCEDURE ref_balanta_partener +LOCAL nla,nlb,ana,anb + +IF !se_reface() + RETURN +ENDIF + +nlb=m.nl +anb=m.an +dateb=calefirma+'\an'+anb+'\'+'date'+nlb + +SELE calendar +LOCATE FOR nl=m.nl AND an=m.an +SKIP -1 +IF !BOF() + nla=nl + ana=an + dateA=calefirma+'\an'+ana+'\date'+nla &&DATE PREC +ELSE + dateA=dirgen+'\_alfa\an0000\date00\' +ENDIF + +SET SAFETY OFF +COPY FILE &dirgen\_alfa\an0000\date00\balanta_partener.* TO &loc\&nfscurt\tempo\rcli.* + +lcFile = ADDBS(dateA) + 'balanta_partener.dbf' +IF !FILE(lcFile) + dateA = dirgen+'\_alfa\an0000\date00' +ENDIF + +USE &dateA\balanta_partener.DBF IN 0 ALIAS balanta_partenerU + +SELECT balanta_partenerU +SELECT * FROM balanta_partenerU WHERE CONT = loCont.CONT INTO CURSOR balanta_partenerA READWRITE +USE IN balanta_partenerU + +SELECT balanta_partenerA +REPLACE ALL precdeb WITH precdeb + debit, preccred WITH preccred + credit, ; +precvaldeb WITH precvaldeb + valdebit, precvalcre WITH precvalcre + valcredit + +REPLACE ALL debit WITH 0, credit WITH 0, valdebit WITH 0, valcredit WITH 0 + +*!* SELECT SUM(IIF(SCD = loCont.CONT, SUMA, 0)) AS debit, SUM(IIF(SCC = loCont.CONT, SUMA, 0)) AS credit, ; +*!* SUM(IIF(SCD = loCont.CONT, SUMA_2, 0)) AS VALDEBIT, SUM(IIF(SCC = loCont.CONT, SUMA_2, 0)) AS VALCREDIT, ; +*!* id_partd, id_partc, IIF(SCD = loCont.CONT, ASCD, IIF(SCC = loCont.CONT, ASCC, '')) AS acont ; +*!* FROM ACT ; +*!* WHERE (!EMPTY(id_partd) OR !EMPTY(id_partc)) AND INLIST(loCont.CONT,SCD,SCC) ; +*!* INTO CURSOR tact ; +*!* GROUP BY id_part, acont + +SELECT SUM(suma) AS debit, SUM(suma_2) AS valdebit, id_partd, ASCD ; +FROM act ; +WHERE !EMPTY(id_partd) AND scd = loCont.CONT ; +INTO CURSOR tactd ; +GROUP BY id_partd, ASCD + +&&& debit +SELECT tactd +SCAN + SCATTER NAME oact + SELECT balanta_partenerA + LOCATE FOR IDpart = oact.id_partd AND CONT = loCont.CONT AND acont = oact.ASCD + IF FLOCK() + IF !FOUND() + APPEND BLANK + GATHER NAME oact + REPLACE IDpart WITH oact.id_partd, CONT WITH loCont.CONT, acont WITH oact.ASCD + ELSE + REPLACE debit WITH debit + oact.debit, ; + valdebit WITH valdebit + oact.valdebit + ENDIF + + ENDIF + UNLOCK + SELECT tactd +ENDSCAN +RELEASE oact +USE IN tactd + +&&& credit +SELECT SUM(suma) AS credit, SUM(suma_2) AS valcredit, id_partc, ASCC ; +FROM act ; +WHERE !EMPTY(id_partc) AND scc = loCont.CONT ; +INTO CURSOR tactc ; +GROUP BY id_partc, ASCC + +SELECT tactc +SCAN + SCATTER NAME oact + SELECT balanta_partenerA + LOCATE FOR IDpart = oact.id_partc AND CONT = loCont.CONT AND acont = oact.ASCC + IF FLOCK() + IF !FOUND() + APPEND BLANK + GATHER NAME oact + REPLACE IDpart WITH oact.id_partc, CONT WITH loCont.CONT, acont WITH oact.ASCC + ELSE + REPLACE credit WITH credit + oact.credit, ; + valcredit WITH valcredit + oact.valcredit + ENDIF + ENDIF + UNLOCK + SELECT tactc +ENDSCAN +RELEASE oact +USE IN tactc + +SELECT balanta_partenerA +REPLACE ALL totdeb WITH precdeb + debit, totvaldeb WITH precvaldeb + valdebit +REPLACE ALL totcred WITH preccred + credit, totvalcre WITH precvalcre + valcredit + +SELECT balanta_partener +SET FILTER TO +IF FLOCK() + DELETE ALL FOR CONT = loCont.CONT + APPEND FROM DBF('balanta_partenerA') +ENDIF +UNLOCK + + +USE IN balanta_partenerA + +ENDPROC && ref_balanta_partener diff --git a/Programe/roacontracte.prg b/Programe/roacontracte.prg new file mode 100644 index 0000000..48a7862 --- /dev/null +++ b/Programe/roacontracte.prg @@ -0,0 +1,1064 @@ +Parameters tparam + +Local lchost, lcUserName, lcPassword, lnIdUtil, lnIdProgram, lcUserNameApp,lcPasswordApp +Store '' To lchost, lcUserName, lcPassword, lcUserNameApp,lcPasswordApp +Store 0 To lnIdUtil, lnIdProgram +Public gcNumeProgram +gcNumeProgram = "ROACONTRACTE" +If !Like(gcNumeProgram + '*', Upper(Alltrim(Juststem(Sys(16,0))))) + Messagebox("Nu puteti porni acest program!",0+16,"Atentie") + Return +Endif +_Screen.Icon=gcNumeProgram+'.ico' + + +Set Century On +Set Deleted On +Set Date To Dmy +Set Exclusive Off +Set Cpdialog Off +Set Talk Off +Set Safety Off +Set Escape Off +Set Exact On +Set Mark To '/' +Set Ansi On +Set Console Off +Set Notify Off +Set Seconds Off +Set NullDisplay To '' +Set Decimals To 4 +_Screen.Visible=.F. +_Screen.AutoCenter=.T. +SET HOURS TO 24 + + +*VARIABILE_______ +Local lcMainClassLib +Local lcLastSetTalk,lcLastSetPath,lcLastSetClassLib,lcOnShutdown + + +*VARIABILE__________________________________________________________________________ +Declare nror[65000] +Declare RTVA[22,2] + + + +Public CRLF,CR,LF,Tab +Store Chr(13) + Chr(10) To CRLF +Public pcNl,pcAn +Store "" To pcNl,pcAn && se initializeaza in start00 +CR=Chr(13) +LF=Chr(10) +Tab=Chr(9) + +Public pcTitlu,pl_verificat +Store "" To pcTitlu +Store .F. To pl_verificat +Public BUTON, luna_inchisa, luna_neplatita, PRIMADATA, m.ctva, m.ctvam, m.ctvai, antet, m.nivel +Public OStart,OSETVIZ,OSETTULBAR,OSETINSTRUM,orm,OTEXT,OJUR,osetgest,tlbr_INSTR,tlbr_VIZ,oprinc,DIRGEN +Public pcapsocsub,pcapsocvar +pcapsocsub=0 +pcapsocvar=0 +Public a4 +a4=.T. +m.nrgrup=999 + +Store .F. To luna_inchisa,tlbr_INSTRum,tlbr_VIZ +Store 1 To BUTON,col_menu +Store .T. To PRIMADATA,luna_neplatita + + +*** DECLARATII DE VARIABILE PUBLICE +********************************************************************************************** +*-- Save and configure environment.*********************** +lcLastSetTalk=Set("TALK") +Set Talk Off +lcLastSetPath=Set("PATH") + +Public gcAppPath,gcAppName,gcTempPath, gcCaleServerDate, gcUserNameApp, gcPasswordApp,gcDirMare, gcBasePath +Store '' To gcUserNameApp, gcPasswordApp, gnNivelUtilizator, gnGrupUtilizator, gcAcces,gcDirMare, gcBasePath + +Set Procedure To 'd:\roa\roacontracte\comun\utile\web\wwutils.prg' Additive +Set Procedure To 'd:\roa\roacontracte\comun\utile\web\wwapi.prg' Additive + +gcAppPath=Addbs(ShortPath(GetAppStartPath())) +If Right(gcAppPath ,9)="PROGRAME\" + gcAppPath = Substr(gcAppPath ,1,Len(gcAppPath )-9) +Endif + +gcAppName=Allt(Uppe(Juststem(Sys(16,0)))) +Set Default To (gcAppPath) + +lcPath = gcAppPath + 'Date;' + ; + gcAppPath + 'Include;' + ; + gcAppPath + 'FERESTRE;' + ; + gcAppPath + 'GRAFICE;' + ; + gcAppPath + 'Help;' + ; + gcAppPath + 'CLASE;' + ; + gcAppPath + 'MENIURI;' + ; + gcAppPath + 'PROGRAME;' + ; + gcAppPath + 'RAPOARTE;' + ; + gcAppPath + 'COMUN\PROGRAME;' + ; + gcAppPath + 'COMUN\CLASE;' + ; + gcAppPath + 'COMUN\FERESTRE;' + ; + gcAppPath + 'COMUN\GRAFICE;' + ; + gcAppPath + 'COMUN\RAPOARTE;' + ; + gcAppPath + 'COMUN\UTILE\CALENDAR;' + ; + gcAppPath + 'COMUN\UTILE\GRIDEXTRAS;' + ; + gcAppPath + 'COMUN\UTILE\CTL32;' + ; + gcAppPath + 'COMUN\UTILE\HPDF;' + ; + gcAppPath + 'COMUN\UTILE\HPDF\REPORTOUTPUT;' + ; + gcAppPath + 'COMUN\UTILE\WEB;' + ; + gcAppPath + 'COMUN\UTILE\EMAIL;' + ; + gcAppPath + 'COMUN\UTILE\EXCEL;' + ; + gcAppPath + 'COMUN\UTILE\NFJSON;' + ; + gcAppPath + 'COMUN\UTILE\NFXML;' + ; + gcAppPath + 'COMUN\UTILE\MENU;' + ; + Addbs(Substr(gcAppPath,1,Rat([\],gcAppPath,2)))+[COMUNROA\] + +Set Path To (lcPath) + +Push Menu _Msysmenu +lcLastSetClassLib=Set("CLASSLIB") +lcMainClassLib= gcAppPath + "COMUN\clase\appwiz.vcx" + +*CLASE__________________________________________________________ +Set Classlib To (lcMainClassLib) Additive +Set Classlib To CAUT Additive +Set Classlib To ooptiuni Additive +Set Classlib To accessibility Additive +Set Classlib To registry Additive +Set Classlib To decabaza Additive +Set Classlib To cauta_alfa_forms Additive +Set Classlib To ferestre_oracle Additive +Set Classlib To caut_ora Additive +Set Classlib To ferestre_contracte Additive +Set Classlib To onomenclatoare Additive +Set Classlib To ofundal Additive +Set Classlib To ofundal_roaclienti Additive +*!* messagebox in romana - ar trebui bagat intr-o librarie de utilitati +*!* messagebox.vcx, functia amessagebox in oproceduri_comune, imagini mb_*.bmp, messagebox.h +Set Classlib To Messagebox Additive +Set Classlib To otoolbar Additive +Set Classlib To ferestre_cere_date Additive +Set Classlib To orapoarte_comun Additive +* SET CLASSLIB TO outlook2003bar ADDITIVE +Set Classlib To onom_articole Additive +*Set Classlib To oparteneri ADDITIVE +SET CLASSLIB TO ofacturare_comun ADDITIVE + +Set Classlib To ocriterii.vcx Additive +Set Classlib To ctl32_statusbar.vcx Additive +Set Classlib To ctl32_common.vcx Additive +Set Classlib To ctl32_structs.vcx Additive +Set Classlib To ctl32_progressbar.vcx Additive +Set Classlib To serii_numere.vcx Additive +Set Classlib To ferestre_atasamente Additive +SET CLASSLIB TO ofacturare ADDITIVE +SET CLASSLIB TO onom_curs ADDITIVE +SET CLASSLIB TO comun ADDITIVE +SET CLASSLIB TO ofacturare_rapoarte ADDITIVE +SET CLASSLIB TO wwdialogs.vcx ADDITIVE +*!* modificare v 2.0.34 +SET CLASSLIB TO orapoarte_cont.vcx additive +SET CLASSLIB TO _calendar.vcx additive && v 2.1.5 +Set Classlib To locale Additive && v 2.1.10 + +SET CLASSLIB TO gridextras.vcx ADDITIVE +SET CLASSLIB TO menutool.vcx ADDITIVE + +*PROCEDURI______________________________________________________ +Set Procedure To quitapp Additive +Set Procedure To init_program Additive +Set Procedure To oproceduri_comune Additive +Set Procedure To gencursor.prg Additive +Set Procedure To updateserver.prg Additive +Set Procedure To update_nomenclator.prg Additive +Set Procedure To onomenclatoare Additive +Set Procedure To oproceduri_ams Additive +Set Procedure To ocautare Additive +Set Procedure To oinit_optiuni Additive +Set Procedure To osecurity Additive +Set Procedure To proceduri Additive +Set Procedure To oproceduri_roacontracte Additive +Set Procedure To acces_meniu Additive +Set Procedure To proceduri Additive +Set Procedure To oheader Additive +Set Procedure To oparteneri_contracte Additive +Set Procedure To oproceduri_maintenance.prg Additive && modifica_id_partener +Set Procedure To proceduri_excel Additive +Set Procedure To cauta_alfa Additive +Set Procedure To ini.prg Additive +Set Procedure To wwxmlhttp.prg Additive +Set Procedure To wwutils.prg Additive +Set Procedure To wwconfig.prg Additive +Set Procedure To oexport.prg Additive +Set Procedure To oproceduri_atasamente.prg Additive +Set Procedure To oserii_numere Additive +Set Procedure To oproceduri_atasamente Additive +SET PROCEDURE TO oproceduri_facturare ADDITIVE +SET PROCEDURE TO ofacturare_comun ADDITIVE +SET PROCEDURE TO ofacturare ADDITIVE +SET PROCEDURE TO oproceduri_curs ADDITIVE +SET PROCEDURE TO ooperatii_comune ADDITIVE +SET PROCEDURE TO odocumente ADDITIVE +SET PROCEDURE TO regex.prg ADDITIVE +SET PROCEDURE TO oproceduri_rapoarte_fact ADDITIVE +SET PROCEDURE TO filebringer.prg additive +SET PROCEDURE TO iniacces.prg ADDITIVE +SET PROCEDURE TO oupdate.prg additive +SET PROCEDURE TO procese.prg additive +SET PROCEDURE TO version.prg additive +SET PROCEDURE TO wwapi.prg ADDITIVE +SET PROCEDURE TO wwcodeupdate.prg additive +SET PROCEDURE TO wwhttp.prg ADDITIVE +SET PROCEDURE TO xmlaccess.prg additive +SET PROCEDURE TO xmlparser.prg additive +*!* modificare v 2.0.34 +SET PROCEDURE TO validare.prg Additive +*!* modificare v 2.0.35 +SET PROCEDURE TO xdate.prg Additive +SET PROCEDURE TO suma_in_vorbe.prg additive +*!* modificare v 2.0.35 ^ + +SET PROCEDURE TO gridextrasprocs.prg ADDITIVE +Set Procedure To proceduri_comune Additive +SET PROCEDURE TO blat.prg ADDITIVE + +SET PROCEDURE TO email.prg ADDITIVE +SET PROCEDURE TO nfxmlread.prg ADDITIVE +SET PROCEDURE TO nfxmlread.prg ADDITIVE +SET PROCEDURE TO nfjsonread.prg ADDITIVE + +SET PROCEDURE TO xmlefactura.prg ADDITIVE + +*---------------------------------------------------------------------------- + +If Pcount() = 1 And Type('tparam') = 'C' + glParametri = .T. + Private laParametri + Declare laParametri[1] + lcParam = Alltrim(tparam) + lnNr = lista2array(lcParam,@laParametri,";") + If lnNr < 6 + Messagebox('Numar incorect de parametri',0+16,'Eroare') + Return + Endif + lchost = laParametri[1] + lcUserName = laParametri[2] + lcPassword = laParametri[3] + lnIdUtil = Round(Val(laParametri[4]),0) + lnIdProgram = Round(Val(laParametri[5]),0) + lnParametru_prog = Round(Val(laParametri[6]),0) +Else + glParametri = .F. + lchost = 'JCSSERVER' + lcUserName = 'CONTAFIN_ORACLE' + lcPassword = '' + lnIdUtil = 0 + lnIdProgram = 0 + lnParametru_prog = 0 + +Endif + + +*------------------------------------- +Public glVerificTabel && daca se verifica structura tabelelor in totv.prg +glVerificTabel=.T. + +Public glQuit +glQuit = .F. + +Public gnIdIstoric +gnIdIstoric = 0 + +*!* gcAppDataPath=gcAppPath+"Date_"+gcAppName+"\" && D:\CONTAFIN\TRANS\DATE_TRANS && PT OPTIUNI , FISIERE SPECIFICE PROGRAMULUI SI +gcUtilizatoriPath = gcAppPath + "UTILIZATORI\" + +Store "" To gcTempPath, gcCaleServerDate + +*!* If !Directory(gcAppDataPath) +*!* Md (gcAppDataPath) +*!* Endif +*--------------------------------------- +*** DIRGEN +liat=Rat("\",gcAppPath,2) +gcDirMare = Addbs(Left(gcAppPath,liat-1)) && modificare v 2.0.34 +DIRGEN = gcDirMare +gcBasePath = DIRGEN +Cd &DIRGEN + +*!* 21.06.2006 +*!* marius.mutu +Private gcGeneralIniFile, gcSettingsFile +gcGeneralIniFile = m.gcDirMare + "settings.ini" +gcSettingsFile = m.gcGeneralIniFile +If !File(gcGeneralIniFile) + + TEXT TO lcSettings NOSHOW +[errors] +host=http://romfast.dnsalias.com:3000/errors/create_xml + ENDTEXT + + Strtofile(lcSettings, gcGeneralIniFile) +Endif + +*!* modificare v 2.1.10 +PRIVATE gcReportPreviewer, gcReportPreviewerPath +gcReportPreviewer = "FoxyPreview" && oexport.prg +gcReportPreviewerPath = gcDirMare + "COMUNROA\" +*!* modificare v 2.1.10 ^ + +gcSecurityPath = m.gcDirMare + 'Security\' +gcSecurityFile = gcSecurityPath + 'ROA_SECURITY.TXT' + +Private poLog,goLog && obiect pt logarea mesajelor sistemului +poLog = Newobject("Log_Mesaje","Log_Mesaje.prg") +goLog = poLog + +*!* public poLog && obiect pt logarea mesajelor sistemului +*!* poLog = NEWOBJECT("Log_Mesaje","Log_Mesaje.prg") + +*!* modificare v 2.1.10 +Private gcLocalePath, goLocale, gcLocale +gcLocalePath = gcAppPath + "Locale\" +lcLanguage = getini(gcGeneralIniFile,"locale","lang") +llLocale= getini(gcGeneralIniFile,"locale","llocale") +If Empty(m.lcLanguage) + gcLocale = 'Romana' +Else + gcLocale = m.lcLanguage +Endif +Local lcObjLocale +If gcLocale = 'Romana' + lcObjLocale = [Locale_dummy] +Else + lcObjLocale = [Locale] +Endif +goLocale=Newobject(lcObjLocale,"Locale.vcx") +If !Empty(m.llLocale) And m.llLocale<>'0' + goLocale.llocale=.T. +Endif +Release lcObjLocale +goLocale.locale = gcLocale +*!* modificare v 2.1.10 ^ + +Public glQuit +glQuit = .F. + +Public gnIdIstoric +gnIdIstoric = 0 +Public gcAntet +Store '' To gcAntet +*!* modificare v 2.1.10 +*!* If verificari() +*!* _Screen.Visible=.T. +*!* Do mesaj With "Se fac verificari programului","Va rugam reveniti" +*!* glQuit= .T. +*!* Quit +*!* Endif + +*!* If !Debug_Start() +*!* lcParam=tparam +*!* If Empty(tparam) Or (Type('tParam')='C' And !verific_start(tparam,DIRGEN,gcAppName)) +*!* _Screen.Visible=.T. +*!* Do mesaj With "Programul trebuie pornit doar din START","" +*!* Quit +*!* Endif +*!* Endif +*!* modificare v 2.1.10 ^ +*** verificare serie permanenta +*!* modificare v 2.0.41 +*!* Public tipar,SER_PERM,SER_PERI,VERSIUNE +*!* Store .F. To SER_PERM,SER_PERI +*!* modificare v 2.0.41 ^ + +***************************** VARIABILE ORACLE +Private goUtilizator +Private gnHandle,gnidutil,GCCODFISCAL,GCADRESA,GCNUMEFIRMA,GCMONEDA,GNDIFZILE, gcUserNameApp, gcPasswordApp +Private gnButon && variabila pentru renunt si terminat +Store 2 To gnButon +Store '' To GCCODFISCAL,GCADRESA,GCNUMEFIRMA,GCMONEDA, gcUserNameApp, gcPasswordApp, gcNivelUtilizator, gcGrupUtilizator, gcAcces +gnHandle = -1 +gnidutil = 0 + +Private gcHost, gcUserName, gcPassword, gofundal, gnIdProgram, gnId_prg_owner, gnParametru_prog +Store 0 To gnIdProgram, gnId_prg_owner +Store 1 To gnParametru_prog && default contracte clienti (daca nu se porneste programul din roastart) +gofundal='' + +Private goFirma,gnIdFirma,gcFirma,gnAn,gnLuna && ,gnPA,gnPC +&& STORE 0 TO gnPA,gnPC && nr. de zecimale afisare, calcul +Store Null To goFirma +Store 0 To gnIdFirma,gnAn,gnLuna +Store '' To gcFirma + +Private glUltimaLuna,glPrimaLuna, glLunaBuna,glLuna_neplatita,glLunaInchisa + +Store .F. To glUltimaLuna,glPrimaLuna, glLunaBuna,glLuna_neplatita,glLunaInchisa + +***toolbar*** +Private otool,ohelp +Store '' To otool,ohelp +***toolbar*** + +Private gcS && schema firmei +Store 'DEMO' To gcS + +If Type('laparametri',1)="A" + If Alen(laParametri,1)=10 + gnAn = Val(laParametri[7]) + gnLuna = Val(laParametri[8]) &&lansare noua + gcS = laParametri[9] + gnIdFirma = Val(laParametri[10]) + Endif +Endif + +Private gcCopyRight +gcCopyRight = '© ROA Romfast SRL' + +&& obiect global wrap pt sqlexec cu text eroare si succes +Private goExecutor, goConn +goExecutor = Createobject("oExecutor") +goConn = Createobject("oConn") + +&& obiect global pentru export : frx, xls +Private goExport +goExport = Createobject("oExportConfig") + +*!* 21.06.2006 +*!* marius.mutu +Private goMyXMLHTTP +lcHostErrors = getini(gcGeneralIniFile,'errors','host') +goMyXMLHTTP = Createobject("MyXMLHTTP", lcHostErrors) + +*!* 28.10.2008 +Private pnGNnumar && poGeneratorNumere +Store 0 To pnGNnumar + +&& obiect global pt luna aleasa din calendar +Private goCalendar +Store Null To goCalendar + +gcHost = lchost +gcUserName = lcUserName +gcPassword = lcPassword +gcUserNameApp = lcUserNameApp +gcPasswordApp = lcPasswordApp +gnidutil = lnIdUtil +gnIdProgram = lnIdProgram +gnParametru_prog = lnParametru_prog +If Empty(gnParametru_prog) + gnParametru_prog = 1 +Endif + + +If !glParametri + lnValid = getcrsSecurity(gcSecurityFile) + If lnValid > 0 + If Used('crsHost') + Select crsHost + Go Top + gcHost = Alltrim(Host) + gcUserName = Alltrim(schema) + gcPassword = Alltrim(pwd) + Use In crsHost + Endif + Endif +Endif + +*!* IF glParametri +*!* gcHost = lcHost +*!* gcUserName = lcUserName +*!* gcPassword = lcPassword +*!* gcUserNameApp = lcUserNameApp +*!* gcPasswordApp = lcPasswordApp +*!* gnIdUtil = lnIdUtil +*!* gnIdProgram = lnIdProgram +*!* ELSE +*!* gcHost = "jcsserver" +*!* gcUserName = "contafin_ORACLE" +*!* gcPassword = "123" +*!* gcUserNameApp = '' +*!* gcPasswordApp = '' +*!* gnIdUtil = 1 +*!* gnIdProgram = 8 +*!* ENDIF +***************************** VARIABILE ORACLE + + +*!* modificare v 2.0.41 +*!* Use &gcAppPath\SER In 0 Alias SER Shared +*!* Select SER +*!* Go Top +*!* tipar=TIP +*!* SER_PERM=SER_PERMAN +*!* SER_PERI=SER_PERIOD +*!* VERSIUNE=VERcont +*!* MODEL_PROGRAM=MODEL +*!* Use In SER +*!* parolamea=Substr(tipar,Month(Date()),1) +*!* parolamea=parolamea+Allt(Str(Day(Date())))+Allt(Str(Month(Date()))) + +*!* If !_DEBUG() +*!* If SER_PERM And !verif_ser_perm() +*!* Quit +*!* Endif +*!* Endif + +*!* Public cales,eserver,loc,numestatie +*!* eserver=.F. +*!* Store '' To cales,loc,numestatie +*!* modificare v 2.0.41 ^ + +Public NUMEPROGRAM,MENIUPROGRAM,FUNDALPROGRAM + +NUMEPROGRAM = 'ROACONTRACTE' + +_program='roacontracte' + + + +lcOnShutdown="ShutDown()" +On Shutdown &lcOnShutdown +On Error ErrorHandler(Error(),Program(),Lineno()) +*!*_Shell="DO Cleanup IN progs\ROACLIENTI" + +*-- Instantiate application object.*************************** +Release goApp +Public goApp +goApp=Createobject("wzApplication") + +*-- Configure application object.***************************** +Local laVersion +Dimension laVersion(12) +If Agetfileversion(laVersion, Sys(16,0)) > 0 + NUMEPROGRAM = laVersion(10) +Endif +Release laVersion + +Do Case + Case gnParametru_prog = 1 && clienti + NUMEPROGRAM='ROA - CONTRACTE CLIENTI' + Case gnParametru_prog = 2 && furnizori + NUMEPROGRAM='ROA - CONTRACTE FURNIZORI' + Otherwise + NUMEPROGRAM='ROA - CONTRACTE' +Endcase + +goApp.SetCaption(NUMEPROGRAM) +goApp.cStartupMenu= gcAppPath + "meniuri\roacontracte.mpr" +*!* goApp.cStartupForm=DIRGEN+"\devize\FERESTRE\FUNDAL" + +goApp.cStartupForm = gcAppPath + 'comun\ferestre\frm_login.scx' + +_Screen.WindowState=2 +*-- Show application. + +Public poCtr, goContract +Store '' To poCtr, goContract + +Public podg_dg, podg_ob, podg_tf, podg_tl, podg_obs, podg_link, podg_fact, podg_garantii +* STORE '' TO podg_dg, podg_ob, podg_tf, podg_tl, podg_obs, podg_link, podg_fact + +Private poCtrScadentar, poCtrFactGarant, poLink +Store '' To poCtrScadentar, poCtrFactGarant, poLink +&& folosesc gencursorul pt ca am nevoie de schema pt. DATA_rata + +goApp.Show + + +*-- Release application. +Release goApp + + +*-- Restore default menu. +*!* Pop Menu _Msysmenu + +*-- Restore environment. +On Error +On Shutdown +If Not lcLastSetClassLib==Set("classlib") + Release Classlib (lcMainClassLib) +Endif +If Empty(lcLastSetPath) + Set Path To +Else + Set Path To &lcLastSetPath +Endif +If lcLastSetTalk=="ON" + Set Talk On +Else + Set Talk Off +Endif +CLEANUP() + +Return + + + + +* FUNCTII______________________________________________________________________ +Function ErrorHandler(nError,cMethod,nLine) + Local lcErrorMsg,lcCodeLineMsg + + Wait Clear + lcErrorMsg=Message()+Chr(13)+Chr(13) + lcErrorMsg=lcErrorMsg+"Method: "+cMethod + lcCodeLineMsg=Message(1) + If Between(nLine,1,10000) And Not lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+Chr(13)+"Line: "+Alltrim(Str(nLine)) + If Not Empty(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+Chr(13)+Chr(13)+lcCodeLineMsg + Endif + Endif + + If Type('goMyXMLHTTP') = 'O' + lcLunaHTTP = Iif(Type('gnLuna') = 'N', Transform(gnLuna) + "/","") + Iif(Type('GNAN') = 'N', Transform(gnAn),"") + lcErrorMsgHTTP = Sys(0) + ":" + Iif(Type('GCS')='C'," " + gcS,"") + ": " + lcLunaHTTP + Chr(13) +Chr(10) + lcErrorMsg + ; + CHR(13) +Chr(10) + Chr(13) + Chr(10) + GETCALLSTACK() + lcUserName = gcUserNameApp + lcProgram = Juststem(Sys(16,0)) + goMyXMLHTTP.postError(lcErrorMsgHTTP, lcUserName, lcProgram) + Endif + + If AMESSAGEBOX(lcErrorMsg,17,_Screen.Caption)#1 + On Error + On Shutdown + If _vfp.StartMode = 0 + Debug + Suspend + Else + Quit + Endif + *!* RETURN .F. + Endif + +Endfunc + + + +Function Shutdown + +*!* =End_Istoric(gnIdIstoric, Addbs(DIRGEN)+"DATERETEA\", "START_ISTORIC") + If Type("goApp")=="O" And Not Isnull(goApp) + Return goApp.OnShutDown() + Endif + Cleanup() + Quit +Endfunc + + +Function Cleanup + + If Cntbar("_msysmenu")=7 + Return + Endif + On Error + On Shutdown + Set Classlib To + Set Path To + Clear All +* Close All + Pop Menu _Msysmenu + Return + + + + *----------------------------------------------------- + +Function verif_ser_perm + Clear + + Return PORNIRE() + + +Function PORNIRE + Set Exact On + Private calewin,calesys,checksum1,checksum2,serinreg,serdisk,file1,file2,valret,serdisktemp,ser1,ser2,key1,KEY2 + Store '' To calewin,serinreg,serdisk,calesys,serdisktemp,catehd,ser1,ser2,key1,KEY2 + Store 0 To checksum1,checksum2 + Store .T. To valret + Declare Integer SHGetFolderPath In SHFOLDER.Dll ; + INTEGER hwndOwner, ; + INTEGER nFolder, ; + INTEGER hToken, ; + INTEGER dwFlags, ; + STRING @ pszPath + Declare Integer GetActiveWindow In WIN32API + #Define CSIDL_WINDOWS 36 + #Define CSIDL_SYSTEM 37 + #Define CSIDL_PROGRAMS 38 + lcPath = Repl(Chr(0),261) + =SHGetFolderPath(GetActiveWindow(),CSIDL_WINDOWS,0,0,@lcPath) + calewin=Left(lcPath,At(Chr(0),lcPath)-1) + lcPath = Repl(Chr(0),261) + =SHGetFolderPath(GetActiveWindow(),CSIDL_SYSTEM,0,0,@lcPath) + calesys=Left(lcPath,At(Chr(0),lcPath)-1) + &&se verifica existenta celor trei fisiere + lcTextEroare = "" + If (Not File(calesys+'\diskserial.dll')) Or (Not File(calesys+'\getmacip.dll')) Or (Not File(calewin+'\comdir.snr')) + valret=.F. + lcTextEroare = lcTextEroare + calesys + '\diskserial.dll ' + Transform(File(calesys+'\diskserial.dll')) + ; + ' ' + calesys+'\getmacip.dll' + Transform(File(calesys+'\getmacip.dll')) + ' ' + calewin+'\comdir.snr' + Transform(File(calewin+'\comdir.snr')) + Chr(13) + Chr(10) + Endif + If valret + file1=Filetostr(calesys+'\diskserial.dll') + checksum1=Sys(2007,file1) + file2=Filetostr(calesys+'\getmacip.dll') + checksum2=Sys(2007,file2) + &&severifica daca dll-urile nu au fost modificate + If (Val(checksum1) != 58755) Or (Val(checksum2) != 30476) + valret=.F. + lcTextEroare = lcTextEroare + 'checksum1 ' + checksum1 + ' checksum2 ' + checksum2 + Chr(13) + Chr(10) + Endif + Endif + &&se citesc seriile tutturor celor patru hard disk-uri posibile(pe IDE primary master,primary slave...) + &&se tine minte primul cu seria nenula-daca nu s-a putut citi seria de la nici unul se pune o serie default + &&seria default este "NUAREHAR" + If valret + Declare Integer GetSerialNumber In diskSerial.Dll Integer ,String + catehd=0 + For i=0 To 3 + serdisktemp=Space(40) + GetSerialNumber(i,@serdisktemp) + If (Len(Alltrim(serdisktemp))!=0) And (catehd=0) + serdisktemp=sircaracter(serdisktemp) + serdisk=serdisktemp + catehd=catehd+1 + Endif + Endfor + If (Len(Alltrim(serdisk))=0) + serdisk='NUAREHAR' + Else + If ((Len(Alltrim(serdisk))>0) And (Len(Alltrim(serdisk))<8)) + serdisk=serdisk+Replicate('1',8-Len(Alltrim(serdisk))) + Endif + Endif + serdisk=Substr(Alltrim(serdisk),Len(Alltrim(serdisk))-7,8) + Endif + &&se citeste din comdir.snr seria de inregistrare si se verifica egalitatea cu seria obtinuta anterior + If valret + gnFileHandle = Fopen(calewin+'\comdir.snr') + nSize = Fseek(gnFileHandle, 0, 2) && Move pointer to EOF + If nSize!=9 + valret=.F. + lcTextEroare = lcTextEroare + 'nSize ' + Transform(nSize) + Chr(13) + Chr(10) + Else + = Fseek(gnFileHandle, 0, 0) && Move pointer to BOF + cString = Fread(gnFileHandle,9) + ser1=Substr(cString,1,4) + ser2=Substr(cString,5,4) + key1=Substr(cString,9,1) + KEY2=DECTOBIN(Alltrim(HEXDEC(key1))) + serinreg=decodare1(Alltrim(Upper(ser1)),KEY2)+decodare1(Alltrim(Upper(ser2)),KEY2) + If serdisk!=serinreg + valret=.F. + lcTextEroare = lcTextEroare + 'serdisk ' + serdisk + ' serinreg ' + serinreg + Chr(13) + Chr(10) + Endif + Endif + = Fclose(gnFileHandle) + Endif + seriedisk1=serdisk + serieinreg1=serinreg + On Error valret=.F. + poLog.Log('Eroare verificare serie ' + Chr(13) + Chr(10) + lcTextEroare, Program()) + If Type('goMyXMLHTTP') = 'O' + If !Empty(lcTextEroare) + goMyXMLHTTP.postError('Eroare verificare serie ' + Chr(13) + Chr(10) + lcTextEroare, gcUserNameApp, Juststem(Sys(16,0))) + Endif + Endif + Return valret + ************* + + ************* +Function decodare1 + Parameters lstring,CHEIE + Local lens,poz1,poz2,POZ3,lret,LRET2,lcstring,val1,lret1 + lret='' + lret1='' + LRET2='' + lcstring=Alltrim(Upper(lstring)) + lens=Len(lcstring) + For i=1 To 4 + poz1=Substr(lcstring,i,1) + val1=Asc(poz1) + POZ3=Substr(CHEIE,i,1) + Do Case + Case val1>=48 And val1<=57 + If ((val1-47)+Int(Val(POZ3)))<=10 + poz2=Chr(val1+Int(Val(POZ3))) + Else + poz2=Chr(val1+Int(Val(POZ3))-10) + Endif + Case val1>=65 And val1<=90 + If ((val1-64)+2*Int(Val(POZ3)))<=26 + poz2=Chr(val1+2*Int(Val(POZ3))) + Else + poz2=Chr(val1+2*Int(Val(POZ3))-26) + Endif + Endcase + LRET2=LRET2+poz2 + Endfor + For i=1 To lens + poz1=Substr(LRET2,i,1) + val1=Asc(poz1) + Do Case + Case val1>=48 And val1<=57 + If ((val1-47)+i)<=10 + poz2=Chr(val1+i) + Else + poz2=Chr(val1+i-10) + Endif + Case val1>=65 And val1<=90 + If ((val1-64)+2*i)<=26 + poz2=Chr(val1+2*i) + Else + poz2=Chr(val1+2*i-26) + Endif + Endcase + lret=lret+poz2 + Endfor + lens=Len(lret) + For i=1 To lens + poz1=Substr(lret,i,1) + val1=Asc(poz1) + Do Case + Case val1>=48 And val1<=57 + poz2=Chr(val1+17)&& din 0-9 in A-J + Case val1>=65 And val1<=74 + poz2=Chr(val1-17)&& din A-J in 0-9 + Case val1>=75 And val1<=82 + poz2=Chr(val1+8)&&din K-R in S-Z + Case val1>=83 And val1<=90 + poz2=Chr(val1-8)&&din S-Z in K-R + Endcase + lret1=lret1+poz2 + Endfor + Return lret1 + *********** + &&transformarea in decimal a unui caracter hexa +Function HEXDEC + Lparameters LC + Local LV + Do Case + Case LC=='0' + LV='0' + Case LC=='1' + LV='1' + Case LC=='2' + LV='2' + Case LC=='3' + LV='3' + Case LC=='4' + LV='4' + Case LC=='5' + LV='5' + Case LC=='6' + LV='6' + Case LC=='7' + LV='7' + Case LC=='8' + LV='8' + Case LC=='9' + LV='9' + Case LC=='A' + LV='10' + Case LC=='B' + LV='11' + Case LC=='C' + LV='12' + Case LC=='D' + LV='13' + Case LC=='E' + LV='14' + Case LC=='F' + LV='15' + Endcase + Return LV + **************** + &&codarea binara din hexa pe patru biti +Function DECTOBIN + Parameters sc + Local lretf + Do Case + Case sc=='0' + lretf='0000' + Case sc=='1' + lretf='0001' + Case sc=='2' + lretf='0010' + Case sc=='3' + lretf='0011' + Case sc=='4' + lretf='0100' + Case sc=='5' + lretf='0101' + Case sc=='6' + lretf='0110' + Case sc=='7' + lretf='0111' + Case sc=='8' + lretf='1000' + Case sc=='9' + lretf='1001' + Case sc=='10' + lretf='1010' + Case sc=='11' + lretf='1011' + Case sc=='12' + lretf='1100' + Case sc=='13' + lretf='1101' + Case sc=='14' + lretf='1110' + Case sc=='15' + lretf='1111' + Endcase + Return lretf + *********** +Function ECARACTER + Parameters strg1 + Private pz,ch,lcstring,vret,lg1 + Store 0 To pz,lg1 + Store '' To ch,lcstring + Store .T. To vret + lcstring=Upper(strg1) + lg1=Len(lcstring) + For ind1=1 To lg1 + ch=Substr(lcstring,ind1,1) + If (Not Between(Asc(ch),48,57)) And (Not Between(Asc(ch),65,90)) + vret=.F. + Exit + Endif + Endfor + Return vret + ************ +Function sircaracter + Parameters strg1 + Private pz,ch,lcstring,vret,lg1,lciesire + Store 0 To pz,lg1 + Store '' To ch,lcstring,lciesire + Store .T. To vret + strg1=Strtran(strg1,Alltrim(Chr(39)),'')&&caracterul ' + strg1=Strtran(strg1,Alltrim(Chr(39)),'')&&caracterul " + lcstring=Upper(Alltrim(strg1)) + lg1=Len(lcstring) + For ind1=1 To lg1 + ch=Substr(lcstring,ind1,1) + If Between(Asc(ch),48,57) Or Between(Asc(ch),65,90) + lciesire=lciesire+ch + Endif + Endfor + Return lciesire + + + + ***------------------------------------- +Procedure _DEBUG + + Private lcret,lcfisier,lcPath,lccalewin + Declare Integer SHGetFolderPath In SHFOLDER.Dll ; + INTEGER hwndOwner, ; + INTEGER nFolder, ; + INTEGER hToken, ; + INTEGER dwFlags, ; + STRING @ pszPath + Declare Integer GetActiveWindow In WIN32API + #Define CSIDL_WINDOWS 36 + + + lcPath = Repl(Chr(0),261) + =SHGetFolderPath(GetActiveWindow(),CSIDL_WINDOWS,0,0,@lcPath) + lccalewin=Left(lcPath,At(Chr(0),lcPath)-1) + + lcret=.F. + lcfisier=Addbs(lccalewin)+[DEBUG.TXT] + + lcLog = '1 ' + lcfisier + poLog.Log(lcLog,Program()) + + If File(lcfisier) + LCVAL=Filetostr(lcfisier) + + LNVAL1=Mod(Val(Right(LCVAL,1)),2) && restul 1 sau 0; daca e impar e 1 + lnval2=Val(Left(LCVAL,Len(LCVAL)-1)) + + lcLog = Transform(LNVAL1) + ' ' + Transform(lnval2) + poLog.Log(lcLog,Program()) + + If LNVAL1=1 Or Year(Date())-Month(Date())=lnval2 + lcret=.T. + Endif + Endif + + lcLog = Transform(lcret) + poLog.Log(lcLog,Program()) + + Return lcret + +Endproc + + +Function Start_Nou + *!* llExista_Branch = Exista_Branch(,,dirgen) + + *!* lcLog = TRANSFORM(llExista_Branch) + *!* poLog.log(lcLog,PROGRAM()) + Return Exista_Branch(,,DIRGEN) + Return llExista_Branch + +Endfunc && start_nou + +Procedure Debug_Start + + lcFile = gcAppPath + "debug.txt" + If File(lcFile) + lcLog = 'debug_start' + poLog.Log(lcLog,Program()) + Else + lcLog = '!debug_start' + poLog.Log(lcLog,Program()) + Endif + + If File(lcFile) Or !Start_Nou() + Return .T. + Endif + Return .F. + +Endproc && Debug_Start +************************************************************************ +Procedure verificari + Parameters tcFisierVerif + + lcverificari = Addbs(gcAppPath)+gcAppName+".txt" + + + If File(lcverificari) + Return .T. + Endif + Return .F. + +Endproc && verificari*************** + +Procedure myinstance + Parameters myApp + =Ddesetoption("SAFETY",.F.) + ichannel = Ddeinitiate(myApp,"ZOOM") + If ichannel =>0 + =Ddeterminate(ichannel) + Quit + Endif + =Ddesetservice(myApp,"define") + =Ddesetservice(myApp,"execute") + =Ddesettopic(myApp,"","ddezoom") + Return + ****************************************** +Procedure ddezoom + Parameter ichannel,saction,sitem,sdata,sformat,istatus + Zoom Window Screen Norm + Return + ********************************************************** + ** EOF + ********************************************************** diff --git a/Programe/shutdown.prg b/Programe/shutdown.prg new file mode 100644 index 0000000..91623e3 --- /dev/null +++ b/Programe/shutdown.prg @@ -0,0 +1,3 @@ +IF TYPE("goApp")=="O" AND NOT ISNULL(goApp) + RETURN goApp.OnShutDown() +ENDIF diff --git a/Programe/update_nomenclator.prg b/Programe/update_nomenclator.prg new file mode 100644 index 0000000..bb36613 --- /dev/null +++ b/Programe/update_nomenclator.prg @@ -0,0 +1,65 @@ +********************************************************** +PROCEDURE update_nomenclator + + *!* DO update_coresp_tip_part + *!* DO update_coresp_tip_cont + DO update_lunilean + + *** tabele meniu deschise din proiect + LOCAL lcCaleDateMenu + + lcCaleDateMenu=gcAppPath+[DATEMENU\] +*!* modificare v 2.0.35 +*!* IF !USED('MILA1') +*!* USE &lcCaleDateMenu.MILA1 IN 0 ALIAS MILA1 +*!* ENDIF + +*!* IF !USED('XREQUEST') +*!* USE &lcCaleDateMenu.XREQUEST IN 0 ALIAS XREQUEST +*!* ENDIF +*!* IF !USED('xitems') +*!* USE &lcCaleDateMenu.xitems IN 0 ALIAS xitems +*!* ENDIF +*!* IF !USED('YACT') +*!* USE &lcCaleDateMenu.YACT IN 0 ALIAS YACT +*!* ENDIF +*!* IF !USED('XSETS') +*!* USE &lcCaleDateMenu.XSETS IN 0 ALIAS XSETS ORDER TAG ID_SET +*!* ENDIF +*!* IF !USED('xACT') +*!* USE &lcCaleDateMenu.xACT IN 0 ALIAS xACT +*!* ENDIF +*!* IF !USED('xnote') +*!* USE &lcCaleDateMenu.xnote IN 0 ALIAS xnote +*!* ENDIF +lnSucces = xdate() +*!* modificare v 2.0.35 ^ + +*!* IF !USED('menu1') +*!* USE &lcCaleDateMenu.menu1 IN 0 ALIAS menu1 EXCL +*!* ENDIF + + IF !USED('INFISIERE') + USE &lcCaleDateMenu.INFISIERE IN 0 ALIAS INFISIERE + ENDIF + + *!* modificare v 2.1.1 + If !Used('mila1') + Use &lcCaleDateMenu.mila1 In 0 Alias mila1 + endif + *!* modificare v 2.1.1 ^ + +*!* IF !USED('nom_meniu') +*!* USE &lcCaleDateMenu.nom_meniu IN 0 ALIAS nom_meniu +*!* ENDIF + +*!* IF !USED('refaceri') +*!* USE &lcCaleDateMenu.refaceri IN 0 ALIAS refaceri +*!* ENDIF + +*!* IF !USED('tabela_fisa_cont') +*!* USE &lcCaleDateMenu.tabela_fisa_cont IN 0 ALIAS tabela_fisa_cont +*!* ENDIF + + +ENDPROC && update_nomenclator \ No newline at end of file diff --git a/Programe/update_roadef_sal.prg b/Programe/update_roadef_sal.prg new file mode 100644 index 0000000..17011d8 --- /dev/null +++ b/Programe/update_roadef_sal.prg @@ -0,0 +1,119 @@ + +******************************************* +* PROCEDURE update_responsabil( ) +* Date : 05/23/05, 12:25:08 +* author : liana.macinic +* description: + +****** PARAMETER BLOCK ************** +* Parameters : 0 +* +******************************************* +PROCEDURE update_responsabil( ) +If Used('v_resp') + Use In v_resp +Endif + +lcSql = [select * from ] + gcS + [.sal_responsabil where ales = 1] +lcCursor = [v_resp] +lnSucces = goExecutor.oExecute(lcSql,lcCursor) +goExecutor.oReset() + +ENDPROC +*----------------------------------sfarsit procedura update_responsabil---------------------------------- + +******************************************* +* PROCEDURE update_sectie( ) +* Data/ora : 12/16/04, 14:26:22 +* autor : liana.macinic +* descriere: + +****** PARAMETER BLOCK ************** +* Parametri : 0 +* +******************************************* +Procedure update_sectie( ) +If Used('v_sectie') + Use In v_sectie +Endif + +lcSql = [select * from ] + gcS + [.nom_sectii order by sectie]&& where inactiv = 0] +lcCursor = [v_sectie] +lnSucces = goExecutor.oExecute(lcSql,lcCursor) +goExecutor.oReset() + +Return lnSucces + +Endproc +******************************************* +* PROCEDURE update_transe( ) +* Date : 05/26/05, 16:25:42 +* author : liana.macinic +* description: + +****** PARAMETER BLOCK ************** +* Parameters : 0 +* +******************************************* +PROCEDURE update_transe( ) +If Used('v_transe') + Use In v_sectie +Endif + +lcSql = [select * from ] + gcS + [.SAL_NOM_TRANSE where inactiv = 0 and sters = 0] +lcCursor = [v_transe] +lnSucces = goExecutor.oExecute(lcSql,lcCursor) +goExecutor.oReset() + +Return lnSucces + +ENDPROC +*----------------------------------sfarsit procedura update_transa---------------------------------- +******************************************* +* PROCEDURE update_ore( ) +* Date : 05/26/05, 16:25:42 +* author : liana.macinic +* description: + +****** PARAMETER BLOCK ************** +* Parameters : 0 +* +******************************************* +PROCEDURE update_ore( ) +If Used('v_nomore') + Use In v_nomore +Endif + +lcSql = [select * from ] + gcS + [.SAL_NOMORE where inactiv = 0 and sters = 0] +lcCursor = [v_nomore] +lnSucces = goExecutor.oExecute(lcSql,lcCursor) +goExecutor.oReset() + +Return lnSucces + +ENDPROC +*----------------------------------sfarsit procedura update_ore---------------------------------- +******************************************* +* PROCEDURE update_calcdin( ) +* Date : 06/17/05, 12:52:29 +* author : liana.macinic +* description: + +****** PARAMETER BLOCK ************** +* Parameters : 0 +* +******************************************* +PROCEDURE update_calcdin( ) +If Used('v_calcdin') + Use In v_calcdin +Endif + +lcSql = [select id_calcdin,camp,denumire as nume_camp,tabel from ] + gcS + [.sal_nom_calcdin where 2=2] +lcCursor = [v_calcdin] +lnSucces = goExecutor.oExecute(lcSql,lcCursor) +goExecutor.oReset() + +Return lnSucces + +ENDPROC +*----------------------------------sfarsit procedura update_calcdin---------------------------------- \ No newline at end of file diff --git a/Programe/verifica.prg b/Programe/verifica.prg new file mode 100644 index 0000000..080865f --- /dev/null +++ b/Programe/verifica.prg @@ -0,0 +1,1486 @@ +&& ------------------------------ INCEPUT: VerFurnizor ------------------------------ +*!* Procedura: VerFurnizor +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 23-01-2004 15:18:03 +*!* Autor: ANDREI.BAUTU + +PROCEDURE VerFurnizor + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Balanta de furnizori' + + SELE FURNIZOR + SET FILTER TO + SUM PLATIT, TOTDEB, totcred TO M.PLATIT, M.TOTDEB, m.totcred + + IF FLOCK() + REPLACE ALL totdeb WITH precdeb+platit, totcred WITH preccred+achizit, TOTAVANS WITH PRECAVANS+AVANS + UNLOCK + ENDIF + SUM totcred, totdeb, totAVANS TO M.TACHIZIT, M.TPLATIT, M.TAVANS + + SELE BAL + SET FILTER TO + SUM soldcred TO m.soldcred FOR LEFT(cont,3)='401' + M.SOLD=M.SOLDCRED + SUM totdeb-totcred TO m.solddeb FOR LEFT(cont,3)='409' + + if m.tavans # m.solddeb + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta avans fata de sold debitor 409 este ' + LTRIM(STR(M.solddeb-M.TAVANS,12)), .T., llInTabel, lnId_ref + ENDIF + + m.sold=m.sold-m.solddeb + + IF M.sold # m.Tachizit-M.TPLATIT-M.TAVANS + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + '401;409 Diferenta in sold este de: '+ LTRIM(STR(M.SOLD+M.TPLATIT-M.TACHIZIT+M.TAVANS,12)), .T., llInTabel, lnId_ref + + *'Diferenta fata de sold creditor 401-sold debitor 409 este ' + LTRIM(STR(M.SOLD+M.TPLATIT-M.TACHIZIT+M.TAVANS,12)), .T., llInTabel + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold creditor 401-sold debitor 409.', .F., llInTabel, lnId_ref + ENDIF + ENDIF +ENDPROC + +&& ------------------------------ SFARSIT: VerFurnizor ------------------------------ + +&& ------------------------------ INCEPUT: VerCumpLun ------------------------------- +*!* Procedura: VerCumpLun +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:38:37 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCumpLun + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Facturi cumparari' + + LOCAL soldcump + SELE CUMPlun + SET FILTER TO + SUM totctva-achitat TO m.soldcump + + SELECT furnizor + SET FILTER TO + SUM totcred - totdeb TO m.sold + + IF m.sold <> m.soldcump + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta intre sold furnizor si sold facturi este ' + LTRIM(STR(m.sold - m.soldcump, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente Diferenta intre sold furnizor si sold facturi.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCumpLun ------------------------------ + +&& ------------------------------INCEPUT: Verfurniz404 ------------------------------ +*!* Procedura: Verfurniz404 +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 10:08:37 +*!* Autor: ANDREI.BAUTU +PROCEDURE Verfurniz404 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Balanta furnizori imobilizari' + + SELE furniz404 + SET FILTER TO + SUM PLATIT,TOTDEB,totcred TO M.PLATIT,M.TOTDEB,m.totcred + + IF FLOCK() + REPLACE ALL totdeb WITH precdeb+platit, totcred WITH preccred+achizit + UNLOCK + ENDIF + SUM totcred,totdeb TO M.TACHIZIT, M.TPLATIT + + SELE BAL + SET FILTER TO + SUM soldcred TO m.soldcred FOR LEFT(cont,3)='404' + m.sold=m.soldCRED + + IF M.sold # m.Tachizit-M.TPLATIT + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 404 este ' + LTRIM(STR(M.SOLD+M.TPLATIT-M.TACHIZIT, 12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 404 .', .F., llInTabel, lnId_ref + ENDIF + ENDIF +ENDPROC +&& ------------------------------SFARSIT: Verfurniz404 ------------------------------ + +&& ------------------------------ INCEPUT: VerCumpLun404 ------------------------------ +*!* Procedura: VerCumpLun404 +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 15:27:19 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCumpLun404 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Facturi cumparari 404' + + LOCAL soldcump + SELECT cumplun404 + SET FILTER TO + SUM totctva - achitat TO m.soldcump + + SELECT furniz404 + SET FILTER TO + SUM totcred - totdeb TO m.sold + + IF m.sold <> m.soldcump + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de balanta analitica de facturi este ' + LTRIM(STR(m.sold - m.soldcump, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de balanta analitica de facturi.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCumpLun404 ------------------------------ + +&& ------------------------------INCEPUT: Verana408 ------------------------------ +*!* Procedura: Verana408 +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 10:21:58 +*!* Autor: ANDREI.BAUTU +PROCEDURE Verana408 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Balanta facturi nesosite' + + SELE ANA408 + SET FILTER TO + + IF FLOCK() + REPLACE ALL totdeb WITH precdeb+platit,totcred WITH preccred+achizit + UNLOCK + ENDIF + SUM totcred,totdeb TO M.TACHIZIT,M.TPLATIT + + SELE BAL + SET FILTER TO + SUM soldcred TO m.soldcred FOR LEFT(cont,3)='408' + M.SOLD=M.SOLDCRED + *!* M.SOLD=M.SOLDCRED+M.SOLD + + IF M.sold # m.Tachizit-M.TPLATIT + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 408 este ' + LTRIM(STR(M.SOLD+M.TPLATIT-M.TACHIZIT, 12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 408.', .F., llInTabel, lnId_ref + ENDIF + ENDIF +ENDPROC +&& ------------------------------SFARSIT: Verana408 ------------------------------ + +&& ------------------------------ INCEPUT: VerFact408 ------------------------------ +*!* Procedura: VerFact408 +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 15:19:38 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerFact408 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Facturi nesosite' + + LOCAL soldcump + SELECT FACT408 + SET FILTER TO + SUM totctva - achitat to m.soldcump + + SELECT ANA408 + SET FILTER TO + SUM totcred - totdeb TO m.sold + + IF m.sold <> m.soldcump + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de balanta analitica facturi 408 este ' + LTRIM(STR(m.sold - m.soldcump, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de balanta analitica facturi 408.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerFact408 ------------------------------ + + + + + + + + + +&& ------------------------------ INCEPUT: verClienti ------------------------------ +*!* Procedura: verClienti +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 23-01-2004 14:46:21 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerClienti + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Balanta de clienti' + + LOCAL M.SUM1,M.SUM2,M.SUM3,M.SUM4 + + SELECT CLIENTI + SET FILTER TO + IF FLOCK() + REPLACE ALL TOTDEB WITH precdeb + PRODUCTIE, ; + totcred WITH preccred + INCASAT, ; + TOTAVANS WITH PRECAVANS + AVANS + UNLOCK + ENDIF + + SUM TOTAVANS, totcred, TOTDEB TO m.SUM1, M.SUM2, M.SUM3 + + SELE BAL + SET FILTER TO + SUM SOLDDEB TO M.SOLD FOR LEFT(CONT,3)='411' AND CONT<>"4118" + SUM totcred-totdeb TO M.SOLDcred FOR LEFT(CONT,3)='419' + + m.SOLD = m.SOLD + m.SOLDcred + m.SUM4 = M.SUM3-M.SUM2 + m.SUM1 + + IF M.SOLD # M.SUM4 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + '411+419 Diferenta soldului este de: '+ LTRIM(STR(M.SUM4-M.SOLD, 12)), .T., llInTabel, lnId_ref + + *'Diferenta fata de sold debitor 411-sold creditor 419 este ' + LTRIM(STR(M.SUM4-M.SOLD, 12)), .T., llInTabel + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold debitor 411-sold creditor 419.', .F., llInTabel, lnId_ref + ENDIF + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: verClienti ------------------------------ + +&& ------------------------------ INCEPUT: VerVanzLun ------------------------------ +*!* Procedura: VerVanzLun +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:51:07 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerVanzLun + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Facturi de vanzari' + + LOCAL soldvanz + SELECT VANZlun + SET FILTER TO + SUM totctva-achitat TO m.soldvanz + + SELECT clienti + SET FILTER TO + SUM totdeb-totcred TO m.sold + + IF m.sold <> m.soldvanz + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de clienti este ' + LTRIM(STR(m.sold - m.soldvanz, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de clienti.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerVanzLun ------------------------------ + +&& ------------------------------INCEPUT: VerClient4118 ------------------------------ +*!* Procedura: VerClient4118 +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 12:57:43 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerClient4118 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Balanta clienti incerti' + + Local M.SUM2,M.SUM3 + Select CLIENT4118 + Set Filter To + If Flock() + Replace All TOTDEB With precdeb+PRODUCTIE,totcred With preccred+INCASAT + Endif + Unlock + Sum totcred, TOTDEB To M.SUM2,M.SUM3 + + Sele BAL + Set Filter To + Sum SOLDDEB To M.sold For Left(Cont,4)='4118' + + IF M.sold#M.SUM3-M.SUM2 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 4118 este ' + LTRIM(STR(-(M.sold-M.SUM3+M.SUM2),12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 4118.', .F., llInTabel, lnId_ref + ENDIF + ENDIF +ENDPROC +&& ------------------------------SFARSIT: VerClient4118 ------------------------------ + +&& ------------------------------ INCEPUT: VerVanzLu4118 ------------------------------ +*!* Procedura: VerVanzLu4118 +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 15:47:03 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerVanzLu4118 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Facturi clienti incerti sau in litigiu' + + LOCAL soldcump + SELECT VANZlu4118 + SET FILTER TO + SUM totctva - achitat TO soldcump + + SELECT client4118 + SET FILTER TO + SUM totdeb - totcred TO m.sold + + IF m.sold <> m.soldcump + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta intre sold clienti si sold facturi este ' + LTRIM(STR(m.sold - m.soldcump, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente intre sold client si sold facturi.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerVanzLu4118 ------------------------------ + +&& ------------------------------INCEPUT: Verana418 ------------------------------ +*!* Procedura: Verana418 +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 12:30:51 +*!* Autor: ANDREI.BAUTU +PROCEDURE Verana418 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Balanta facturi neintocmite' + + LOCAL M.SUM2,M.SUM3,M.SUM4 + SELECT ANA418 + SET FILTER TO + + IF FLOCK() + REPLACE ALL totdeb WITH precdeb+productie,totcred WITH preccred+incasat + ENDIF + UNLOCK + + sum totcred, totdeb to M.SUM2, M.SUM3 + + M.SUM4=m.sum3-M.SUM2 + + SELE BAL + SET FILTER TO + SUM SOLDDEB TO M.SOLD FOR LEFT(CONT,3)='418' + + IF M.SOLD#M.SUM4 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 418 este '+ LTRIM(STR(M.SUM4-M.SOLD, 12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 418.', .F., llInTabel, lnId_ref + ENDIF + ENDIF +ENDPROC +&& ------------------------------SFARSIT: Verana418 ------------------------------ + +&& ------------------------------ INCEPUT: VerFact418 ------------------------------ +*!* Procedura: VerFact418 +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 15:56:05 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerFact418 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Clienti - facturi de intocmit' + + LOCAL soldcump + SELECT Fact418 + SET FILTER TO + SUM totctva - achitat TO m.soldcump + + SELECT ana418 + SET FILTER TO + SUM totdeb - totcred TO m.sold + + IF m.sold <> m.soldcump + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta intre sold 418 si sold facturi 418 este ' + LTRIM(STR(m.sold - m.soldcump, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente intre sold 418 si sold facturi 418.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerFact418 ------------------------------ + + + + + + + + + + + + +&& ------------------------------ INCEPUT: VerDebitor ------------------------------ +*!* Procedura: VerDebitor +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 23-01-2004 16:35:34 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerDebitor + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Balanta de debitori' + + Local m.SUM1,M.SUM2,M.SUM3,M.SUM4 + + Select DEBITOR + Set Filter To + + Select DEBITOR + If Flock() + Replace All TOTDEB With precdeb+DEBIT, totcred With preccred+CREDIT + Unlock + Endif + Sum totcred,TOTDEB To M.SUM2, M.SUM3 + m.Sum3 = m.Sum3 - m.sum2 + + Sele BAL + Sum SOLDDEB, SOLDcred To M.SOLDDEB, M.SOLDcred For Left(Cont,3)='461' + m.SOLD=m.SOLDDEB-m.SOLDcred + + IF M.SOLD # m.Sum3 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de sold 461 este ' + LTRIM(STR(m.Sum3-M.SOLD,12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold 461.', .F., llInTabel, lnId_ref + ENDIF + ENDIF + +ENDPROC +&& ------------------------------ SFARSIT: VerDebitor ------------------------------ + +&& ------------------------------ INCEPUT: VerCreditor ------------------------------ +*!* Procedura: VerCreditor +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 23-01-2004 16:43:56 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCreditor + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Balanta de creditori' + + LOCAL M.SUM2,M.SUM3 + + SELECT CREDITOR + SET FILTER TO + IF FLOCK() + REPLACE ALL TOTDEB WITH precdeb+DEBIT,totcred WITH preccred+CREDIT + UNLOCK + ENDIF + SUM totcred,TOTDEB TO M.SUM2,M.SUM3 + m.sum2 = m.sum2 - m.sum3 + + SELE BAL + SET FILTER TO + SUM SOLDDEB, SOLDcred TO M.SOLDdeb, M.SOLDcred FOR LEFT(CONT,3)='462' + + m.SOLD=m.SOLDcred - m.SOLDdeb + + IF M.SOLD # m.Sum2 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de sold 462 este ' + LTRIM(STR(m.Sum2-M.SOLD,12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold 462.', .F., llInTabel, lnId_ref + ENDIF + ENDIF + +ENDPROC +&& ------------------------------ SFARSIT: VerCreditor ------------------------------ + +&& ------------------------------ INCEPUT: VerDividende ------------------------------ +*!* Procedura: VerDividende +*!* Parametrii: llInTabel, lnId_ref +*!* Data/Ora generarii: 14-04-2004 12:51:56 +*!* Autor: GEORGIANA.VOICU +PROCEDURE VerDividende + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Balanta dividende' + + LOCAL M.SUM2,M.SUM3 + + SELECT dividende + SET FILTER TO + IF FLOCK() + REPLACE ALL TOTDEB WITH precdeb+DEBIT,totcred WITH preccred+CREDIT + UNLOCK + ENDIF + SUM totcred,TOTDEB TO M.SUM2,M.SUM3 + m.sum2 = m.sum2 - m.sum3 + + SELE BAL + SET FILTER TO + SUM SOLDDEB, SOLDcred TO M.SOLDdeb, M.SOLDcred FOR LEFT(CONT,3)='457' + + m.SOLD=m.SOLDcred - m.SOLDdeb + + IF M.SOLD # m.Sum2 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de sold 457 este ' + LTRIM(STR(m.Sum2-M.SOLD,12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold 457.', .F., llInTabel, lnId_ref + ENDIF + ENDIF + +ENDPROC +&& ------------------------------ SFARSIT: VerDividende ------------------------------ + +&& ------------------------------ INCEPUT: VerDebLun ------------------------------ +*!* Procedura: VerDebLun +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 15:12:53 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerDebLun + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Inregistrari debitori diversi' + + LOCAL solddeb + SELECT deblun + SET FILTER TO + sum totctva - achitat TO m.solddeb + + SELECT debitor + set filter to + SUM totdeb - totcred TO m.sold + + IF m.sold <> m.solddeb + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de balanta analitica debitori este ' + LTRIM(STR(m.sold - m.solddeb, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de balanta analitica debitori.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerDebLun ------------------------------ + +&& ------------------------------ INCEPUT: VerCredLun ------------------------------ +*!* Procedura: VerCredLun +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:57:39 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCredLun + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Inregistrari creditori diversi' + + LOCAL soldcred + + SELECT credlun + SET FILTER TO + sum totctva - achitat to m.soldcred + + SELECT creditor + SET FILTER TO + SUM totcred - totdeb TO m.sold + + IF m.sold <> m.soldcred + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de balanta analitica creditori este ' + LTRIM(STR(m.sold - m.soldcred, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de balanta analitica creditori.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCredLun ------------------------------ + +&& ------------------------------ INCEPUT: VerDivLun ------------------------------ +*!* Procedura: VerDivLun +*!* Parametrii: llInTabel, lnId_ref +*!* Data/Ora generarii: 14-04-2004 12:47:39 +*!* Autor: GEORGIANA.VOICU +PROCEDURE VerDivLun + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Inregistrari dividende' + + LOCAL soldcred + + SELECT divlun + SET FILTER TO + sum totctva - achitat to m.soldcred + + SELECT dividende + SET FILTER TO + SUM totcred - totdeb TO m.sold + + IF m.sold <> m.soldcred + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de balanta dividende este ' + LTRIM(STR(m.sold - m.soldcred, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de balanta dividende.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerDivLun ------------------------------ + +&& ------------------------------ INCEPUT: VerActionar ------------------------------ +*!* Procedura: VerActionar +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 10:18:05 +*!* Autor: ANDREI.BAUTU + +PROCEDURE VerActionar + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Alti' + lcSursa = 'Balanta de actionari' + + LOCAL M.SUM2,M.SUM3 + + SELECT actionar + SET FILTER TO + IF FLOCK() + REPLACE ALL TOTDEB WITH precdeb+DEBIT,totcred WITH preccred+CREDIT + UNLOCK + ENDIF + SUM totcred,TOTDEB TO M.SUM2,M.SUM3 + m.sum2 = m.sum2 - m.sum3 + + SELE BAL + SET FILTER TO + SUM SOLDDEB, SOLDcred TO M.SOLDdeb, M.SOLDcred FOR LEFT(CONT,3)='455' + + m.SOLD=m.SOLDcred - m.SOLDdeb + + IF M.SOLD # m.Sum2 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de sold 455 este ' + LTRIM(STR(m.Sum2-M.SOLD,12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold 455.', .F., llInTabel, lnId_ref + ENDIF + ENDIF + + +ENDPROC +&& ------------------------------ SFARSIT: VerActionar ------------------------------ + + + + + + + + + +&& ------------------------------INCEPUT: VerCasaNume ------------------------------ +*!* Procedura: VerCasaNume +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 14:05:56 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCasaNume + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Casa' + lcSursa = 'Solduri case' + + LOCAL m.sum1,m.sum2,m.sum3 + Sele CASANUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.sum3=M.sum1-M.sum2 + m.SOLDDEB=0 + m.SOLDCRED=0 + Sele Bal + Seek '5311' + IF FOUND() + Scatter Memvar + ENDIF + + IF M.SOLDDEB-M.SOLDCRED # M.sum3 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 5311 este ' + LTRIM(STR(M.SOLDDEB-M.SOLDCRED-M.sum3,12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 5311.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC + +&& ------------------------------SFARSIT: VerCasaNume ------------------------------ + +&& ------------------------------ INCEPUT: VerCasa ------------------------------ +*!* Procedura: VerCasa +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:16:47 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCasa + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Casa' + lcSursa = 'Registrul de casa' + +*!* SELECT BAL +*!* LOCATE FOR cont='5311' +*!* m.solddeb = solddeb + Sele CASANUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.solddeb=M.sum1-M.sum2 + + SELE CASA + SUM INCASARI, PLATI TO m.tINCASARI, M.tPLATI + IF M.TINCASARI-M.TPLATI# M.SOLDDEB + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de solduri case este ' + LTRIM(STR(M.TINCASARI-M.TPLATI-M.SOLDDEB, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de de solduri case.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCasa ------------------------------ + +&& ------------------------------INCEPUT: VerCASVNUME ------------------------------ +*!* Procedura: VerCASVNUME +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 13:52:28 +*!* Autor: ANDREI.BAUTU + +PROCEDURE VerCASVNUME + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Casa' + lcSursa = 'Solduri case in valuta' + + LOCAL m.sum1,m.sum2,m.sum3 + Sele CASVNUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.sum3=M.sum1-M.sum2 + + Sele Bal + Seek '5314' + m.SOLDDEB=0 + m.SOLDCRED=0 + If Found() + Scatter Memvar + ENDIF + IF M.SOLDDEB-M.SOLDCRED # M.sum3 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 5314 este ' + LTRIM(STR(M.SOLDDEB-M.SOLDCRED-M.sum3,12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 5314.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------SFARSIT: VerCASVNUME ------------------------------ + +&& ------------------------------ INCEPUT: VerCasaVal ------------------------------ +*!* Procedura: VerCasaVal +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:16:47 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCasaVal + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Casa' + lcSursa = 'Registrul de casa in valuta' + +*!* SELECT BAL +*!* LOCATE FOR cont='5314' +*!* m.solddeb = solddeb + Sele CASVNUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.solddeb=M.sum1-M.sum2 + + SELE CASAVal + SUM INCASARI, PLATI TO m.tINCASARI, M.tPLATI + IF M.TINCASARI-M.TPLATI# M.SOLDDEB + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de solduri case este ' + LTRIM(STR(M.TINCASARI-M.TPLATI-M.SOLDDEB, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de solduri case.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCasaVal ------------------------------ + + + + + + + + + + + +&& ------------------------------INCEPUT: VerBanNume ------------------------------ +*!* Procedura: VerBanNume +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 14:23:52 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerBanNume + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Banca' + lcSursa = 'Solduri banci' + + LOCAL m.sum1,m.sum2,m.sum3 + Sele BANNUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.sum3=M.sum1-M.sum2 + m.SOLDDEB=0 + m.SOLDCRED=0 + + Sele Bal + Seek '5121' + IF FOUND() + Scatter Memvar + ENDIF + IF M.SOLDDEB-M.SOLDCRED # M.sum3 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 5121 este ' + LTRIM(STR(M.SOLDDEB-M.SOLDCRED-M.sum3,12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 5121.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------SFARSIT: VerBanNume ------------------------------ + +&& ------------------------------ INCEPUT: VerBanca ------------------------------ +*!* Procedura: VerBanca +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:16:47 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerBanca + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Banca' + lcSursa = 'Registrul de banca' + +*!* SELECT BAL +*!* LOCATE FOR cont='5121' +*!* m.solddeb = solddeb + Sele BANNUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.solddeb=M.sum1-M.sum2 + + SELE BANCA + SUM INCASARI, PLATI TO m.tINCASARI, M.tPLATI + + IF M.TINCASARI-M.TPLATI# M.SOLDDEB + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de solduri banci este ' + LTRIM(STR(M.TINCASARI-M.TPLATI-M.SOLDDEB, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de solduri banci.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerBanca ------------------------------ + +&& ------------------------------INCEPUT: VerBanVNume ------------------------------ +*!* Procedura: VerBanVNume +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 14:18:18 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerBanVNume + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Banca' + lcSursa = 'Solduri banci in valuta' + + LOCAL m.sum1,m.sum2,m.sum3 + Sele BANVNUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.sum3=M.sum1-M.sum2 + m.SOLDDEB=0 + m.SOLDCRED=0 + Sele Bal + Seek '5124' + IF FOUND() + Scatter Memvar + ENDIF + IF M.SOLDDEB-M.SOLDCRED # M.sum3 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 5124 este ' + LTRIM(STR(M.SOLDDEB-M.SOLDCRED-M.sum3,12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 5124.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------SFARSIT: VerBanVNume ------------------------------ + +&& ------------------------------ INCEPUT: VerBancaVal ------------------------------ +*!* Procedura: VerBancaVal +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:16:47 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerBancaVal + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Banca' + lcSursa = 'Registrul de banca in valuta' + +*!* SELECT BAL +*!* LOCATE FOR cont='5124' +*!* m.solddeb = solddeb + Sele BANVNUME + Sum INCASARI +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.solddeb=M.sum1-M.sum2 + + SELE BANCAVal + SUM INCASARI, PLATI TO m.tINCASARI, M.tPLATI + IF M.TINCASARI-M.TPLATI# M.SOLDDEB + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de solduri banci este ' + LTRIM(STR(M.TINCASARI-M.TPLATI-M.SOLDDEB, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de solduri banci.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerBancaVal ------------------------------ + + + + + + + +&& ------------------------------INCEPUT: VerCecNume ------------------------------ +*!* Procedura: VerCecNume +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 14:30:32 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCecNume + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Alte' + lcSursa = 'Cec - Solduri' + + LOCAL m.sum1,m.sum2,m.sum3 + Sele CecNume + Sum INCARCAT +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.sum3=M.sum1-M.sum2 + m.SOLDDEB=0 + m.SOLDCRED=0 + Sele Bal + Seek '5112' + IF FOUND() + Scatter Memvar + ENDIF + IF M.SOLDDEB-M.SOLDCRED # M.sum3 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta in sold 5112 este ' + LTRIM(STR(M.SOLDDEB-M.SOLDCRED-M.sum3,12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente in sold 5112.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------SFARSIT: VerCecNume ------------------------------ + +&& ------------------------------ INCEPUT: VerCec ------------------------------ +*!* Procedura: VerCec +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 14:16:47 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCec + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Alte' + lcSursa = 'Cec - Registrul de operatiuni' + +*!* SELECT BAL +*!* LOCATE FOR cont='5112' +*!* m.solddeb = solddeb + Sele CecNume + Sum INCARCAT +PRECDEB ,PLATI + preccred TO m.sum1,M.sum2 + m.solddeb=M.sum1-M.sum2 + + SELE CEC + SUM INCARCAT, PLATI TO m.tINCASARI, M.tPLATI + IF M.TINCASARI-M.TPLATI# M.SOLDDEB + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de solduri CEC este ' + LTRIM(STR(M.TINCASARI-M.TPLATI-M.SOLDDEB, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de solduri CEC.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCec ------------------------------ + +&& ------------------------------ INCEPUT: VerAchit542 ------------------------------ +*!* Procedura: VerAchit542 +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 09:51:54 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerAchit542 + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Alte' + lcSursa = 'Balanta de achizitori' + + Local m.SUM1,M.SUM2,M.SUM3,M.SUM4 + Select achit542 + Set Filter To + + IF Flock() + Replace All TOTDEB With precdeb+DEBIT, totcred With preccred+CREDIT + UNLOCK + ENDIF + Sum totcred, TOTDEB To M.SUM2, M.SUM3 + M.SUM1 = M.Sum3-m.sum2 + + Sele BAL + Set Filter To + Sum SOLDDEB, SOLDcred To M.SOLDDEB, M.SOLDcred For Left(Cont,3)='542' + m.SOLD=m.SOLDDEB-m.SOLDcred + + If M.SOLD # M.SUM1 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de sold 542 este ' + LTRIM(STR(m.Sum1-M.SOLD,12)), .T., llInTabel, lnId_ref + ELSE + IF llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente fata de sold 542.', .F., llInTabel, lnId_ref + ENDIF + ENDIF + +ENDPROC +&& ------------------------------ SFARSIT: VerAchit542 ------------------------------ + +&& ------------------------------ INCEPUT: VerAchiLun ------------------------------ +*!* Procedura: VerAchiLun +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 16:08:22 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerAchiLun + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Trezorerie - Alte' + lcSursa = 'Avansuri de trezorerie' + + LOCAL soldcump + SELE achilun + SET FILTER TO + SUM totctva - achitat TO m.soldcump + + sele achit542 + set filter to + SUM totdeb - totcred TO m.sold + + IF m.sold <> m.soldcump + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta intre sold achizitori si sold inregistrari este ' + LTRIM(STR(m.sold - m.soldcump, 12)), .T., llInTabel, lnId_ref + ELSE + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente intre sold achizitori si sold inregistrari.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerAchiLun ------------------------------ + + + + + + +&& ------------------------------ INCEPUT: VerCump ------------------------------ +*!* Procedura: VerCump +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 11:33:20 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerCump + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Furnizori' + lcSursa = 'Registrul de cumparari' + + LOCAL llDiferente + m.stotctva=0 + SELE act + SUM suma TO m.f767 FOR LEFT(scc,3) = '767' AND INLIST(LEFT(scd,3),'401','404') + + SELECT BAL +*!* SEEK '767 ' +*!* m.f767=rulcred + SEEK '401 ' + m.f401=rulcred + SEEK '404 ' + m.f404=rulcred + m.f401404=m.f401+m.f404-M.F767 + seek '4426' + m.f4426=ruldeb + + SELECT CUMP + SUM totctva, neimpozab, totftvaI, tvaI, totftvaM, tvaM ; + TO m.Stotctva, m.Sneimpozab, m.StotftvaI, m.StvaI, m.StotftvaM, m.StvaM + M.ADUN=m.Sneimpozab + m.StotftvaI + m.StvaI + m.StotftvaM + m.StvaM + IF M.STOTCTVA # M.ADUN + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta este ' + LTRIM(STR(M.STOTCTVA-M.ADUN, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + SELECT cump + SUM totctva TO m.stotctva FOR INLIST(LEFT(scc,3),'401','404') + + IF M.STOTCTVA # M.f401404 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de 401+404 este ' + LTRIM(STR(M.STOTCTVA-M.f401404, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF m.f4426 # m.StvaM + m.stvai + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta de TVA este ' + LTRIM(STR(m.f4426-m.StvaM-m.stvai, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF !llDiferente AND llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerCump ------------------------------ + +&& ------------------------------ INCEPUT: VerVanz ------------------------------ +*!* Procedura: VerVanz +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 11:48:29 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerVanz + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Terti - Clienti' + lcSursa = 'Registrul de vanzari' + + LOCAL m.f461, llDiferente + SELECT vanz + SUM totctva, neimpozab, totftvaI, tvaI, totftvaM, tvaM ; + TO m.Stotctva, m.Sneimpozab, m.StotftvaI, m.StvaI, m.StotftvaM, m.StvaM + M.ADUN=m.Sneimpozab+m.StotftvaI+m.StvaI+m.StotftvaM+m.StvaM + + IF M.STOTCTVA # M.ADUN + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta este ' + LTRIM(STR(M.STOTCTVA-M.ADUN, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + + SELE act + SUM suma TO m.f667 FOR LEFT(scd,3) = '667' AND INLIST(LEFT(scc,3),'411') + + SELE BAL +*!* SEEK '667 ' +*!* m.f667=rulDEB + + SEEK '461 ' + m.f461=IIF(FOUND(), rulDEB, 0) + + SUM RULDEB TO M.RULDEB FOR LEFT(CONT,3)='411' AND cont<>'4118' + + sele vanz + Sum totctva,neimpozab,totftvaI,tvaI,totftvaM,tvaM; + TO m.stotctva,m.Sneimpozab,m.StotftvaI,m.StvaI,; + M.StotftvaM,m.StvaM For Left(SCD,3)='411' And scd<>'4118' + + SUM tvam, tvai TO tvam419, tvai419 FOR LEFT(scd,3) = '419' + + m.ADUN=m.Sneimpozab+m.StotftvaI+m.StvaI+; + M.StotftvaM+m.StvaM + + If M.stotctva + (tvam419 + tvai419) != M.ruldeb - M.f667 + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta fata de 411 este: '+ LTRIM(STR(M.stotctva + (tvam419 + tvai419)-M.ruldeb+M.f667,12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + + +*!* SUM totctva, neimpozab, totftvaI, tvaI, totftvaM, tvaM ; +*!* TO m.Stotctva, m.Sneimpozab, m.StotftvaI, m.StvaI, m.StotftvaM, m.StvaM ; +*!* FOR LEFT(SCD,3)='411' AND cont<>'4118' +*!* +*!* M.ADUN=m.Sneimpozab+m.StotftvaI+m.StvaI+m.StotftvaM+m.StvaM +*!* +*!* IF M.STOTCTVA != M.RULDEB-M.F667 +*!* DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; +*!* 'Diferenta fata de 411 este ' + LTRIM(STR(M.STOTCTVA-M.RULDEB+M.F667, 12)), .T., llInTabel, lnId_ref +*!* llDiferente = .T. +*!* ENDIF + + IF !llDiferente AND llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerVanz ------------------------------ + +&& ------------------------------ INCEPUT: VerBal ------------------------------- +*!* Procedura: VerBal +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 12:00:13 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerBal + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = '' + lcSursa = 'Balanta' + + local trd, trc, s, pd, pc, td, tc, llDiferente + store 0 to trd,trc,s,pd,pc,td,tc + SELECT ACT + SET FILTER TO + SUM SUMA to S + + SELE BAL + SUM RULDEB, RULCRED, precdeb, preccred TO TRD, TRC, pd, pc + IF TRD<>TRC + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Balanta dezechilibrata cu ' + LTRIM(STR(TRC-TRD, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF TRc<>s + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferente intre jurnal si balanta pe credit este ' + LTRIM(STR(TRC-S, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF TRD<>s + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferente intre jurnal si balanta pe debit este ' + LTRIM(STR(TRD-S, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + + SELECT calendar + LOCATE FOR nl=pcnl and an=pcan + SKIP -1 + if bof() OR !FOUND() + RETURN + ENDIF + dateprec = calefirma+'\an'+an+'\date'+nl + use &dateprec\bal in 0 alias bal_prec + SELECT bal_prec + SUM totdeb, totcred, solddeb, soldcred to td, tc, sd, sc + + IF m.nl<>'01' + IF pd<>td + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta de preluare a balantei din precedent este ' + LTRIM(STR(pd-td, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF pc<>tc + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta de preluare a balantei din precedent este ' + LTRIM(STR(pc-tc, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + ELSE + IF pd<>sd + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta de preluare a balantei din precedent este ' + LTRIM(STR(pd-sd, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF pc<>sc + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta de preluare a balantei din precedent este ' + LTRIM(STR(pc-sc, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + ENDIF + use in bal_prec + IF !llDiferente AND llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente.', .F., llInTabel, lnId_ref + ENDIF + +m.nl=pcnl +m.an=pcan + +ENDPROC +&& ------------------------------ SFARSIT: VerBal ------------------------------ + +&& ------------------------------ INCEPUT: VerAct ------------------------------ +*!* Procedura: VerAct +*!* Parametrii: llInTabel +*!* Data/Ora generarii: 27-01-2004 12:14:27 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerAct + LPARAMETERS llInTabel, lnId_ref + + LOCAL lcCategorie, lcSursa + lcCategorie = 'Diverse' + lcSursa = 'Registrul jurnal' + + local trd,trc,s,pd,pc,td,tc, llDiferente + store 0 to trd,trc,s,pd,pc,td,tc + SELECT ACT + SET FILTER TO + sum SUMA to S + + SELE BAL + SUM RULDEB,RULCRED,precdeb,preccred TO TRD,TRC,pd,pc + IF TRD<>TRC + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Balanta dezechilibrata cu ' + LTRIM(STR(TRC-TRD, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF (TRc<>s) + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta intre jurnal si balanta pe credit este ' + LTRIM(STR(TRC-S, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + endif + IF (TRD<>s) + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Diferenta intre jurnal si balanta pe debit este ' + LTRIM(STR(TRD-S, 12)), .T., llInTabel, lnId_ref + llDiferente = .T. + ENDIF + IF !llDiferente AND llInTabel + DO anunta_rezultat IN MESAJE WITH lcCategorie, lcSursa, ; + 'Nu sunt diferente.', .F., llInTabel, lnId_ref + ENDIF +ENDPROC +&& ------------------------------ SFARSIT: VerAct ------------------------------------- + +&& ------------------------------INCEPUT: VerificareLunaDeschisa ------------------------------ +*!* Procedura: VerificareLunaDeschisa +*!* Parametri: llInTabel +*!* Data/Ora generarii: 03-02-2004 14:39:07 +*!* Autor: ANDREI.BAUTU +PROCEDURE VerificareLunaDeschisa + LPARAMETERS llInTabel + sterge_mesaje() + +&& Diverse + DO VerBal IN verifica WITH llInTabel, 1 + + *DO VerAct IN verifica WITH llInTabel, 36 + +&& Terti - Furnizori + DO VerCump IN verifica WITH llInTabel, 11 + + DO VerFurnizor IN verifica WITH llInTabel, 9 + DO VerCumpLun IN verifica WITH llInTabel, 10 + + DO Verfurniz404 IN verifica WITH llInTabel, 13 + DO VerCumpLun404 IN verifica WITH llInTabel, 14 + + DO Verana408 IN verifica WITH llInTabel, 19 + DO VerFact408 IN verifica WITH llInTabel, 20 + +* DO VerAvans409 in verifica WITH llInTabel + +&& Terti - Clienti + DO VerVanz IN verifica WITH llInTabel, 5 + + DO VerClienti IN verifica WITH llInTabel, 3 + DO VerVanzLun IN verifica WITH llInTabel, 4 + + DO VerClient4118 IN verifica WITH llInTabel, 7 + DO VerVanzLu4118 IN verifica WITH llInTabel, 8 + + DO Verana418 IN verifica WITH llInTabel, 25 + DO VerFact418 IN verifica WITH llInTabel, 26 + +* DO VerAvans419 in verifica WITH llInTabel + +&& Terti - Alti + DO VerDebitor IN verifica WITH llInTabel, 15 + DO VerDebLun IN verifica WITH llInTabel, 16 + + DO VerCreditor IN verifica WITH llInTabel, 17 + DO VerCredLun IN verifica WITH llInTabel, 18 + + DO VerDividende IN verifica WITH llInTabel, 34 + DO VerDivLun IN verifica WITH llInTabel, 35 + + DO VerActionar IN verifica WITH llInTabel, 36 + +&& Trezorerie - Casa + DO VerCasaNume IN verifica WITH llInTabel, 21 + DO VerCasa IN verifica WITH llInTabel, 21 + + DO VerCASVNUME IN verifica WITH llInTabel, 22 + DO VerCASAVal IN verifica WITH llInTabel, 22 + +&& Trezorerie - Banca + DO VerBanNume IN verifica WITH llInTabel, 23 + DO VerBanca IN verifica WITH llInTabel, 23 + + DO VerBanVNume IN verifica WITH llInTabel, 24 + DO VerBancaVal IN verifica WITH llInTabel, 24 + +&& Trezorerie - Alte + DO VerCecNume IN verifica WITH llInTabel, 31 + DO VerCec IN verifica WITH llInTabel, 31 + + DO VerAchit542 IN verifica WITH llInTabel, 28 + DO VerAchiLun IN verifica WITH llInTabel, 29 + + + +*!* if(llInTabel) +*!* raport_mesaje() +*!* ENDIF +ENDPROC +&& ------------------------------SFARSIT: VerificareLunaDeschisa ------------------------------ \ No newline at end of file diff --git a/ROACONTRACTE.ARM b/ROACONTRACTE.ARM new file mode 100644 index 0000000..aed6fd2 --- /dev/null +++ b/ROACONTRACTE.ARM @@ -0,0 +1,46 @@ + +[Project] +BackupKeyOptions=3 +BitmapSeconds=1 +CertificateCount=1 +Compression=0 +IniStyle=ArmadilloV3 +Language=English (US) +MessageLanguage1=English (US) +Name=faz +ShowLoading=0 +TargetFile=roacontracte.exe +Version=100 + +[Project#Certificate0] +BitmapSeconds=1 +Key=DEFAULT +KeyTypes=0x44 +Name=default + +[Project#Certificate0#ExpireType] +Revert=0 + +[Project#Certificate0#Nag] +ShowBefore=0 + +[Project#Certificate0#NagAfter] +ShowAfter=0 + +[Project#InterceptedLibs] +Lib0=+MSVBVM50.DLL +Lib1=+MSVBVM60.DLL +Lib2=+VFP5R.DLL +Lib3=+VFP6R.DLL +Lib4=+VFP7R.DLL +Lib5=+VFP8R.DLL +Lib6=+VFP9R.DLL +Lib7=+PBVM70.DLL +Lib8=+MSVCRT.DLL +Lib9=+PROJ.DLL +Lib10=+MSJAVA.DLL +Lib11=+OLE32.DLL +Lib12=+VDFVM8.DLL +Lib13=+MFC71.DLL +Lib14=-* +LibCount=15 diff --git a/Rapoarte/Arhiva/rFactInc.fr2 b/Rapoarte/Arhiva/rFactInc.fr2 new file mode 100644 index 0000000..3df54e1 --- /dev/null +++ b/Rapoarte/Arhiva/rFactInc.fr2 @@ -0,0 +1,1214 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.21" SourceFile="rfactinc.frx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* + + + + +