QVD Storage Daten Katalog V1

Sie wollen einen besseren Überblick über Ihr QVD Verzeichnis?

Mit dieser App können Sie Sich einen Überblick über Ihre QVD-Dateien machen. Wenn Ihre SchlüsselFelder mit % beginnen, werden zudem die Beziehungen zwischen den Tabellen angezeigt. Die App ist zur Zeit nur ein Prototype und soll nur mehr Features erhalten.

Der Katalog wurde mit meinen Framework erstellt. Sie benötigen die Include Dateien um diesen zu nutzen.

Des weiteren müssen die Pfade für die Verbindungen “include” und “qvdImport” angepasst werden.

Das Script:

sub DoDir (Root,replace)
   For Each Ext in 'qvd'
   	  
      For Each File in filelist (Root&'\*.' &Ext)
          First 1 LOAD
             if(trim(replace('$(Root)','$(replace)','')) = '','Root', 'Root'&replace('$(Root)','$(replace)','')) As Dir
             ,replace('$(File)','$(Root)/','') as QVDName
             ,FileSize( '$(File)' ) as Size 
             ,FileTime( '$(File)' ) as FileTime
          autogenerate 1;
          
           Values:
           First 1
           LOAD
                 replace('$(File)','$(Root)/','') as QVDName, *
           FROM [$(File)] (qvd);
           
           FieldList:
           CrossTable(FieldName,FieldValueSample) Load * Resident Values;
           Drop Table Values;
           
           FieldInfos:
           LOAD
              "FieldName"
              , if(left("FieldName",1)='%','Key','Value') As FieldType
              ,BitOffset
              ,BitWidth
              ,Bias
              ,NoOfSymbols
              ,Offset
              ,"Length"
              ,"NumberFormat/Type" As FieldFormat
              //,"NumberFormat/nDec"
              //,"NumberFormat/UseThou"
              //,"NumberFormat/Dec"
              //,"NumberFormat/Thou"
              //,%Key_QvdTableHeader_B94FCCAC68ED3E20
              //,%Key_QvdFieldHeader_59D66ED49CFF179D
          FROM  [$(File)]
          (XmlSimple, table is [QvdTableHeader/Fields/QvdFieldHeader]);   
          
      Next File
   Next Ext   
   For Each Dir in dirlist (Root&'\*' )
      Call DoDir (Dir,replace)
   Next Dir
End Sub

Call DoDir ('lib://qvdImport','lib://qvdImport')

Share

Schreibe eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht.