Vues :

Question:
DocuWare 5 file cabinets have a vastly different structure from the familiar DocuWare 4 file cabinets. How can you properly administrate them on file level?

Answer:
The structure has indeed changed quite a bit, but the following article will bring you up to Speed.

For each file cabinet in DocuWare 5 mode, a separate directory is created at the selected location for each DocuWare disk. The file cabinet directories are called <file cabinet name>.<Disk name>, where the file cabinet name has a maximum of 8 characters, and the disk number always consists of 6 digits.

The first disk of the Document_pool file cabinet is called Document.000001. Below this directory is the GUID of the file cabinet. This is the unique ID number of the file cabinet. Also below the DocuWare disk are three additional directory levels, where each directory has a 3-digit sequential number, starting with 000.

The first of these levels can contain a maximum of 128 folders (000 to 127), the two following levels can contain each a maximum of 256 sub-directories (000 to 255).

Below the third directory level are the document directories. Each of these document directories contains all pages (files) of a document, and the header file in XML format. The document directories are given the name of the DocID (a 10-digit document number, which is unique within the file cabinet), that is also sequential (from 0000000001 to (2 exp. 31)-1 = 2.147.483.647 ˜ 2,15bio.). The header file is always called <Document number>.XML and has no size restriction. The document pages are always called F (File), followed by a sequential number starting with 1, and the file extension (e.g. doc, xls, pdf, DWTIFF, ...), for example: F1.doc or F5.DWTIFF.

You can create up to 999.999 DocuWare disks, though not within one directory, since Windows limits the number of sub directories within each directory.

The graphic below shows the file structure within a DocuWare 5 file cabinet. It was assumed that all documents are stored on a single DocuWare disk:

File Structure

This means that a maximum of 2.147.483.647 (˜ 2,15 billion) documents may be stored in one file cabinet. Locating the directory of a particular document.

Binary digit method
In order to calculate the exact sub directory of a particular document, first convert the 10-digit document number (DocID) into a 32-bit binary digit. For example: DocID 0.002.388.444 yields the 32 bit binary digit 0000.0000.0010.0100.0111.0001.1101.1100 (the dots are there for better readability only, leading zeros must be filled up to the 32nd place.

  • The first (left-hand side) 8 digits of this binary number represent the first directory Level, in our case: \000\.
  • The next 8 digits of this binary number represent the second directory Level, in our example: 0010.0100, decimal 36, i.e. \000\036\.
  • The next 8 digits of this binary number represent the third directory level, in our example: 0111.0001, decimal 113, i.e. \000\036\113\.
  • The last 8 digits of the binary number are not relevant for calculating the directories.

The document with DocID 0002388444 in our example is therefore stored in sub-directory D:\File_cabinets\Document.000001\000\036\113\0002388444\.

Calculation method
In order to calculate the precise sub directory of a particular document, proceed as follows:

  • Calculating the first directory level for our sample document with document number (DocID) 0002388444:
    DocID / (256 * 256 * 256) = 2.388.444 / 16.777.216 = 0,1423...
    => integer part 0, i.e. folder \000\
  • Calculating the second directory level:
    (DocID - (<folder number of first level> * 256* 256 * 256)) / (256*256)
    = (2388444 - 0 * 256 * 256 * 256) / (256*256)
    = 2388444 / 65536 = 36,4447...
    => integer part 36,
    i.e. folder \000\036\
  • Calculating the third directory level:
    (DocID - (<folder number of first level> * 256* 256 * 256) -(<folder number of second level> * 256 * 256)) / 256
    = (2388444 - (0 * 256 * 256 * 256) - (36* 256* 256)) / 256
    = 29148 / 256 = 113,8593...
    => \113\ i.e. folder \000\036\113\

The document with DocID 0002388444 in our example is therefore stored in sub directory D:\File_cabinets\Document.000001\000\036\113\0002388444\. The document number (DocID) is stored in the database, the path to this document is calculated by Content Server.