Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

When configuring and loading information to Engrafo it is highly recommended to have a way to automate the creation of data catalogs and data usage documentation.

The goal is to minimize the manual efforts needed to document data and data usages.

So, we created an API in Engrafo that allows you to extract all kinds of information, place that in a folder and just let Engrafo import and store the information. In that way, you can just schedule your extracts and let Engrafo fetch, structure and storage all the information.

But, the extract you make and store must match the structure of the API. We have explained how this is done in this section.

On this page of the Engrafo Guide you will find information about:

Table of Contents
minLevel1
maxLevel7

If you have questions about alternative methods to automatically load metadata and information into Engrafo, please reach out to us at contact@engrafo.dk (smile)

The overall process for uploading metadata

Metadata load is the core of Engrafo making documentations and data catalogs automated

The process is Upload files → validate files → load files

For the Upload of metadata files, it can be done in 3 ways

  1. Manually. You will have to select the file from your computer and upload it manually

  2. Semi-automated. All metadata files placed in wwwroot\uploads_csv\,\ are automatically imported and are ready for validation. Note that the csv-delimiter that is used is the name of the folder. Here it is “,”

  3. Fully-automated. All metadata placed in wwwroot\uploads_CSVAuto\;\ are automatically imported validated and loaded to Engrafo. Note that the csv-delimiter that is used is the name of the folder. Here it is “;” There is a check every 5 sec. on new files to import, validate and load. (If validation fails, and error messages on that metadata-file is produced and metadata is not imported)

...

Important when placing metadata in a folder, is that the subfolder name identifies which delimiters that is used:

...

So, if metadata is delimited with a “¤”, then place metadata in uploads_csv\¤\

In the following there is a description on how to create a metadata fil for Engrafo. It’s very important to hold the right syntax.

Generating Data Catalog via .csv load

Obligatoriske kolonner

Indlæs en csv-fil, som har følgende obligatoriske kolonerMandatory columns

Load a csv file which has the following mandatory columns:

  • Kategori

  • Database

  • Skema

  • Tabel

  • Kolonne

Derudover kan csv-filen have følgende valgfrie kolonner:

Hvis kolonnerne skal sorteres anderledes end alfabetisk

  • KolonneSortering

Hvis der skal importeres til custom-felterIn addition, the csv file can have the following optional columns:

If the columns are to be sorted other than alphabetically

  • KolonneSortering

If importing to custom fields

  • Database_[feltnavnfieldname]

  • Skema_[feltnavnfieldname]

  • Tabel_[feltnavnfieldname]

  • Kolonne_[feltnavnfieldname]

VIGTIGTIMPORTANT
Felterne The [feltnavn] skal eksistere som Custom-felter før det er muligt at indlæse indhold til dem.Nedenfor vises et eksempel på, hvordan en CSV-fil kan se ud, hvor tegnet ¤ er valgt som fieldname] fields must exist as Custom fields before it is possible to load content into them.

Below is an example of how a CSV file might look with the ¤ character selected as the separator:

Code Block
Kategori¤Database¤Skema¤Tabel¤Kolonne¤Database_Beskrivelse¤Skema_Beskrivelse¤Tabel_Tabelansvarlig¤Kolonne_Beskrivelse¤Kolonne_Kontaktperson
Stage¤DB01¤SKEMA_A¤TABEL01¤KOLONNE01¤Vigtig database¤Skema-beskrivelse¤Knus¤Den 1. kolonne-beskrivelse¤Peter Poulsen
Stage¤DB01¤SKEMA_A¤TABEL01¤KOLONNE02¤Vigtig database¤Skema-beskrivelse¤Jens¤Den 2. kolonne-beskrivelse¤Maria Hansen
Stage¤DB01¤SKEMA_A¤TABEL01¤KOLONNE03¤Vigtig database¤Skema-beskrivelse¤Mads¤Min 3. kolonne-beskrivelse¤Ole Jensen
Stage¤DB01¤SKEMA_A¤TABEL01¤KOLONNE04¤Vigtig database¤Skema-beskrivelse¤Ebbe¤Min 4. kolonne-beskrivelse¤Inge Madsen
Stage¤DB01¤SKEMA_A¤TABEL01¤KOLONNE05¤Vigtig database¤Skema-beskrivelse¤Gorm¤Min 5. kolonne-beskrivelse¤Jim Jensen

...

Updating Data Catalog via .csv load 

Obligatoriske kolonner

Indlæs en csv-fil, som har følgende obligatoriske kolonerMandatory columns

Load a csv file which has the following mandatory columns:

  • KategoriID

  • DatabaseID

  • SkemaID

  • TabelID

  • KolonneID

Derudover kan csv-filen have følgende valgfrie kolonner:

Hvis navne skal opdateresIn addition, the csv file can have the following optional columns:

If names should be updated

  • Kategori

  • Database

  • Skema

  • Tabel

  • Kolonne

Hvis kolonnerne skal sorteres anderledes end alfabetiskIf the columns are to be sorted other than alphabetically

  • KolonneSortering

Hvis custom-felter skal opdateresIf custom fields are to be updated

  • Database_id_[feltnavnfieldname]

  • Database_[feltnavnfieldname]

  • Skema_id_[feltnavnfieldname]

  • Skema_[feltnavnfieldname]

  • Tabel_id_[feltnavnfieldname]

  • Tabel_[feltnavnfieldname]

  • Kolonne_id_[feltnavnfieldname]

  • Kolonne_[feltnavnfieldname]

VIGTIGTIMPORTANT
Felterne The [feltnavn] skal eksistere som Custom-felter før det er muligt at indlæse indhold til dem.Nedenfor vises et eksempel på, hvordan en CSV-fil kan se ud, hvor tegnet ¤ er valgt som fieldname] fields must exist as Custom fields before it is possible to load content into them.

Below is an example of how a CSV file might look with the ¤ character selected as the separator:

Code Block
KategoriID¤DatabaseID¤SkemaID¤TabelID¤KolonneID¤Kolonne
5¤3¤9¤7¤6¤CVR_NUMMER

...

Generating Data Usage documentation via .csv load 

Indlæs en csv-fil, som har følgende obligatoriske kolonerMandatory columns

Load a csv file which has the following mandatory columns:

  • Kategorihierarki

  • Skabelonnavn

  • Unitnavn

  • Ejer

  • Dokumentationsnavn

Derudover kan csv-filen have følgende valgfrie kolonner til indlæsning af tekst-felterIn addition, the csv file can have the following optional columns for load of Text fields:

  • Customfelt_text_name

  • Customfelt_text_value

Derudover kan csv-filen have følgende valgfrie kolonner til indlæsning af In addition, the csv file can have the following optional columns for load of links:

  • Customfelt_link_name

  • Customfelt_link_href

  • Customfelt_link_description

Derudover kan csv-filen have følgende valgfrie kolonner til indlæsning af In addition, the csv file can have the following optional columns for load of inputdata:

  • Inputdata_customfelt_name

  • Inputdata_kategori

  • Inputdata_database

  • Inputdata_skema

  • Inputdata_tabel

  • Inputdata_kolonne (* kan anvendes hvis ALLE kolonner skal indlæses)

...

  • can be used if ALL columns are to be loaded)

In addition, the csv file can have the following optional columns for load of outputdata:

  • Outputdata_customfelt_name

  • Outputdata_kategori

  • Outputdata_database

  • Outputdata_skema

  • Outputdata_tabel

  • Outputdata_kolonne (* kan anvendes hvis ALLE kolonner skal indlæses)

VIGTIGT

  • Kategorihierarkiet skal findes i forvejen, før det er muligt at indlæse til det

  • Kategori-elementerne skal angives med ¤ som separator, eksempelvis: Level1¤Level2¤Level3

  • Skabelonerne angivet i [Skabelonnavn] skal eksistere, før det er muligt at indlæse til dem

  • Units angivet i [Unitnavn] skal eksistere, før det er muligt at indlæse til dem

  • Felteterne angivet i can be used if ALL columns are to be loaded)

Important

  • The category hierarchy must already exist before it is possible to load into it

  • The category elements must be specified with ¤ as a separator, for example: Level1¤Level2¤Level3

  • The templates specified in [Skabelonnavn] must exist before loading to them is possible

  • Units specified in [Unitnavn] must exist before loading to them is possible

  • The fields specified in [Customfelt_text_name] skal eksistere som Custom-felter, før det er muligt at indlæse indhold til demFelteterne angivet i must exist as Custom fields before it is possible to load content into them

  • The fields specified in [Customfelt_link_name] skal eksistere som Custom-felter, før det er muligt at indlæse indhold til demFelteterne angivet i must exist as Custom Fields before it is possible to load content into them

  • The fields specified in [Inputdata_customfelt_name] skal eksistere som Custom-felter, før det er muligt at indlæse indhold til demFelteterne angivet i must exist as Custom fields before it is possible to load content into them

  • The fields specified in [Outputdata_customfelt_name] skal eksistere som Custom-felter, før det er muligt at indlæse indhold til demKolonnen angivet i must exist as Custom fields before it is possible to load content into them

  • The column specified in [Inputdata_kolonne] skal eksistere før det er muligt at indlæse det som input-dataKolonnen angivet i must exist before it can be loaded as input data

  • The column specified in [Outputdata_kolonne] skal eksistere før det er muligt at indlæse det som output-data

...

  • must exist before it can be loaded as output data

Below is an example of how a CSV file can look for loading both text fields and links, where the character ; is selected as separator:

Code Block
Kategorihierarki;Skabelonnavn;Unitnavn;Ejer;Dokumentationsnavn;Customfelt_text_name;Customfelt_text_value;Customfelt_link_name;Customfelt_link_href;Customfelt_link_description
Level1;ETL;Oversigt;Ole;Datarens;Beskrivelse;Dette er en kort beskrivelse...;Link til info;https://tv2.dk/;TV2
Level1;ETL;Detaljer;Peter;Datarens;Vigtige fakta;Her står fakta omkring datarens;;;
Level1¤Level2;ETL;Oversigt;Ole;Solvensberegning;Beskrivelse;Dette er en beskrivelse af solvensberegningen...;Link til info;https://www.dr.dk/;Danmarks Radio
Level1¤Level2;ETL;Detaljer;Peter;Solvensberegning;Vigtige fakta;Fakta om solvens er angivet her...;;;

Nedenfor vises et eksempel på, hvordan en CSV-fil kan se ud til indlæsning af input-data, hvor tegnet ; er valgt som Below is an example of how a CSV file can look for loading input data, where the character ; is selected as separator:

Code Block
Kategorihierarki;Skabelonnavn;Unitnavn;Ejer;Dokumentationsnavn;Inputdata_customfelt_name;Inputdata_kategori;Inputdata_database;Inputdata_skema;Inputdata_tabel;Inputdata_kolonne
Level1¤Level2;ETL;Oversigt;Ole;Datarens;Inputdata;Kategori 1;Database A;Skema A;Tabel A;Kolonne A
Level1¤Level2;ETL;Oversigt;Ole;Datarens;Inputdata;Kategori 1;Database A;Skema A;Tabel A;Kolonne B
Level1¤Level2;ETL;Oversigt;Ole;Datarens;Inputdata;Kategori 1;Database A;Skema A;Tabel A;Kolonne C
Level1¤Level2;ETL;Oversigt;Ole;Datarens;Inputdata;Kategori 1;Database A;Skema A;Tabel B;*

...

Generating Data Catalog SQL Server connection string 

TBC - sorrySee the video....

Generating sample space via .csv load 

Indlæs en csv-fil, som har følgende obligatoriske kolonerLoad a csv file that has the following required columns:

  • Udfaldsrum

  • Værdi

  • Beskrivelse

Nedenfor vises et eksempel på, hvordan en CSV-fil kan se ud, hvor tegnet ¤ er valgt som The following is an example of what a CSV file might look like where the character ¤ is selected as the separator:

Code Block
Udfaldsrum¤Værdi¤Beskrivelse
Postnr¤1301¤København K
Postnr¤2000¤Frederiksberg
Postnr¤2100¤København Ø
Postnr¤2200¤København N
Postnr¤2300¤København S
Postnr¤2400¤København NV
Postnr¤2450¤København SV
Postnr¤2450¤Valby
Postnr¤2600¤Glostrup

...