OOQL language filespace


file container for object attachments


define - create new filespace definition

  filespace define   AdminName {FileSpace_DefineOption} [force];

clone - duplicate a filespace and set the properties for the new instance

  filespace clone  AdminName define AdminName {FileSpace_EditOption} [force];

edit - update the filespace properties

  filespace edit   AdminName {FileSpace_EditOption} [force];

show - print the filespace properties

  filespace show   AdminName [FileSpace_GetOption] [Token_Option] [ExportFile_Option] ;

select - extract filespaces on the base of query filters

  filespace select AdminPatternList {Filter_Option} [FileSpace_GetOption]
                                     [Token_Option] [ExportFile_Option] ;

synchronize - synchronize all the files from the filespace to/from a localarea

  filespace synchronize AdminName  [FileSpace_SyncOption] [force] [add] [commit NUMBER] ;

check - check if all object attached files are phisically present inside the filespace

  filespace check  AdminName ;

defrag - remove all files not related to any object from the filespace

  filespace defrag  AdminName ;

empty
- remove all files from the filespace

  filespace empty  AdminName ;

undefine - remove a empty filespace from the database

  filespace undefine AdminName ;



FileSpace_DefineOption
description GenericValue
application AdminName
image  FileName
imagedata GenericString
protocol   FileSpace_Protocol
host GenericString
port NUMBER
path FileName
subpath FileName
permission NUMBER
account GenericString
password GenericString
url FileName
localarea   AdminName { AdminName }
[! / not] hashnames
[! / not] subfolders
[! /not] hidden

FileSpace_EditOption
name AdminName
description GenericValue
application AdminName
svnrev NUMBER
image  FileName
imagedata GenericString
protocol   FileSpace_Protocol
host GenericString
port NUMBER
path FileName
subpath FileName
permission NUMBER
account GenericString
password GenericString
url FileName
rehash
localarea Edit_Operator AdminName { Edit_Operator AdminName }
[! / not] hashnames
[! / not] subfolders
[! /not] hidden

FileSpace_Protocol
file
ftp
http
database

FileSpace_SyncOption
to localarea AdminName
from localarea AdminName

FileSpace_GetOption
get [FileSpace_GetBasicOption]
   
  FileSpace_GetBasicOption
  { FileSpace_GetBasicToken [as IDENTIFIER] { FileSpace_GetBasicToken [as IDENTIFIER] } }
  FileSpace_GetBasicToken [as IDENTIFIER]
     
    FileSpace_GetBasicToken
    Common_GetBasicOption  
    protocol  
    host  
    port  
    path  
    subpath  
    permission  
    account  
    password  
    url  
    localarea   [. LocalArea_GetBasicOption]
    localarea[] [. LocalArea_GetBasicOption]
    localarea[ AdminName ]  
    hashnames  
    subfolders  



KEYWORDs
account the username to access the filespace (ftp/http types)
add synchronization: add file if it doesn't exist inside the localarea (otherwise only common files are synchronized)
application the associated application menu
description the filespace description
force this flag allows to ignore errors during the creation/update (for example, the folder physical creation or some localarea not yet defined)
synchronization: replaces files also if they are more recent
hashnames this flag enables the file name encryption to avoid collisions inside the filespace
host filespace host IP address or name (only for ftp type; default = localhost or 127.0.0.1)
hidden administration hidden objects are not visible/usable
localarea associated localareas (storage mirrors) for local file replications
image local path for the filespace icon to upload
imagedata base64 code for the filespace icon
moddate last modification date
name the filespace name
password the password to access the filespace (ftp/http types)
path the filespace location path (relative for ftp/http types; absolute for file type)
permission folder access permissions ( unix code; ex: 755 ) (ftp/file types)
port filespace host port (only for ftp type; default = 21)
protocol the filespace type:
- database: content of files is placed inside database BLOB fields
- file: files are stored in the Network File System (NFS)
- ftp: uses the FTP to exchange and manipulate files over a TCP/IP network
- http: files are exchanged by a "FileSystem" web service.
rehash re-generate the file names according to the hashnames flag
subfolders this flag enables the sub-folders creation based on the encrypted file names (allows to limit the number of files collected into a single folder)
subpath filespace root folder included into the path folder (ftp/http/file types)
svnrev SVN repository revision number
url the webservice url (only for http type)


SAMPLES

filespace define 'FS0' description 'My FIleSP0' image "C:\images\filespace.gif" protocol file path "C:\Stores" subpath "fs0" localarea LA0 LA1 hashnames subfolders ;

filespace define 'FS1' description 'My FIleSP1' protocol ftp path "/stores" subpath "fs1"
host '106.10.14.01' port 21 permission 666 account 'ftpuser' password 'ftppassword' hashnames !subfolders;

filespace show FS0 get { protocol host path subfolders localarea } token { "|" ";" };

filespace edit "FS0" !subfolders permission 660 ;

filespace select F?? get { name description protocol host port path permission account url subfolders hashnames localarea.{ name description protocol} } token { "|" ";" "," };

 

common syntax

Common_GetBasicOption
Common_GetBasicToken [ as IDENTIFIER ]

Common_GetBasicToken
id  
name  
origdate  
moddate  
moduser  
description  
svnrev  
hidden  
image  
imagedata  
feature[ AdminName ] [. Feature_GetBasicOption]
feature[] [. Feature_GetBasicOption]
feature [. Feature_GetBasicOption]
application [. Menu_GetBasicOption]
super  
admintype  

Edit_Operator
add
remove

Edit_RefOperator
addbefore AdminName set
addafter AdminName set
add
remove
movebefore
moveafter

Edit_AddOperator
addbefore AdminName define
addafter AdminName define
append

Edit_MoveOperator
movebefore
moveafter

Event_Type
action
check

AdminPatternList
AdminNamePattern {, AdminNamePattern}

AdminNamePattern
*
PATTERNIDENTIFIER
STRINGVAL
AdminName

GenericPatternList
GenericPattern {, GenericPattern}

GenericPattern
*
IDENTIFIER
PATTERNIDENTIFIER
GenericValue

AdminActor
user AdminName
team AdminName
assignment AdminName

AdminName
IDENTIFIER
QUOTED_STRING
SQUOTED_STRING

GenericValue
DATETIME
GenericNumber
GenericString
BOOLEANVAL

GenericString
STRINGVAL
QUOTED_STRING
SQUOTED_STRING

GenericNumber
NUMBER
REALNUMBER

Filter_Option
moddate Date_Range
application AdminNamePattern

Date_Range
=  DATETIME  
!= DATETIME
 
<  DATETIME
 
>  DATETIME
 
<= DATETIME
 
>= DATETIME
 
in [ DATETIME , DATETIME ]
 
in ( DATETIME , DATETIME ]
 
in [ DATETIME , DATETIME )
 
in ( DATETIME , DATETIME )  

Token_Option
token { Token_Separator { Token_Separator } }
token Token_Separator

Token_Separator
QUOTED_STRING
SQUOTED_STRING
IDENTIFIER
STRINGVAL
json
json-
json+
xml
xml-
xml+

ExportFile_Option
exportfile FileName [append] [xml | json ]

ImportFile_Option
importfile FileName [xml | json |emxxml]

LogFile_Option
logfile FileName [append]

FileName
QUOTED_STRING
SQUOTED_STRING

basic elements
grammar rules
[ ] = optional element - only one item is allowed : ( 0 or 1 )
{ } = optional element - more than one is allowed : ( 0 or N )
/ = alternative
= one of ...
   
  all bold texts represent keywords or command syntax

IDVAL
#<5 dec digits [ 0-9 ]>-<8 hex digits [ 0-9 A-F ]>
  example:
  #00020-34F2A80E

COMMENT
// <any character until the end of the line(\n \r)>
  example:
  // My single line comment

LONGCOMMENT
/* <any character> */
 

example:
  /* My multi line comment starts here
  continue here
  and finish here */


DATETIME
<year 4 digits>[ - /. ]<month 2 digits>[ - /. ]<day 2 digits>
  examples:
   2009-12-23    2009/03/19   2009.11.14
<year 4 digits>[ - /. ]<month 2 digits>[ - /. ]<day 2 digits> <hours>:<minutes>:[<seconds>]
  examples:
   2009-12-23 10:23   2009/03/19 16:03:34  2009.11.14 00:20:04

NUMBER
[+-]<decimal digits [ 0-9 ]>
  examples:
   -1203   +276   25

BOOLEANVAL
true / false

REALNUMBER
[+-]<decimal digits [ 0-9 ]>.<decimal digits [ 0-9 ]>[E(+-)<esponent [0-9]>]
  example:
   -37.837   +2.3874   13.887   1.4862E-04

QUOTED_STRING
"<any character>"
  example:
   "my quoted string"

SQUOTED_STRING
'<any character>'
  example:
   'my single quoted string'

IDENTIFIER
<one or more of [ a-z A-Z ]><zero or more of [ a-z A-Z 0-9 _ ]>
  example:
   Var1    object_Name_02

VARIABLE
$<one o more of [ a-z A-Z 0-9 ]><zero or more of [ a-z A-Z 0-9 _ ]>
 

example:
   $1   $var_02    $1b


STRINGVAL
<one or more of [ a-z A-Z 0-9 -_ $ ? @ | ~ % & / = : + \ # ' ]>
  a string not recognized as identifier

PATTERNIDENTIFIER
<a string with * (match 0 or more characters) and ? (match 1 character) wildcards>
  example:
   mypa*er?_ide?ti*

© 2008-2015 MS Enterprise Solutions | Website Templates by IceTemplates.com
Please Read: Privacy Policy and Terms of Use