skip to Main Content

Zilele trecute am fost contactat de un fost coleg de forum, pentru a-l ajuta cu o bază de date.

Ce se dorea ?
– folosind o interogare a unui website (web query) să verifice validitatea codului CIF.

[stextbox id=”info”]Codul de identificare fiscală – CIF este un cod numeric constituind codul unic de identificare a unui comerciant. Acesta se mai numește și cod fiscal sau cod unic de identificare. Până la 1 ianuarie 2007 s-a numit Cod Unic de Înregistrare (CUI).[/stextbox]

O parte din cod o avea deja, dar lipsea partea cea mai importantă: interpretarea codului HTML al paginii cu datele validate.
Astfel arată formularul în modul de vizualizare Design View.

[Aplicaţie] - Validare cod CIF în Microsoft Access

[stextbox id=”warning” caption=”Înainte de scrierea codului, va trebui să ştiţi următoarele lucruri:” bgcolor=”faf0e6″]
        • site-ul care se interoghează este http://www.openapi.ro, mai exact COD_CIF.xml;
        • pentru sistemul de operare Windows 7 + browser-ul Internet Explorer 9 va trebui să realizaţi următoarele modificări:
          • în browser, accesaţi meniul ToolsCompatibility View Settings şi din fereastra afişată bifaţi opţiunea Display All Websites in Compatibility View.
          • în VBA, accesaţi meniul ToolsReferences şi puneţi o bifă librăriei Microsoft Internet Controls (acest pas este deja făcut în BD, dar în orice caz, puteţi verifica dacă este bifat).
        • pentru validarea acestui cod, este necesară o conexiune la internet.

[Aplicaţie] - Validare cod CIF în Microsoft Access[/stextbox]

Codul folosit este:

 

 

Despre cod:

  • se verifică conexiunea la internet şi dacă aceasta există, se trece mai departe la rularea codului
  • se iniţializează o nouă sesiune de lucru a browser-ului Internet Explorer;
  • se ascunde fereastra browser-ului;
  • se navighează pe pagina www.openapi.ro/api/companies/COD_CIF.xml – codul cid fiind preluat dintr-un textbox din formular;
  • după ce se încarcă pagina, se citeşte conţinutul HTML al acesteia;
  • dacă acel cod CIF nu este valid, browser-ul va încărca pagina 404.php, afişând titlul HTTP 404 Not Found;
  • drept urmare, acest titlu a fost inserat în procedura de error trapping pentru a afişa un mesaj corespunzător erorii;
  • după citirea codului HTML, se va trece la prelucrarea acestuia, mai exact, la eliminarea tag-urilor suplimentare:
    • folosind o combinaţie între funcţiile MID şi InStr se vor elimina toate tag-urile din jurul textului de interes
    • Mid ( text, start_position, number_of_characters )
    • Instr ( [start], string_being_searched, string2, [compare] )
    • pentru a prelua doar valoarea de interes, se va folosi funcţia Left;
  • acum, toate acele valori au fost extrase şi atribuite unor constante;
  • următorul pas constă în afişarea acelor valori în text box-urile corespunzătoare.

Tot codul de mai sus este atribuit unui buton de comandă.
Atunci când se va valida un cod nou, toate label-urile informative vor fi ascunse, iar în cazul unei erori/validări reuşite/validări nereuşite, este afişat label-ul corespunzător.

Desigur, codul poate returna şi alte elemente: cod zip, data actualizării codului, etc., în funcţie de rezultatul interogării paginii.

Download | Validare_CIF.accdb
Download | Validare_CIF.mdb

(Visited 12 times, 1 visits today)

Cosmin Tătaru

Pasionat de blogging și tehnologie încă din 2009, Cosmin este aici să vă ajute să vă creșteți vânzările și productivitatea punând tehnologia la treabă pentru dumneavoastră.

Suport-Clienti
Mergeți sus