2012.021
1
0
0
0
0
0
1547248127
0
0
0
0
16384
1
0
My Application
My Application
4194304
2097152
4096
2048
My Application.exe
0
0
MyApplication
0
0
8080
0
Launching...
The application has gone off-line. Please try again later.
App
0
1
Application
1
0
1
373139383035373732
kFileQuitShortcut
1
134217984
kFileQuitShortcut
0
0
1
0
Cmd+Q
5
0
Ctrl+Q
kFileQuit
1
134217984
kFileQuit
0
&Quit
0
2
0
E&xit
kEditClear
1
134217984
kEditClear
0
&Delete
0
2
0
&Delete
5
0
&Delete
Window1
0
1
Window
1
0
True
719805772
30
True
False
True
True
True
True
False
True
Untitled
3136373737323135
False
False
30
3332303030
3332303030
3634
3634
343030
363030
30
Name
1
ID
Window
Interfaces
1
ID
Window
Super
1
ID
Window
Placement
1
Position
0
Integer
Enum
Window
0 - Default
1 - Parent Window
2 - Main Screen
3 - Parent Window Screen
4 - Stagger
Width
1
Position
600
Integer
Window
Height
1
Position
400
Integer
Window
MinWidth
1
Position
64
Integer
Window
MinHeight
1
Position
64
Integer
Window
MaxWidth
1
Position
32000
Integer
Window
MaxHeight
1
Position
32000
Integer
Window
Frame
1
Appearance
0
Integer
Enum
Window
0 - Document
1 - Movable Modal
2 - Modal Dialog
3 - Floating Window
4 - Plain Box
5 - Shadowed Box
6 - Rounded Window
7 - Global Floating Window
8 - Sheet Window
9 - Metal Window
10 - Drawer Window
11 - Modeless Dialog
Composite
1
Appearance
False
Boolean
Window
HasBackColor
1
Appearance
False
Boolean
Window
BackColor
1
Appearance
&hFFFFFF
Color
Window
Backdrop
1
Appearance
Picture
Picture
Window
Title
1
Appearance
Untitled
String
Window
Visible
1
Appearance
True
Boolean
Window
FullScreen
1
Appearance
False
Boolean
Window
MenuBarVisible
1
Appearance
True
Boolean
Window
CloseButton
1
Appearance
True
Boolean
Window
Resizeable
1
Appearance
True
Boolean
Window
LiveResize
1
Appearance
True
Boolean
Window
MaximizeButton
1
Appearance
False
Boolean
Window
MinimizeButton
1
Appearance
True
Boolean
Window
MacProcID
1
Appearance
0
Integer
Window
MenuBar
1
Appearance
MenuBar
MenuBar
Window
ImplicitInstance
1
Appearance
True
Boolean
Window
MenuBar1
0
0
EditMenu
&Edit
-2147483648
1
134217984
0
MenuItem
0
EditUndo
&Undo
-2147483648
Cmd+Z
Z
1
1
134217984
0
MenuItem
0
-
-2147483648
1
134217984
0
MenuItem
0
EditCut
Cu&t
-2147483648
Cmd+X
X
1
1
134217984
0
MenuItem
0
EditCopy
&Copy
-2147483648
Cmd+C
C
1
1
134217984
0
MenuItem
0
EditPaste
&Paste
-2147483648
Cmd+V
V
1
1
134217984
0
MenuItem
0
EditClear
#App.kEditClear
-2147483648
1
134217984
0
MenuItem
0
-
-2147483648
1
134217984
0
MenuItem
0
EditSelectAll
Select &All
-2147483648
Cmd+A
A
1
1
134217984
0
MenuItem
Build Automation
0
Linux
1000243259
Build
586482103
Mac OS X
1000243259
Build
1601400869
Windows
1000243259
Build
795303613
BKS_ActiveRecord
0
0
1
0
Begin
1
134217984
Function Begin() As BKS_ActiveRecord.Transaction
return Begin(GetTypeInfo(BKS_ActiveRecord.Base))
End Function
134217984
1
0
BKS_ActiveRecord.Transaction
Begin
1
134217984
Function Begin(ty as Introspection.TypeInfo) As BKS_ActiveRecord.Transaction
'Start a transaction and return and object for it.
if ty=nil then
raise new NilObjectException
end if
dim adp as BKS_ActiveRecord.DatabaseAdapter
adp = GetContext.ConnectionAdapter_Get( ty )
if adp=nil then
raise new ActiveRecordException("No connection available for type: " + ty.FullName)
end if
return new Transaction(adp)
End Function
134217984
1
0
ty as Introspection.TypeInfo
BKS_ActiveRecord.Transaction
Connect
1
134217984
Sub Connect(db as Database)
Connect(GetTypeInfo(BKS_ActiveRecord.Base), db)
End Sub
134217984
1
0
db as Database
Connect
1
134217984
Sub Connect(ty as Introspection.TypeInfo, db as Database)
if ty=nil or db=nil then
raise new NilObjectException
end if
dim adp as BKS_ActiveRecord.DatabaseAdapter
adp = CreateDatabaseAdapter(db)
GetContext.ConnectionAdapter_Set(ty, adp)
End Sub
134217984
1
0
ty as Introspection.TypeInfo, db as Database
CreateDatabaseAdapter
1
134217984
Function CreateDatabaseAdapter(db as Database) As BKS_ActiveRecord.DatabaseAdapter
#if BKS_ActiveRecordConfig.kIncludeREALSQLDatabase
if db isa REALSQLDatabase then
return new REALSQLDatabaseAdapter(db)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeSQLiteDatabase and RBVersion>=2013
if db isa SQLiteDatabase then
return new SQLiteDatabaseAdapter(db)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
if db isa CubeSQLServer then
return new cubeSQLDatabaseAdapter(db)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeMSSQLServer
if db isa MSSQLServerDatabase then
return new MSSQLServerAdapter(db)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeMySQLCommunityServer
if db isa MySQLCommunityServer then
return new MySQLCommunityServerAdapter(db)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeOracle
if db isa OracleDatabase then
return new OracleAdapter(db)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludePostgreSQLDatabase
if db isa PostgreSQLDatabase then
return new PostgreSQLDatabaseAdapter(db)
end if
#endif
dim ex as new UnsupportedOperationException
ex.Message = "Unsupported database type: " + Introspection.GetType(db).FullName
raise ex
End Function
134217984
33
0
db as Database
BKS_ActiveRecord.DatabaseAdapter
Disconnect
1
134217984
Sub Disconnect()
'Disconnect the base active record class from the database
Disconnect( GetTypeInfo(BKS_ActiveRecord.Base) )
End Sub
134217984
1
0
Disconnect
1
134217984
Sub Disconnect(ty as Introspection.TypeInfo)
'Disconnect a specific active record class from the database
if ty=nil then
raise new NilObjectException
end if
dim ctx as BKS_ActiveRecord.P.Context = GetContext
ctx.ConnectionAdapter_Remove(ty)
#if RBVersion >= 2011.04
#if TargetWeb
if ctx.ConnectionAdapter_Count=0 then
'kill the context
dim lck as new BKS_ActiveRecord.P.ScopedLock(csCtx)
m_dictContext.Remove(Session.Identifier)
end if
#endif
#endif
End Sub
134217984
1
0
ty as Introspection.TypeInfo
Field
1
134217984
Function Field(sFieldName as string) As BKS_ActiveRecord.FieldOpt
return new FieldOpt(sFieldName)
End Function
134217984
1
0
sFieldName as string
BKS_ActiveRecord.FieldOpt
FindFieldProperty
1
134217984
Function FindFieldProperty(tyClass as Introspection.TypeInfo, sField as string) As Introspection.PropertyInfo
dim iPrefixType as integer = 0 //Created By ARGen
static arsAllowPrefix() as string = Array("dt", "s", "d", "b", "i", "i64", "c", "s") //Created By ARGen
static arsAllowSuffix() as string = Array("_dt", "_s", "_d", "_b", "_i", "_i64", "_c", "_s") //Created By ARGen
'Match the field to a property of the class.
select case iPrefixType
case 0
//No prefix/Suffix
for each pi as Introspection.PropertyInfo in tyClass.GetProperties
if pi.Name = sField then
return pi 'accept exact match
end
next
return nil
case 1
//Prefix
for each pi as Introspection.PropertyInfo in tyClass.GetProperties
if pi.Name.Right(sField.Len) = sField then
'check for a prefix match
dim sPrefix as string = pi.Name.Mid(1, pi.Name.Len - sField.Len)
if arsAllowPrefix.IndexOf(sPrefix) >-1 then
return pi
end if
end
next
return nil
case 2
//Suffix
for each pi as Introspection.PropertyInfo in tyClass.GetProperties
if pi.name.left(sField.Len) = sField then
'Check for suffix match
dim sSuffix as string = pi.Name.Right(pi.Name.Len - sField.Len)
if arsAllowSuffix.IndexOf(sSuffix) > -1 then
return pi
end
end if
next
return nil
case else
break
end
End Function
134217984
33
0
tyClass as Introspection.TypeInfo, sField as string
Introspection.PropertyInfo
FindMatchingTable
1
134217984
Function FindMatchingTable(adp as BKS_ActiveRecord.DatabaseAdapter, sClassName as string) As string
dim sTable as string = sClassName
if adp.HasTable( sTable ) then
return sTable
end if
sTable = "tbl" + sClassName
if adp.HasTable( sTable ) then
return sTable
end if
'if the class is clsSomething, look for Something and tblSomething
'but not if the letter after cls is lowercase
dim sFourth as string = Mid(sClassName,4,1)
if Left( sClassName, 3 ) = "cls" and _
StrComp( sFourth, "A", 0 ) >= 0 and _
StrComp( sFourth, "Z", 0 ) <=0 then
sTable = sClassName.Mid(4)
if adp.HasTable( sTable ) then
return sTable
end if
sTable = "tbl" + sTable
if adp.HasTable( sTable ) then
return sTable
end if
end if
return ""
End Function
134217984
33
0
adp as BKS_ActiveRecord.DatabaseAdapter, sClassName as string
string
GetContext
1
134217984
Function GetContext() As BKS_ActiveRecord.P.Context
if m_ctxDefault is nil then
m_ctxDefault = new BKS_ActiveRecord.P.Context
end if
#if RBVersion >= 2011.04
#if TargetWeb
if not Session.Available then
return m_ctxDefault
end if
dim lck as new BKS_ActiveRecord.P.ScopedLock(csCtx)
if m_dictContext=nil then
m_dictContext = new Dictionary
end if
if not m_dictContext.HasKey(Session.Identifier) then
m_dictContext.Value(Session.Identifier) = new BKS_ActiveRecord.P.Context
end if
return m_dictContext.Value(Session.Identifier)
#endif
#endif
return m_ctxDefault
End Function
134217984
33
0
BKS_ActiveRecord.P.Context
GetTableDefs
1
134217984
Function GetTableDefs() As BKS_ActiveRecord.TableDef()
dim aroTableDef() as BKS_ActiveRecord.TableDef
for each oTableInfo as BKS_ActiveRecord.P.TableInfo in GetContext.TableInfo_List
dim aro() as BKS_ActiveRecord.FieldDef
for each oFieldInfo as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
dim o as new BKS_ActiveRecord.FieldDef( _
oFieldInfo.sFieldName, oFieldInfo.enFieldType, _
oFieldInfo.bPrimaryKey, oFieldInfo.bForeignKey)
aro.Append(o)
next
dim oTableDef as new BKS_ActiveRecord.TableDef(oTableInfo.sTableName, oTableInfo.sPrimaryKey, aro)
aroTableDef.Append(oTableDef)
next
return aroTableDef
End Function
134217984
1
0
BKS_ActiveRecord.TableDef()
GetTableInfo
1
134217984
Function GetTableInfo(ty as Introspection.TypeInfo) As BKS_ActiveRecord.P.TableInfo
'check the info cache and return the mapping if it exists
dim oTableInfo as BKS_ActiveRecord.P.TableInfo = GetContext.TableInfo_Get(ty)
if oTableInfo<>nil then
return oTableInfo
end if
'try to map the class to a table by name
dim adp as BKS_ActiveRecord.DatabaseAdapter = GetContext.ConnectionAdapter_Get( ty )
if adp<>nil then
dim sTable as string
sTable = FindMatchingTable( adp, ty.Name )
if sTable<>"" then
Table adp.Db, sTable, ty
return GetContext.TableInfo_Get(ty)
end if
end if
'table not registered and not found by name
dim ex as RuntimeException
ex.Message = "Class does not have a table registered for it: " + ty.FullName
raise ex
End Function
134217984
33
0
ty as Introspection.TypeInfo
BKS_ActiveRecord.P.TableInfo
GetTypeConstructor
1
134217984
Function GetTypeConstructor(oTableInfo as BKS_ActiveRecord.P.TableInfo) As Introspection.ConstructorInfo
dim oConstructor as Introspection.ConstructorInfo
for each o as Introspection.ConstructorInfo in oTableInfo.tyClass.GetConstructors
dim aroParam() as Introspection.ParameterInfo = o.GetParameters
if aroParam.Ubound = 0 then
if aroParam(0).ParameterType.FullName = "RecordSet" then
oConstructor = o
exit for
end if
end if
next
return oConstructor
End Function
134217984
33
0
oTableInfo as BKS_ActiveRecord.P.TableInfo
Introspection.ConstructorInfo
MapFieldInfo
1
134217984
Function MapFieldInfo(tyClass as Introspection.TypeInfo, rs as RecordSet, aroFieldOpt() as FieldOpt) As BKS_ActiveRecord.P.FieldInfo
' static arsAllowPrefix() as string = Array("m_", "m_id","i","s","dtm","dt","b","d","v","pict")
dim sField as string = rs.Field("ColumnName").StringValue
'extract the field option if one was passed in for this field
dim oFieldOpt as FieldOpt
for each o as FieldOpt in aroFieldOpt
if o.FieldName=sField then
oFieldOpt = o
end if
next
if oFieldOpt<>nil and oFieldOpt.IsIgnored then
return nil 'ignore this field
end if
'Find the database field type
dim enFieldType as DbType
dim iFieldType as integer = rs.Field("FieldType").IntegerValue
select case iFieldType
case 2 'smallint
enFieldType = DbType.DSmallInt
case 3 'integer
enFieldType = DbType.DInteger
case 5 'text or varchar
enFieldType = DbType.DText
case 6 'float
enFieldType = DbType.DFloat
case 7 'double
enFieldType = DbType.DDouble
case 8 'date
enFieldType = DbType.DDate
case 9 'time
enFieldType = DbType.DTime
case 10 'timestamp
enFieldType = DbType.DTimestamp
case 12 'boolean
enFieldType = DbType.DBoolean
case 14 'binary
enFieldType = DbType.DBlob
case 19 'int64
enFieldType = DbType.DInt64
case else
break
end select
'Match the field to a property of the class.
' Properties are named with a prefix: <prefix>FieldName = FieldName
dim piFound as Introspection.PropertyInfo
piFound = FindFieldProperty(tyClass, sField)
if piFound=nil then
BKS_Debug.Assert( false, "No property for field: " + sField )
return nil
end if
dim oFieldInfo as new BKS_ActiveRecord.P.FieldInfo(sField, piFound)
oFieldInfo.enFieldType = enFieldType
if rs.Field("IsPrimary") then
oFieldInfo.bPrimaryKey = true
end if
if oFieldOpt=nil then
if sField.Left(2) = "id" or sField.Left(4) = "m_id" then
oFieldInfo.bForeignKey = true
end if
else
oFieldInfo.bForeignKey = oFieldOpt.IsForeignKey
end if
return oFieldInfo
End Function
134217984
33
0
tyClass as Introspection.TypeInfo, rs as RecordSet, aroFieldOpt() as FieldOpt
BKS_ActiveRecord.P.FieldInfo
MapTableInfo
1
134217984
Function MapTableInfo(db as Database, sTable as string, tyClass as Introspection.TypeInfo, aroFieldOpt() as FieldOpt) As BKS_ActiveRecord.P.TableInfo
'Map fields in the database to properties on the class and
'return a list of <field> : <propertyInfo> pairs.
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
' dim pi as Introspection.Propertyinfo
oTableInfo = new BKS_ActiveRecord.P.TableInfo
oTableInfo.tyClass = tyClass
dim rs as RecordSet = Db.FieldSchema(sTable)
BKS_Debug.Assert(rs.EOF=false, "Table not found: " + sTable)
do until rs.EOF
dim oFieldInfo as BKS_ActiveRecord.P.FieldInfo
oFieldInfo = MapFieldInfo(tyClass, rs, aroFieldOpt)
if oFieldInfo<>nil then
if oFieldInfo.bPrimaryKey then
oTableInfo.sPrimaryKey = oFieldInfo.sFieldName
oTableInfo.piPrimaryKey = oFieldInfo.piFieldProperty
end if
oTableInfo.aroField.Append(oFieldInfo)
end if
rs.MoveNext
loop
BKS_Debug.Assert(oTableInfo.sPrimaryKey<>"", "The table needs to have a primary key")
oTableInfo.sTableName = sTable
return oTableInfo
End Function
134217984
33
0
db as Database, sTable as string, tyClass as Introspection.TypeInfo, aroFieldOpt() as FieldOpt
BKS_ActiveRecord.P.TableInfo
MapTableInfo
1
134217984
Function MapTableInfo(tyClass as Introspection.TypeInfo, oTableDef as BKS_ActiveRecord.TableDef) As BKS_ActiveRecord.P.TableInfo
'Map fields in the database to properties on the class and
'return a list of <field> : <propertyInfo> pairs.
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
' dim pi as Introspection.Propertyinfo
oTableInfo = new BKS_ActiveRecord.P.TableInfo
oTableInfo.sTableName = oTableDef.sTableName
oTableInfo.sPrimaryKey = oTableDef.sPrimaryKey
oTableInfo.piPrimaryKey = FindFieldProperty(tyClass, oTableInfo.sPrimaryKey)
if oTableInfo.piPrimaryKey=nil then
break
end if
oTableInfo.tyClass = tyClass
for each oFieldDef as BKS_ActiveRecord.FieldDef in oTableDef.aroField
dim oFieldInfo as new BKS_ActiveRecord.P.FieldInfo( _
oFieldDef.sFieldName, _
FindFieldProperty(tyClass, oFieldDef.sFieldName))
oFieldInfo.bPrimaryKey = oFieldDef.IsPrimaryKey
oFieldInfo.bForeignKey = oFieldDef.IsForeignKey
oFieldInfo.enFieldType = oFieldDef.enFieldType
if oFieldInfo.piFieldProperty=nil then
break
end if
oTableInfo.aroField.Append(oFieldInfo)
next
return oTableInfo
End Function
134217984
33
0
tyClass as Introspection.TypeInfo, oTableDef as BKS_ActiveRecord.TableDef
BKS_ActiveRecord.P.TableInfo
Query
1
134217984
Function Query(ty as Introspection.TypeInfo, sCriteria as string = "", sOrder as string = "") As Variant()
dim adp as BKS_ActiveRecord.DatabaseAdapter
adp = GetContext.ConnectionAdapter_Get( ty )
if adp=nil then
raise new RuntimeException
end if
if not ty.IsSubclassOf( GetTypeInfo( Base ) ) then
dim ex as new RuntimeException
ex.Message = "Invalid type"
raise ex
end if
dim aro() as Variant
dim oTableInfo as BKS_ActiveRecord.P.TableInfo = GetTableInfo( ty )
dim oConstructor as Introspection.ConstructorInfo
oConstructor = GetTypeConstructor(oTableInfo)
dim rs as RecordSet
rs = adp.SelectList(oTableInfo.sTableName, sCriteria, sOrder)
do until rs.EOF
dim arv() as Variant
arv.Append(rs)
dim oBase as Base = oConstructor.Invoke(arv)
aro.Append( oBase )
rs.MoveNext
loop
return aro
End Function
134217984
1
0
ty as Introspection.TypeInfo, sCriteria as string = "", sOrder as string = ""
Variant()
QueryRecordset
1
134217984
Function QueryRecordset(ty as Introspection.TypeInfo, sql as String) As RecordSet
dim adp as BKS_ActiveRecord.DatabaseAdapter
adp = GetContext.ConnectionAdapter_Get( ty )
if adp=nil then
raise new RuntimeException
end if
if not ty.IsSubclassOf( GetTypeInfo( Base ) ) then
dim ex as new RuntimeException
ex.Message = "Invalid type"
raise ex
end if
return adp.SQLSelect(sql)
End Function
134217984
1
0
ty as Introspection.TypeInfo, sql as String
RecordSet
stringFromDbType
1
134217984
Function stringFromDbType(enDbType as BKS_ActiveRecord.DbType) As string
select case enDbType
case DbType.DInteger
return "DInteger"
case DbType.DSmallInt
return "DSmallInt"
case DbType.DDouble
return "DDouble"
case DbType.DDate
return "DDate"
case DbType.DTime
return "DTime"
case DbType.DTimestamp
return "DTimestamp"
case DbType.DBoolean
return "DBoolean"
case DbType.DBlob
return "DBlob"
case DbType.DText
return "DText"
case DbType.DInt64
return "DInt64"
case DbType.DFloat
return "DFloat"
case else
break
end select
End Function
134217984
0
0
enDbType as BKS_ActiveRecord.DbType
string
Table
1
134217984
Sub Table(db as Database, sTable as string, tyClass as Introspection.TypeInfo, ParamArray aroFieldOpt() as FieldOpt)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
'Record the mapping between the type and the table.
oTableInfo = BKS_ActiveRecord.MapTableInfo( db, sTable, tyClass, aroFieldOpt )
GetContext.TableInfo_Set(tyClass, oTableInfo)
End Sub
134217984
1
0
db as Database, sTable as string, tyClass as Introspection.TypeInfo, ParamArray aroFieldOpt() as FieldOpt
Table
1
134217984
Sub Table(tyClass as Introspection.TypeInfo, oTableDef as BKS_ActiveRecord.TableDef)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
'Record the mapping between the type and the table.
oTableInfo = BKS_ActiveRecord.MapTableInfo(tyClass, oTableDef)
GetContext.TableInfo_Set(tyClass, oTableInfo)
End Sub
134217984
1
0
tyClass as Introspection.TypeInfo, oTableDef as BKS_ActiveRecord.TableDef
csCtx
1
134217984
csCtx As CriticalSection
134217984
csCtx As CriticalSection
33
0
134217984
Set
End Set
134217984
Get
if m_csCtx=nil then
'Mutexes work on Mac and Linux but not Windows.
'CriticalSections work on Windows but not Mac.
'(Verified as of 2011 R4.1)
#if TargetWin32
m_csCtx = new CriticalSection
#else
m_csCtx = new Mutex("")
#endif
end if
return m_csCtx
End Get
m_csCtx
1
134217984
m_csCtx As CriticalSection
134217984
m_csCtx As CriticalSection
33
0
m_ctxDefault
1
134217984
m_ctxDefault As BKS_ActiveRecord.P.Context
134217984
m_ctxDefault As BKS_ActiveRecord.P.Context
33
0
m_dictContext
1
134217984
m_dictContext As Dictionary
134217984
m_dictContext As Dictionary
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
kDoubleNullSentinal
1
134217984
kDoubleNullSentinal
2
1.7E+308
1
134217984
DbType
1
Integer
DbType
1
134217984
DInteger
DSmallInt
DDouble
DDate
DTime
DTimestamp
DBoolean
DBlob
DText
DInt64
DFloat
P
618102619
0
2
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
Context
1072333800
1
1
0
ConnectionAdapter_Count
1
134217984
Function ConnectionAdapter_Count() As Integer
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
#pragma unused lck
if m_dictTypeDb=nil then
return 0
end if
return m_dictTypeDb.Count
End Function
134217984
0
0
Integer
ConnectionAdapter_Get
1
134217984
Function ConnectionAdapter_Get(ty as Introspection.TypeInfo) As DatabaseAdapter
'Start with this class and search the hash table in BKS_ActiveRecord for
'a database to use.
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
dim adp as BKS_ActiveRecord.DatabaseAdapter
if m_dictTypeDb=nil then
return nil
end if
'start with the given type and walk up the inheritance chain
'looking for a databsae connection
while ty<>nil
adp = m_dictTypeDb.Lookup(ty.FullName, nil )
if adp<>nil then
exit while
end if
ty = ty.BaseType
wend
return adp
End Function
134217984
0
0
ty as Introspection.TypeInfo
DatabaseAdapter
ConnectionAdapter_Remove
1
134217984
Sub ConnectionAdapter_Remove(ty as Introspection.TypeInfo)
'Disconnect a specific active record class from the database
if ty=nil then
raise new NilObjectException
end if
if not ty.IsSubclassOf( GetTypeInfo(BKS_ActiveRecord.Base) ) then
raise new ActiveRecordException("Invalid type. Expected a subclass of BKS_ActiveRecord.Base")
end if
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
if m_dictTypeDb<>nil then
m_dictTypeDb.Remove(ty.FullName)
end if
End Sub
134217984
0
0
ty as Introspection.TypeInfo
ConnectionAdapter_Set
1
134217984
Sub ConnectionAdapter_Set(ty as Introspection.TypeInfo, adp as BKS_ActiveRecord.DatabaseAdapter)
'Connect a specific active record class and all of its subclasses to a database
if ty=nil or adp=nil then
raise new NilObjectException
end if
if not ty.IsSubclassOf( GetTypeInfo(BKS_ActiveRecord.Base) ) then
raise new ActiveRecordException("Invalid type. Expected a subclass of BKS_ActiveRecord.Base")
end if
'add the database using the full type name of the type as a key
'Base will use this to find the appropriate adapter.
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
if m_dictTypeDb=nil then
m_dictTypeDb = new Dictionary
end if
m_dictTypeDb.Value(ty.FullName) = adp
End Sub
134217984
0
0
ty as Introspection.TypeInfo, adp as BKS_ActiveRecord.DatabaseAdapter
Constructor
1
134217984
Sub Constructor()
'Mutexes work on Mac and Linux but not Windows.
'CriticalSections work on Windows but not Mac.
'(Verified as of 2011 R4.1)
#if TargetWin32
m_cs = new CriticalSection
#else
m_cs = new Mutex("")
#endif
End Sub
134217984
0
0
TableInfo_Get
1
134217984
Function TableInfo_Get(ty as Introspection.TypeInfo) As BKS_ActiveRecord.P.TableInfo
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
'check the info cache and return the mapping if it exists
if m_dictTypeTableInfo=nil then
return nil
end if
return m_dictTypeTableInfo.Lookup(ty.FullName, nil)
End Function
134217984
0
0
ty as Introspection.TypeInfo
BKS_ActiveRecord.P.TableInfo
TableInfo_List
1
134217984
Function TableInfo_List() As BKS_ActiveRecord.P.TableInfo()
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
'check the info cache and return the mapping if it exists
dim aro() as BKS_ActiveRecord.P.TableInfo
if m_dictTypeTableInfo=nil then
return aro
end if
for each sKey as string in m_dictTypeTableInfo.Keys
dim o as BKS_ActiveRecord.P.TableInfo
o = m_dictTypeTableInfo.Value(sKey)
aro.Append(o)
next
return aro
End Function
134217984
0
0
BKS_ActiveRecord.P.TableInfo()
TableInfo_Set
1
134217984
Sub TableInfo_Set(ty as Introspection.TypeInfo, oTableInfo as BKS_ActiveRecord.P.TableInfo)
dim lck as new BKS_ActiveRecord.P.ScopedLock(m_cs)
if m_dictTypeTableInfo=nil then
m_dictTypeTableInfo = new Dictionary
end if
m_dictTypeTableInfo.Value(ty.FullName) = oTableInfo
End Sub
134217984
0
0
ty as Introspection.TypeInfo, oTableInfo as BKS_ActiveRecord.P.TableInfo
m_cs
1
134217984
m_cs As CriticalSection
134217984
m_cs As CriticalSection
33
0
m_dictTypeDb
1
134217984
m_dictTypeDb As Dictionary
134217984
m_dictTypeDb As Dictionary
33
0
m_dictTypeTableInfo
1
134217984
m_dictTypeTableInfo As Dictionary
134217984
m_dictTypeTableInfo As Dictionary
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
ScopedLock
1072333800
1
1
0
Constructor
1
134217984
Sub Constructor(cs as CriticalSection)
if cs is nil then
raise new ActiveRecordException("Lock is set to Nil")
end if
m_cs = cs
m_cs.Enter
End Sub
134217984
0
0
cs as CriticalSection
Destructor
1
134217984
Sub Destructor()
m_cs.Leave
End Sub
134217984
0
0
Overview
1
134217984
Overview
The Constructor for this class accepts a CriticalSection and immediately calls the Enter method.
The Destructor calls Leave.
You can use this class to hold a lock for the duration of the object's life. For example, if you
create it at the beginning of a method than the lock will be held until the method is complete.
The advantage of this is that the object will be destroyed regardless of how the method ends,
via a return statement or an exception or whatever.
0
m_cs
1
134217984
m_cs As CriticalSection
134217984
m_cs As CriticalSection
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
FieldInfo
1072333800
1
1
0
Constructor
1
134217984
Sub Constructor(sField as string, pi as Introspection.PropertyInfo)
self.sFieldName = sField
self.piFieldProperty = pi
End Sub
134217984
0
0
sField as string, pi as Introspection.PropertyInfo
IsKey
1
134217984
Function IsKey() As Boolean
return (bForeignKey or bPrimaryKey)
End Function
134217984
0
0
Boolean
bForeignKey
1
134217984
bForeignKey As boolean
134217984
bForeignKey As boolean
0
0
bPrimaryKey
1
134217984
bPrimaryKey As boolean
134217984
bPrimaryKey As boolean
0
0
enFieldType
1
134217984
enFieldType As BKS_ActiveRecord.DbType
134217984
enFieldType As BKS_ActiveRecord.DbType
0
0
piFieldProperty
1
134217984
piFieldProperty As Introspection.PropertyInfo
134217984
piFieldProperty As Introspection.PropertyInfo
0
0
sFieldName
1
134217984
sFieldName As String
134217984
sFieldName As String
0
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
bForeignKey
Behavior
boolean
bPrimaryKey
Behavior
boolean
sFieldName
Behavior
String
MultiLineEditor
TableInfo
1072333800
1
1
0
aroField()
1
134217984
aroField() As BKS_ActiveRecord.P.FieldInfo
134217984
aroField() As BKS_ActiveRecord.P.FieldInfo
0
0
piPrimaryKey
1
134217984
piPrimaryKey As Introspection.PropertyInfo
134217984
piPrimaryKey As Introspection.PropertyInfo
0
0
sPrimaryKey
1
134217984
sPrimaryKey As string
134217984
sPrimaryKey As string
0
0
sTableName
1
134217984
sTableName As string
134217984
sTableName As string
0
0
tyClass
1
134217984
tyClass As Introspection.TypeInfo
134217984
tyClass As Introspection.TypeInfo
0
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
sPrimaryKey
Behavior
string
MultiLineEditor
sTableName
Behavior
string
MultiLineEditor
Base
618102619
1
1
0
Clone
1
134217984
Function Clone() As Variant
dim ty as Introspection.TypeInfo = Introspection.GetType( self )
dim oTableInfo as BKS_ActiveRecord.P.TableInfo = GetTableInfo( ty )
dim oSuperConstructor as Introspection.ConstructorInfo
dim oCopyConstructor as Introspection.ConstructorInfo
dim oDefaultConstructor as Introspection.ConstructorInfo
'Look for three types of constructors (lowest priority first):
' (1) Default constructors (i.e. no parameters)
' (2) Constructors that take a parameter of which self's class is a subtype
' (3) Constructors that take a parameter which matches this class type
'
'For example if there's a class call User derived like this:
' BKS_ActiveRecord.Base -> clsActiveRecord -> User
'Then the program will look for constructors like the following:
' (1) Constructor()
' (2) Constructor(BKS_ActiveRecord.Base)
' (3) Constructor(clsActiveRecord)
' (4) Constructor(User)
'If it finds more than one it will use the one that's farthest down the list.
'The point of this is to give users a way of customizing how their objects
'get cloned, all they need to do is add the appropriate constructor
for each o as Introspection.ConstructorInfo in ty.GetConstructors
dim aroParam() as Introspection.ParameterInfo
aroParam = o.GetParameters
if aroParam.Ubound < 0 then
'default constructor
oDefaultConstructor = o
elseif aroParam.Ubound=0 and _
ty.IsSubclassOf( aroParam(0).ParameterType ) then
'copy constructor that takes a super class
if oSuperConstructor=nil then
oSuperConstructor = o
else
dim aroCurrentParam() as Introspection.ParameterInfo
aroCurrentParam = oSuperConstructor.GetParameters
if aroParam(0).ParameterType.IsSubclassOf( aroCurrentParam(0).ParameterType ) then
'if the parameter type of this constructor is derived from the parameter type
'of the last one, then this one should have priority
oSuperConstructor = o
end if
end if
elseif aroParam.Ubound=0 and _
aroParam(0).ParameterType is ty then
'copy constructor that takes this class
oCopyConstructor = o
exit for
end if
next
'Create an instance using the constructor we found
dim oClone as Base
dim vSelf as Variant = self
if oCopyConstructor<>nil then
oClone = oCopyConstructor.Invoke( Array(vSelf) )
elseif oSuperConstructor<>nil then
oClone = oSuperConstructor.Invoke( Array(vSelf) )
elseif oDefaultConstructor<>nil then
oClone = oDefaultConstructor.Invoke
else
'we should always be able to find a default constructor
BKS_Debug.Assert( false, _
"Class does not have a default constructor" )
return nil
end if
'Copy the properties into the new instance
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
dim pi as Introspection.PropertyInfo = oField.piFieldProperty
if not (pi is oTableInfo.piPrimaryKey) then
'copy every saved property except the primary key
pi.Value(oClone) = pi.Value(self)
end if
next
return oClone
End Function
134217984
0
0
Variant
Constructor
1
134217984
Sub Constructor()
'Empty
End Sub
134217984
0
0
Constructor
1
134217984
Sub Constructor(rs as RecordSet)
ReadRecord(rs)
End Sub
134217984
0
0
rs as RecordSet
Db
1
134217984
Function Db() As Database
return GetDatabaseAdapter.Db
End Function
134217984
0
0
Database
Delete
1
134217984
Sub Delete()
if self.IsNew then
return
end if
dim adp as BKS_ActiveRecord.DatabaseAdapter = GetDatabaseAdapter
adp.BeginTransaction
BeforeDelete
adp.DeleteRecord( self )
AfterDelete
adp.CommitTransaction
catch ex as RuntimeException
adp.RollbackTransaction
raise ex
End Sub
134217984
0
0
GetDatabaseAdapter
1
134217984
Function GetDatabaseAdapter() As DatabaseAdapter
return GetContext.ConnectionAdapter_Get(Introspection.GetType(self))
End Function
134217984
1
0
DatabaseAdapter
GetTableName
1
134217984
Function GetTableName() As String
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(self) )
Return oTableInfo.sTableName
End Function
134217984
0
0
String
ID
1
134217984
Function ID() As Int64
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(self) )
return oTableInfo.piPrimaryKey.Value(self)
End Function
134217984
0
0
Int64
ID
1
134217984
Sub ID(assigns id as Int64)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(self) )
oTableInfo.piPrimaryKey.Value(self) = id
End Sub
134217984
0
0
assigns id as Int64
IsModified
1
134217984
Function IsModified() As boolean
return IsRecordModified
End Function
134217984
0
0
boolean
IsNew
1
134217984
Function IsNew() As boolean
return ID<=0
End Function
134217984
0
0
boolean
IsRecordModified
1
134217984
Function IsRecordModified() As boolean
dim bModified as boolean
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(self) )
for each oFieldInfo as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
dim pi as Introspection.PropertyInfo = oFieldInfo.piFieldProperty
dim vProperty as Variant = pi.Value( self )
dim vSavedValue as Variant
if m_dictSavedPropertyValue<>nil then
vSavedValue = m_dictSavedPropertyValue.Lookup(pi.Name, nil)
end if
'cast the saved value so the type matches the property type
select case vProperty.Type
case Variant.TypeInteger
vSavedValue = vSavedValue.IntegerValue
case Variant.TypeLong
vSavedValue = vSavedValue.Int64Value
case Variant.TypeSingle
vSavedValue = vSavedValue.SingleValue
case Variant.TypeDouble
vSavedValue = vSavedValue.DoubleValue
case Variant.TypeCurrency
vSavedValue = vSavedValue.CurrencyValue
case Variant.TypeString
vSavedValue = vSavedValue.StringValue
case Variant.TypeBoolean
vSavedValue = vSavedValue.BooleanValue
case Variant.TypeColor
vSavedValue = vSavedValue.ColorValue
end select
if vProperty.Type=Variant.TypeString then
'do a case sensitive compare for strings
if StrComp(vProperty.StringValue, vSavedValue.StringValue, 0)<>0 then
bModified = true
exit for
end if
else
'use the default comparison operator for everything else
if vProperty<>vSavedValue then
bModified = true
exit for
end if
end if
next
return bModified
End Function
134217984
33
0
boolean
Load
1
134217984
Function Load(iRecordID as Int64) As boolean
'Load record with the given ID. Return true if the record is found.
dim rs as RecordSet
rs = GetDatabaseAdapter.SelectRecord( self, iRecordID )
if rs.EOF then
return false
end if
ReadRecord( rs )
return true
End Function
134217984
0
0
iRecordID as Int64
boolean
Operator_Compare
1
134217984
Function Operator_Compare(rhs as BKS_ActiveRecord.Base) As integer
if rhs is nil then
return 1
end if
'the two records are equal if they are actually the same object or
'if they're the same type and have the same ID (except if they're new).
if rhs is self or _
( Introspection.GetType(self)=Introspection.GetType(rhs) and _
rhs.ID=ID and not IsNew ) then
return 0
end if
'this ordering is arbitrary. Equality is really the case we're after.
if ID<rhs.ID then
return -1
else
return 1
end if
End Function
134217984
0
0
rhs as BKS_ActiveRecord.Base
integer
ReadRecord
1
134217984
Sub ReadRecord(rs as RecordSet)
'Read current record out of rs into properties
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(self) )
ReadRecord( rs, oTableInfo, m_dictSavedPropertyValue )
End Sub
134217984
1
0
rs as RecordSet
ReadRecord
1
134217984
Sub ReadRecord(rs as RecordSet, oTableInfo as BKS_ActiveRecord.P.TableInfo, byref dictSavedPropertyValue as Dictionary)
'Read current record out of rs into properties
dim dictFieldValue as new Dictionary
for each oFieldInfo as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
dim oField as DatabaseField = rs.Field( oFieldInfo.sFieldName )
dim pi as Introspection.PropertyInfo = oFieldInfo.piFieldProperty
if oField is nil then
BKS_Debug.Assert( false, _
"A field needed to populate this record wasn't provided: " + _
oFieldInfo.sFieldName )
continue
end if
dim vProperty as Variant
if pi.PropertyType.Name = "Double" then
if oField.Value=nil then
vProperty = BKS_ActiveRecord.kDoubleNullSentinal
else
vProperty = oField.Value
end if
elseif pi.PropertyType.Name = "String" then
dim s as string = oField.StringValue
if Encoding(s) is nil then
s = DefineEncoding(s, Encodings.UTF8)
end if
vProperty = s
elseif pi.PropertyType.IsPrimitive then
vProperty = oField.Value
elseif pi.PropertyType = GetTypeInfo(Date) then
dim v as Variant = oField.Value
if v = nil or v = "" then
vProperty=nil
else
dim dt as new Date
dim dOffset as double = dt.GMTOffset
dt.GMTOffset = 0
dt.SQLDateTime = v.StringValue
dt.GMTOffset = dOffset
vProperty=dt
end if
else
vProperty= oField.Value
end if
pi.Value(self) = vProperty
dictFieldValue.Value(pi.Name) = vProperty
next
dictSavedPropertyValue = dictFieldValue
End Sub
134217984
33
0
rs as RecordSet, oTableInfo as BKS_ActiveRecord.P.TableInfo, byref dictSavedPropertyValue as Dictionary
Save
1
134217984
Sub Save()
dim adp as BKS_ActiveRecord.DatabaseAdapter = GetDatabaseAdapter
adp.BeginTransaction
BeforeSave
if IsNew then
BeforeCreate
ID = adp.InsertRecord( self, m_dictSavedPropertyValue )
AfterSave
AfterCreate
else
BeforeUpdate
if IsRecordModified then
adp.UpdateRecord(self, m_dictSavedPropertyValue)
end if
AfterSave
AfterUpdate
end if
adp.CommitTransaction
exception ex as RuntimeException
adp.RollbackTransaction
raise ex
End Sub
134217984
0
0
Validate
1
134217984
Function Validate(oError as BKS_ActiveRecord.ValidationErrors) As boolean
RaiseEvent Validate( oError )
return ( oError.ErrorCount = 0 )
End Function
134217984
0
0
oError as BKS_ActiveRecord.ValidationErrors
boolean
AfterCreate
134217984
33
0
AfterDelete
134217984
33
0
AfterSave
134217984
33
0
AfterUpdate
134217984
33
0
BeforeCreate
134217984
33
0
BeforeDelete
134217984
33
0
BeforeSave
134217984
33
0
BeforeUpdate
134217984
33
0
Validate
134217984
33
0
oErrors as BKS_ActiveRecord.ValidationErrors
m_dictSavedPropertyValue
1
134217984
m_dictSavedPropertyValue As Dictionary
134217984
m_dictSavedPropertyValue As Dictionary
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
BaseList
618102619
1
1
0
Constructor
1
134217984
Sub Constructor(ty as Introspection.TypeInfo, sCriteria as string = "", sOrder as string = "")
m_tyElement = ty
if not ty.IsSubclassOf(GetTypeInfo(BKS_ActiveRecord.Base)) then
dim ex as new RuntimeException
ex.Message = "Invalid type"
raise ex
end if
dim adp as BKS_ActiveRecord.DatabaseAdapter
adp = GetContext.ConnectionAdapter_Get( ty )
if adp=nil then
raise new RuntimeException
end if
dim rs as RecordSet
' dim aro() as Variant
dim oTableInfo as BKS_ActiveRecord.P.TableInfo = GetTableInfo( ty )
dim sql as string = "SELECT " + oTableInfo.sPrimaryKey + _
" FROM " + oTableInfo.sTableName
if sCriteria<>"" then
sql = sql + " WHERE " + sCriteria
end if
if sOrder<>"" then
sql = sql + " ORDER BY " + sOrder
end if
dim arid() as Int64
rs = adp.SQLSelect(sql)
dim oField as DatabaseField = rs.IdxField(1)
do until rs.EOF
arid.Append(oField.Int64Value)
rs.MoveNext
loop
m_arid = arid
redim m_aro(m_arid.Ubound)
End Sub
134217984
0
0
ty as Introspection.TypeInfo, sCriteria as string = "", sOrder as string = ""
ElementType
1
134217984
Function ElementType() As Introspection.TypeInfo
return m_tyElement
End Function
134217984
0
0
Introspection.TypeInfo
Item
1
134217984
Function Item(index as integer) As BKS_ActiveRecord.Base
if m_aro(index)<>nil then
return m_aro(index)
end if
const kBatchSize = 50
LoadRange(index, Min(index+kBatchSize-1, m_arid.Ubound))
return m_aro(index)
End Function
134217984
0
0
index as integer
BKS_ActiveRecord.Base
LoadRange
1
134217984
Sub LoadRange(startIndex as integer, endIndex as integer)
dim sPrimaryKey as string = GetTableInfo(m_tyElement).sPrimaryKey
dim aridix() as integer
dim arid() as Int64
for i as integer = startIndex to endIndex
aridix.Append(i)
arid.Append(m_arid(i))
next
arid.SortWith(aridix)
dim arsId() as string
for i as integer = 0 to arid.Ubound
arsId.Append(Str(arid(i)))
next
dim sCriteria as string
sCriteria = sPrimaryKey + " IN (" + Join(arsId, ",") + ")"
dim arv() as Variant = BKS_ActiveRecord.Query(m_tyElement, sCriteria, sPrimaryKey)
for i as integer = 0 to arv.Ubound
dim oRecord as BKS_ActiveRecord.Base = arv(i)
if oRecord.ID = arid(i) then
m_aro(aridix(i)) = oRecord
else
break
end if
next
End Sub
134217984
33
0
startIndex as integer, endIndex as integer
Operator_Subscript
1
134217984
Function Operator_Subscript(index as Integer) As BKS_ActiveRecord.Base
return Item(index)
End Function
134217984
0
0
index as Integer
BKS_ActiveRecord.Base
Ubound
1
134217984
Function Ubound() As integer
return m_arid.Ubound
End Function
134217984
0
0
integer
m_arid()
1
134217984
m_arid() As Int64
134217984
m_arid() As Int64
33
0
m_aro()
1
134217984
m_aro() As BKS_ActiveRecord.Base
134217984
m_aro() As BKS_ActiveRecord.Base
33
0
m_tyElement
1
134217984
m_tyElement As Introspection.TypeInfo
134217984
m_tyElement As Introspection.TypeInfo
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
FieldDef
618102619
1
1
0
Constructor
1
134217984
Sub Constructor(sFieldName as string, enFieldType as BKS_ActiveRecord.DbType, bPrimaryKey as boolean, bForeignKey as boolean)
self.sFieldName = sFieldName
self.enFieldType = enFieldType
self.IsPrimaryKey = bPrimaryKey
self.IsForeignKey = bForeignKey
End Sub
134217984
0
0
sFieldName as string, enFieldType as BKS_ActiveRecord.DbType, bPrimaryKey as boolean, bForeignKey as boolean
enFieldType
1
134217984
enFieldType As BKS_ActiveRecord.DbType
134217984
enFieldType As BKS_ActiveRecord.DbType
0
0
IsForeignKey
1
134217984
IsForeignKey As boolean
134217984
IsForeignKey As boolean
0
0
IsPrimaryKey
1
134217984
IsPrimaryKey As boolean
134217984
IsPrimaryKey As boolean
0
0
sFieldName
1
134217984
sFieldName As string
134217984
sFieldName As string
0
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
IsForeignKey
Behavior
boolean
IsPrimaryKey
Behavior
boolean
sFieldName
Behavior
string
MultiLineEditor
TableDef
618102619
1
1
0
Constructor
1
134217984
Sub Constructor(sTableName as string, sPrimaryKey as string, aroField() as BKS_ActiveRecord.FieldDef)
self.sTableName = sTableName
self.sPrimaryKey = sPrimaryKey
self.aroField = aroField
End Sub
134217984
0
0
sTableName as string, sPrimaryKey as string, aroField() as BKS_ActiveRecord.FieldDef
aroField()
1
134217984
aroField() As BKS_ActiveRecord.FieldDef
134217984
aroField() As BKS_ActiveRecord.FieldDef
0
0
sPrimaryKey
1
134217984
sPrimaryKey As string
134217984
sPrimaryKey As string
0
0
sTableName
1
134217984
sTableName As string
134217984
sTableName As string
0
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
sPrimaryKey
Behavior
string
MultiLineEditor
sTableName
Behavior
string
MultiLineEditor
FieldOpt
618102619
1
1
0
Constructor
1
134217984
Sub Constructor(sFieldName as string)
m_sFieldName = sFieldName
End Sub
134217984
0
0
sFieldName as string
FieldName
1
134217984
Function FieldName() As String
return m_sFieldName
End Function
134217984
0
0
String
ForeignKey
1
134217984
Function ForeignKey() As BKS_ActiveRecord.FieldOpt
m_bForeignKey = true
return self
End Function
134217984
0
0
BKS_ActiveRecord.FieldOpt
Ignored
1
134217984
Function Ignored() As BKS_ActiveRecord.FieldOpt
m_bIgnored = true
return self
End Function
134217984
0
0
BKS_ActiveRecord.FieldOpt
IsForeignKey
1
134217984
Function IsForeignKey() As Boolean
return m_bForeignKey
End Function
134217984
0
0
Boolean
IsIgnored
1
134217984
Function IsIgnored() As Boolean
return m_bIgnored
End Function
134217984
0
0
Boolean
m_bForeignKey
1
134217984
m_bForeignKey As boolean
134217984
m_bForeignKey As boolean
33
0
m_bIgnored
1
134217984
m_bIgnored As Boolean
134217984
m_bIgnored As Boolean
33
0
m_sFieldName
1
134217984
m_sFieldName As string
134217984
m_sFieldName As string
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
ValidationErrors
618102619
1
1
0
Append
1
134217984
Sub Append(sMessage as string)
m_arsError.Append( sMessage )
End Sub
134217984
0
0
sMessage as string
Clear
1
134217984
Sub Clear()
redim m_arsError( -1 )
End Sub
134217984
0
0
Error
1
134217984
Function Error(index as Integer) As string
return m_arsError(index)
End Function
134217984
0
0
index as Integer
string
ErrorCount
1
134217984
Function ErrorCount() As integer
return m_arsError.Ubound + 1
End Function
134217984
0
0
integer
m_arsError()
1
134217984
m_arsError() As string
134217984
m_arsError() As string
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
MSSQLServerAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
Constructor
1
134217984
Sub Constructor(oDb as Object)
'If you are not connecting to MSSQLServer and do not have the MSSQLServer plugin delete this class (MSSQLServerAdapter)
#if BKS_ActiveRecordConfig.kIncludeMSSQLServer
dim db as MSSQLServerDatabase = MSSQLServerDatabase(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
raise new UnsupportedOperationException
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
dim rs as RecordSet
rs = SQLSelect("SELECT @@IDENTITY;")
return rs.IdxField(1).Int64Value
End Function
134217984
1
0
Int64
Note
1
134217984
Note
If you are not connecting to MSSQLServer and do not have the MSSQLServer plugin delete this class (MSSQLServerAdapter)
0
m_db
1
134217984
m_db As Database
134217984
m_db As Database
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
MySQLCommunityServerAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
Constructor
1
134217984
Sub Constructor(oDb as Object)
'If you are not connecting to MySQL and do not have the MySQLCommunityPlugin plugin delete this class (MySQLCommunityServerAdapter)
#if BKS_ActiveRecordConfig.kIncludeMySQLCommunityServer
dim db as MySQLCommunityServer = MySQLCommunityServer(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
raise new UnsupportedOperationException
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
#if BKS_ActiveRecordConfig.kIncludeMySQLCommunityServer
return MySQLCommunityServer(m_db).GetInsertID
#else
raise new UnsupportedOperationException
#endif
End Function
134217984
1
0
Int64
Note
1
134217984
Note
If you are not connecting to MySQL and
do not have the MySQLCommunityPlugin plugin delete this class (MySQLCommunityServerAdapter)
0
m_db
1
134217984
m_db As Database
134217984
m_db As Database
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
PostgreSQLDatabaseAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
BindValues
1
134217984
Function BindValues(stmt as PreparedSQLStatement, oRecord as BKS_ActiveRecord.Base, aroField() as BKS_ActiveRecord.P.FieldInfo) As Dictionary
dim dictFieldValue as new Dictionary
for i as integer = 0 to aroField.Ubound
dim oField as BKS_ActiveRecord.P.FieldInfo = aroField(i)
dim pi as Introspection.PropertyInfo = oField.piFieldProperty
dim v as Variant = pi.Value(oRecord)
stmt.Bind(i, v)
dictFieldValue.Value(pi.Name) = v
next
return dictFieldValue
End Function
134217984
33
0
stmt as PreparedSQLStatement, oRecord as BKS_ActiveRecord.Base, aroField() as BKS_ActiveRecord.P.FieldInfo
Dictionary
Constructor
1
134217984
Sub Constructor(oDb as Object)
'If you are not connecting to PostgreSQL and do not have the PostgreSQLPlugin plugin delete this class (PostgreSQLDatabaseAdapter)
#if BKS_ActiveRecordConfig.kIncludePostgreSQLDatabase
dim db as PostgreSQLDatabase = PostgreSQLDatabase(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
raise new UnsupportedOperationException
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
dim rs as RecordSet
rs = SQLSelect("SELECT LASTVAL();")
return rs.IdxField(1).Int64Value
End Function
134217984
1
0
Int64
InsertRecord
1
134217984
Function InsertRecord(oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary) As Int64
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
dim dictFieldValue as Dictionary
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
dim arsField() as string
dim arsPlaceholder() as string
dim aroField() as BKS_ActiveRecord.P.FieldInfo
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
if oField.bPrimaryKey then
continue
end if
arsField.Append(oField.sFieldName)
arsPlaceholder.Append("$" + str(arsPlaceholder.Ubound + 2) )
aroField.Append(oField)
next
dim sql as string
sql = "INSERT INTO " + oTableInfo.sTableName
sql = sql + "(" + Join(arsField, ",") + ")"
sql = sql + " VALUES "
sql = sql + "(" + Join(arsPlaceholder, ",") + ")"
dim stmt as PreparedSQLStatement
stmt = db.Prepare(sql)
dictFieldValue = BindValues(stmt, oRecord, aroField)
stmt.SQLExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
dim iRecordID as Int64 = GetLastInsertID
dictFieldValue.Value( oTableInfo.piPrimaryKey.Name ) = iRecordID
'store the newly saved property values
dictSavedPropertyValue = dictFieldValue
return iRecordID
End Function
134217984
0
0
oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary
Int64
UpdateRecord
1
134217984
Sub UpdateRecord(oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
dim dictFieldValue as Dictionary
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
dim arsField() as string
dim aroField() as BKS_ActiveRecord.P.FieldInfo
dim oPrimaryKeyField as BKS_ActiveRecord.P.FieldInfo
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
if oField.bPrimaryKey then
oPrimaryKeyField = oField
continue
end if
arsField.Append(oField.sFieldName + "=$" + str(arsField.ubound + 2) )
aroField.Append(oField)
next
dim sql as string
sql = "UPDATE " + oTableInfo.sTableName + " SET "
sql = sql + Join(arsField, ",")
sql = sql + " WHERE " + oTableInfo.sPrimaryKey + "=$" + str(arsField.ubound + 2)
dim stmt as PreparedSQLStatement
stmt = db.Prepare(sql)
aroField.Append(oPrimaryKeyField)
dictFieldValue = BindValues(stmt, oRecord, aroField)
stmt.SQLExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
'store the newly saved property values
dictSavedPropertyValue = dictFieldValue
End Sub
134217984
0
0
oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary
Note
1
134217984
Note
If you are not connecting to PostgreSQL and do not have the PostgreSQLPlugin plugin delete this class (PostgreSQLDatabaseAdapter)
0
m_db
1
134217984
m_db As Database
134217984
m_db As Database
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
REALSQLDatabaseAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
BeginTransaction
1
134217984
Sub BeginTransaction()
if m_iTransactionCt=0 and not m_db.AutoCommit then
try
m_db.Commit 'commit the auto transaction
catch ex as RuntimeException
'ignore this one
end try
end if
if m_iTransactionCt=0 then
SQLExecute( "BEGIN" )
end if
m_iTransactionCt = m_iTransactionCt + 1
End Sub
134217984
0
0
CommitTransaction
1
134217984
Sub CommitTransaction()
m_iTransactionCt = m_iTransactionCt - 1
if m_iTransactionCt=0 then
Db.Commit
if db.Error then
dim ex as new BKS_ActiveRecord.DatabaseException(db, "Commit")
db.Rollback
raise ex
end if
end if
End Sub
134217984
0
0
Constructor
1
134217984
Sub Constructor(oDb as Object)
#if BKS_ActiveRecordConfig.kIncludeREALSQLDatabase
dim db as REALSQLDatabase = REALSQLDatabase(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
raise new UnsupportedOperationException
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
return m_db.LastRowID
End Function
134217984
1
0
Int64
RollbackTransaction
1
134217984
Sub RollbackTransaction()
m_iTransactionCt = m_iTransactionCt - 1
if m_iTransactionCt=0 then
Db.Rollback
end if
End Sub
134217984
0
0
m_db
1
134217984
m_db As REALSQLDatabase
134217984
m_db As REALSQLDatabase
33
0
m_iTransactionCt
1
134217984
m_iTransactionCt As Integer
134217984
m_iTransactionCt As Integer
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
SQLiteDatabaseAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
BeginTransaction
1
134217984
Sub BeginTransaction()
if m_iTransactionCt=0 then
try
m_db.Commit 'commit the auto transaction
catch ex as RuntimeException
'ignore this one
end try
end if
if m_iTransactionCt=0 then
SQLExecute( "BEGIN" )
end if
m_iTransactionCt = m_iTransactionCt + 1
End Sub
134217984
0
0
CommitTransaction
1
134217984
Sub CommitTransaction()
m_iTransactionCt = m_iTransactionCt - 1
if m_iTransactionCt=0 then
Db.Commit
if db.Error then
dim ex as new BKS_ActiveRecord.DatabaseException(db, "Commit")
db.Rollback
raise ex
end if
end if
End Sub
134217984
0
0
Constructor
1
134217984
Sub Constructor(oDb as Object)
#if BKS_ActiveRecordConfig.kIncludeSQLiteDatabase and RBVersion>=2013
dim db as SQLiteDatabase = SQLiteDatabase(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
raise new UnsupportedOperationException
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
#if BKS_ActiveRecordConfig.kIncludeSQLiteDatabase and RBVersion>=2013
return SQLiteDatabase(m_db).LastRowID
#else
raise new UnsupportedOperationException
#endif
End Function
134217984
1
0
Int64
RollbackTransaction
1
134217984
Sub RollbackTransaction()
m_iTransactionCt = m_iTransactionCt - 1
if m_iTransactionCt=0 then
Db.Rollback
end if
End Sub
134217984
0
0
m_db
1
134217984
m_db As Database
134217984
m_db As Database
33
0
m_iTransactionCt
1
134217984
m_iTransactionCt As Integer
134217984
m_iTransactionCt As Integer
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
DatabaseAdapter
618102619
1
1
0
BeginTransaction
1
134217984
Sub BeginTransaction()
SQLExecute( "BEGIN" )
End Sub
134217984
0
0
BindId
1
134217984
Sub BindId(stmt as PreparedSQLStatement, i as integer, id as Int64)
#if BKS_ActiveRecordConfig.kIncludeREALSQLDatabase
if db isa REALSQLDatabase then
stmt.BindType(i, REALSQLPreparedStatement.SQLITE_INT64)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeSQLiteDatabase and RBVersion>=2013
if db isa SQLiteDatabase then
stmt.BindType(i, SQLitePreparedStatement.SQLITE_INT64)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeMySQLCommunityServer
if db isa MySQLCommunityServer then
stmt.BindType(i, MySQLPreparedStatement.MYSQL_TYPE_LONGLONG)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludePostgreSQLDatabase
if db isa PostgreSQLDatabase then
//PostgreSQL doesn't do binding the same way
end
#endif
#if BKS_ActiveRecordConfig.kIncludeMSSQLServer
if db isa MSSQLServerDatabase then
stmt.BindType(i, MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_INT)
end
#endif
#if BKS_ActiveRecordConfig.kIncludeOracle
if db isa OracleDatabase then
stmt.BindType(i, OracleSQLPreparedStatement.SQL_TYPE_INTEGER)
end
#endif
#If BKS_ActiveRecordConfig.kIncludeCubeDatabase
if db isa CubeSQLServer then
break
end
#endif
stmt.Bind(i, id)
End Sub
134217984
33
0
stmt as PreparedSQLStatement, i as integer, id as Int64
BindNull
1
134217984
Sub BindNull(stmt as PreparedSQLStatement, i as integer)
#if BKS_ActiveRecordConfig.kIncludeMySQLCommunityServer
if db isa MySQLCommunityServer then
stmt.BindType(i, MySQLPreparedStatement.MYSQL_TYPE_NULL)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeREALSQLDatabase
if db isa REALSQLDatabase then
stmt.BindType(i, REALSQLPreparedStatement.SQLITE_NULL)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludeSQLiteDatabase and RBVersion>=2013
if db isa SQLiteDatabase then
stmt.BindType(i, SQLitePreparedStatement.SQLITE_NULL)
end if
#endif
#if BKS_ActiveRecordConfig.kIncludePostgreSQLDatabase
if db isa PostgreSQLDatabase then
//PostgreSQL doesn't do binding the same way
end
#endif
#if BKS_ActiveRecordConfig.kIncludeMSSQLServer
if db isa MSSQLServerDatabase then
stmt.BindType(i, MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_NULL)
end
#endif
#if BKS_ActiveRecordConfig.kIncludeOracle
if db isa OracleDatabase then
stmt.BindType(i, OracleSQLPreparedStatement.SQL_TYPE_NULL)
end
#endif
End Sub
134217984
33
0
stmt as PreparedSQLStatement, i as integer
BindValues
1
134217984
Function BindValues(stmt as PreparedSQLStatement, oRecord as BKS_ActiveRecord.Base, aroField() as BKS_ActiveRecord.P.FieldInfo) As Dictionary
dim dictFieldValue as new Dictionary
for i as integer = 0 to aroField.Ubound
dim oField as BKS_ActiveRecord.P.FieldInfo = aroField(i)
dim pi as Introspection.PropertyInfo = oField.piFieldProperty
dim v as Variant = pi.Value(oRecord)
dim iDbType as integer
select case db
case nil
'empty. This just let's it compile if someone turns off all the constants
#if BKS_ActiveRecordConfig.kIncludeREALSQLDatabase
case isa REALSQLDatabase
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = REALSQLPreparedStatement.SQLITE_INTEGER
case DbType.DSmallInt
iDbType = REALSQLPreparedStatement.SQLITE_INTEGER
case DbType.DDouble
iDbType = REALSQLPreparedStatement.SQLITE_DOUBLE
case DbType.DDate
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DTime
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DTimestamp
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DBoolean
iDbType = REALSQLPreparedStatement.SQLITE_BOOLEAN
case DbType.DBlob
iDbType = REALSQLPreparedStatement.SQLITE_BLOB
case DbType.DText
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DInt64
iDbType = REALSQLPreparedStatement.SQLITE_INT64
case DbType.DFloat
iDbType = REALSQLPreparedStatement.SQLITE_DOUBLE
case else
break 'unsupported type
end select
#endif
#if BKS_ActiveRecordConfig.kIncludeSQLiteDatabase and RBVersion>=2013
case isa SQLiteDatabase
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = SQLitePreparedStatement.SQLITE_INTEGER
case DbType.DSmallInt
iDbType = SQLitePreparedStatement.SQLITE_INTEGER
case DbType.DDouble
iDbType = SQLitePreparedStatement.SQLITE_DOUBLE
case DbType.DDate
iDbType = SQLitePreparedStatement.SQLITE_TEXT
case DbType.DTime
iDbType = SQLitePreparedStatement.SQLITE_TEXT
case DbType.DTimestamp
iDbType = SQLitePreparedStatement.SQLITE_TEXT
case DbType.DBoolean
iDbType = SQLitePreparedStatement.SQLITE_BOOLEAN
case DbType.DBlob
iDbType = SQLitePreparedStatement.SQLITE_BLOB
case DbType.DText
iDbType = SQLitePreparedStatement.SQLITE_TEXT
case DbType.DInt64
iDbType = SQLitePreparedStatement.SQLITE_INT64
case DbType.DFloat
iDbType = SQLitePreparedStatement.SQLITE_DOUBLE
case else
break 'unsupported type
end select
#endif
#if BKS_ActiveRecordConfig.kIncludeMySQLCommunityServer
case isa MySQLCommunityServer
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = MySQLPreparedStatement.MYSQL_TYPE_LONG
case DbType.DSmallInt
iDbType = MySQLPreparedStatement.MYSQL_TYPE_SHORT
case DbType.DDouble
iDbType = MySQLPreparedStatement.MYSQL_TYPE_DOUBLE
case DbType.DDate
iDbType = MySQLPreparedStatement.MYSQL_TYPE_DATE
case DbType.DTime
iDbType = MySQLPreparedStatement.MYSQL_TYPE_TIME
case DbType.DTimestamp
iDbType = MySQLPreparedStatement.MYSQL_TYPE_TIMESTAMP
case DbType.DBoolean
iDbType = MySQLPreparedStatement.MYSQL_TYPE_TINY
case DbType.DBlob
iDbType = MySQLPreparedStatement.MYSQL_TYPE_BLOB
case DbType.DText
iDbType = MySQLPreparedStatement.MYSQL_TYPE_STRING
case DbType.DInt64
iDbType = MySQLPreparedStatement.MYSQL_TYPE_LONGLONG
case DbType.DFloat
iDbType = MySQLPreparedStatement.MYSQL_TYPE_DOUBLE
case else
break 'unsupported type
end select
#endif
//Postgres doesn't use bind types.
#if BKS_ActiveRecordConfig.kIncludeMSSQLServer
case isa MSSQLServerDatabase
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_BIGINT
case DbType.DSmallInt
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_SMALLINT
case DbType.DDouble
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_DOUBLE
case DbType.DDate
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_DATE
case DbType.DTime
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_TIME
case DbType.DTimestamp
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_DATETIME
case DbType.DBoolean
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_TINYINT
case DbType.DBlob
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_BINARY
case DbType.DText
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_STRING
case DbType.DInt64
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_BIGINT
case DbType.DFloat
iDbType = MSSQLServerPreparedStatement.MSSQLSERVER_TYPE_FLOAT
case else
break 'unsupported type
end select
#endif
#if BKS_ActiveRecordConfig.kIncludeOracle
case isa OracleDatabase
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = OracleSQLPreparedStatement.SQL_TYPE_INTEGER
case DbType.DSmallInt
iDbType = OracleSQLPreparedStatement.SQL_TYPE_INTEGER
case DbType.DDouble
iDbType = OracleSQLPreparedStatement.SQL_TYPE_FLOAT
case DbType.DDate
iDbType = OracleSQLPreparedStatement.SQL_TYPE_DATE
case DbType.DTime
iDbType = OracleSQLPreparedStatement.SQL_TYPE_STRING
case DbType.DTimestamp
iDbType = OracleSQLPreparedStatement.SQL_TYPE_DATE
case DbType.DBoolean
iDbType = OracleSQLPreparedStatement.SQL_TYPE_INTEGER
case DbType.DBlob
iDbType = OracleSQLPreparedStatement.SQL_TYPE_CLOB
case DbType.DText
iDbType = OracleSQLPreparedStatement.SQL_TYPE_STRING
case DbType.DInt64
iDbType = OracleSQLPreparedStatement.SQL_TYPE_INTEGER
case DbType.DFloat
iDbType = OracleSQLPreparedStatement.SQL_TYPE_FLOAT
case else
break 'unsupported type
end select
#endif
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
case isa CubeSQLServer
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = REALSQLPreparedStatement.SQLITE_INTEGER
case DbType.DSmallInt
iDbType = REALSQLPreparedStatement.SQLITE_INTEGER
case DbType.DDouble
iDbType = REALSQLPreparedStatement.SQLITE_DOUBLE
case DbType.DDate
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DTime
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DTimestamp
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DBoolean
iDbType = REALSQLPreparedStatement.SQLITE_BOOLEAN
case DbType.DBlob
iDbType = REALSQLPreparedStatement.SQLITE_BLOB
case DbType.DText
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DInt64
iDbType = REALSQLPreparedStatement.SQLITE_INT64
case DbType.DFloat
iDbType = REALSQLPreparedStatement.SQLITE_DOUBLE
case else
break 'unsupported type
end select
#endif
end select
stmt.BindType(i, iDbType)
if oField.IsKey and v.IntegerValue<=0 then
'if the field is a key and it's 0 or less, then set it to NULL
BindNull(stmt, i)
elseif pi.PropertyType.Name="Date" or (pi.PropertyType.Name="Variant" and v.Type=Variant.TypeDate) then
dim dt as Date = v.DateValue
if dt=nil then
BindNull(stmt, i)
else
dim dt1 as new Date
dt1.GMTOffset = dt.GMTOffset
dt1.TotalSeconds = dt.TotalSeconds
v = dt1 'copied for the saved value
dim dt2 as new Date
dt2.GMTOffset = dt.GMTOffset
dt2.TotalSeconds = dt.TotalSeconds
dt2.GMTOffset = 0
dt = dt2
if oField.enFieldType=BKS_ActiveRecord.DbType.DDate then
stmt.Bind(i, dt.SQLDate)
elseif oField.enFieldType=BKS_ActiveRecord.DbType.DTimestamp then
stmt.Bind(i, dt.SQLDateTime)
else
stmt.Bind(i, dt.SQLDateTime)
end if
end if
elseif pi.PropertyType.Name="Double" and v.DoubleValue = BKS_ActiveRecord.kDoubleNullSentinal then
BindNull(stmt, i)
else
stmt.Bind(i, v)
end if
dictFieldValue.Value(pi.Name) = v
next
return dictFieldValue
End Function
134217984
33
0
stmt as PreparedSQLStatement, oRecord as BKS_ActiveRecord.Base, aroField() as BKS_ActiveRecord.P.FieldInfo
Dictionary
CommitTransaction
1
134217984
Sub CommitTransaction()
Db.Commit
End Sub
134217984
0
0
Constructor
1
134217984
Sub Constructor()
'Empty
End Sub
134217984
1
0
Db
1
134217984
Function Db() As Database
BKS_Debug.Assert( false, "needs to be implemented in subclass" )
End Function
134217984
0
0
Database
DeleteRecord
1
134217984
Sub DeleteRecord(oRecord as BKS_ActiveRecord.Base)
dim sql as string
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
sql = "DELETE FROM " + oTableInfo.sTableName + _
" WHERE " + oTableInfo.sPrimaryKey + "=?"
dim stmt as PreparedSQLStatement
stmt = db.Prepare(sql)
BindId(stmt, 0, oRecord.ID)
stmt.SQLExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
End Sub
134217984
0
0
oRecord as BKS_ActiveRecord.Base
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
BKS_Debug.Assert( false, "needs to be implemented in subclass" )
End Function
134217984
1
0
Int64
HasTable
1
134217984
Function HasTable(sTableName as String) As boolean
dim rs as RecordSet
rs = Db.TableSchema
while not rs.EOF
if rs.IdxField(1).StringValue = sTableName then
return true
end if
rs.MoveNext
wend
return false
End Function
134217984
0
0
sTableName as String
boolean
InsertRecord
1
134217984
Function InsertRecord(oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary) As Int64
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
dim dictFieldValue as Dictionary
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
dim arsField() as string
dim arsPlaceholder() as string
dim aroField() as BKS_ActiveRecord.P.FieldInfo
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
if oField.bPrimaryKey then
continue
end if
arsField.Append(oField.sFieldName)
arsPlaceholder.Append("?")
aroField.Append(oField)
next
dim sql as string
sql = "INSERT INTO " + oTableInfo.sTableName
sql = sql + "(" + Join(arsField, ",") + ")"
sql = sql + " VALUES "
sql = sql + "(" + Join(arsPlaceholder, ",") + ")"
dim stmt as PreparedSQLStatement
stmt = db.Prepare(sql)
dictFieldValue = BindValues(stmt, oRecord, aroField)
stmt.SQLExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
dim iRecordID as Int64 = GetLastInsertID
dictFieldValue.Value( oTableInfo.piPrimaryKey.Name ) = iRecordID
'store the newly saved property values
dictSavedPropertyValue = dictFieldValue
return iRecordID
End Function
134217984
0
0
oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary
Int64
RollbackTransaction
1
134217984
Sub RollbackTransaction()
Db.Rollback
End Sub
134217984
0
0
SelectList
1
134217984
Function SelectList(sTable as string, sCondition as string = "", sOrder as string = "") As RecordSet
dim sSQL as string = "SELECT * FROM " + sTable + " "
if sCondition<>"" then
sSQL = sSQL + "WHERE " + sCondition
end if
if sOrder<>"" then
sSQL = sSQL + " ORDER BY " + sOrder
end if
sSQL = sSQL + ";"
return SQLSelect(sSQL)
End Function
134217984
0
0
sTable as string, sCondition as string = "", sOrder as string = ""
RecordSet
SelectRecord
1
134217984
Function SelectRecord(oRecord as BKS_ActiveRecord.Base, iRecordID as integer) As RecordSet
dim sql as string
dim rs as RecordSet
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
sql = "SELECT * FROM " + oTableInfo.sTableName + _
" WHERE " + oTableInfo.sPrimaryKey + "=?"
dim stmt as PreparedSQLStatement
stmt = db.Prepare(sql)
BindId(stmt, 0, iRecordID)
rs = stmt.SQLSelect
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
return rs
End Function
134217984
0
0
oRecord as BKS_ActiveRecord.Base, iRecordID as integer
RecordSet
SQLExecute
1
134217984
Sub SQLExecute(sql as String)
db.SQLExecute( sql )
if db.Error then
raise new BKS_ActiveRecord.DatabaseException( db, sql )
end if
End Sub
134217984
0
0
sql as String
SQLSelect
1
134217984
Function SQLSelect(sql as String) As RecordSet
dim rs as RecordSet = db.SQLSelect( sql )
if db.Error then
raise new BKS_ActiveRecord.DatabaseException( db, sql )
end if
return rs
End Function
134217984
0
0
sql as String
RecordSet
UpdateRecord
1
134217984
Sub UpdateRecord(oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
dim dictFieldValue as Dictionary
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
dim arsField() as string
dim aroField() as BKS_ActiveRecord.P.FieldInfo
dim oPrimaryKeyField as BKS_ActiveRecord.P.FieldInfo
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
if oField.bPrimaryKey then
oPrimaryKeyField = oField
continue
end if
arsField.Append(oField.sFieldName + "=?")
aroField.Append(oField)
next
dim sql as string
sql = "UPDATE " + oTableInfo.sTableName + " SET "
sql = sql + Join(arsField, ",")
sql = sql + " WHERE " + oTableInfo.sPrimaryKey + "=?"
dim stmt as PreparedSQLStatement
stmt = db.Prepare(sql)
aroField.Append(oPrimaryKeyField)
dictFieldValue = BindValues(stmt, oRecord, aroField)
stmt.SQLExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
'store the newly saved property values
dictSavedPropertyValue = dictFieldValue
End Sub
134217984
0
0
oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
DatabaseException
618102619
1
RuntimeException
1
0
Constructor
1
134217984
Sub Constructor(db as Database, sql as string = "")
if db.Error then
ErrorCode = db.ErrorCode
ErrorMessage = db.ErrorMessage
Message = Str( ErrorCode ) + ": " + ErrorMessage
else
ErrorMessage = "Unknown error"
end if
if sql <> "" then
Message = Message + EndOfLine + " " + sql
end if
End Sub
134217984
0
0
db as Database, sql as string = ""
Constructor
1
134217984
Sub Constructor(sMessage as string, sSQL as string)
if sMessage <> "" then
me.Message = sMessage
end if
if sSQL <> "" then
me.Message = me.Message + EndOfLine + " " + sSQL
end
End Sub
134217984
0
0
sMessage as string, sSQL as string
ErrorCode
1
134217984
ErrorCode As Integer
134217984
ErrorCode As Integer
0
0
ErrorMessage
1
134217984
ErrorMessage As string
134217984
ErrorMessage As string
0
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
Message
Behavior
String
MultiLineEditor
RuntimeException
ErrorNumber
Behavior
0
Integer
RuntimeException
ErrorCode
Behavior
0
Integer
ErrorMessage
Behavior
string
MultiLineEditor
ActiveRecordException
618102619
1
RuntimeException
1
0
Constructor
1
134217984
Sub Constructor(s as String)
self.Message = s
End Sub
134217984
4096
0
s as String
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
Message
Behavior
String
MultiLineEditor
RuntimeException
ErrorNumber
Behavior
0
Integer
RuntimeException
Transaction
618102619
1
1
0
Commit
1
134217984
Sub Commit()
if m_adp=nil then
raise new ActiveRecordException("The transaction was already completed")
end if
m_adp.CommitTransaction
m_adp = nil
End Sub
134217984
0
0
Constructor
1
134217984
Sub Constructor(adp as BKS_ActiveRecord.DatabaseAdapter)
if adp=nil then
raise new ActiveRecordException("Nil argument")
end if
adp.BeginTransaction
m_adp = adp
End Sub
134217984
0
0
adp as BKS_ActiveRecord.DatabaseAdapter
Destructor
1
134217984
Sub Destructor()
'If the user hasn't explictly committed the transaction then do a rollback
if m_adp<>nil then
m_adp.RollbackTransaction
m_adp = nil
end if
End Sub
134217984
0
0
Rollback
1
134217984
Sub Rollback()
if m_adp=nil then
raise new ActiveRecordException("The transaction was already completed")
end if
m_adp.RollbackTransaction
m_adp = nil
End Sub
134217984
0
0
m_adp
1
134217984
m_adp As BKS_ActiveRecord.DatabaseAdapter
134217984
m_adp As BKS_ActiveRecord.DatabaseAdapter
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
OracleAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
Constructor
1
134217984
Sub Constructor(oDb as Object)
'If you are not connecting to Oracle and do not have the OraclePlugin plugin delete this class (OracleAdapter)
#if BKS_ActiveRecordConfig.kIncludeOracle
dim db as OracleDatabase = OracleDatabase(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
raise new UnsupportedOperationException
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
dim rs as RecordSet
rs = SQLSelect("SELECT LASTVAL();")
return rs.IdxField(1).Int64Value
End Function
134217984
1
0
Int64
Note
1
134217984
Note
If you are not connecting to Oracle and do not have the OraclePlugin plugin delete this class (OracleAdapter)
0
m_db
1
134217984
m_db As Database
134217984
m_db As Database
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
cubeSQLDatabaseAdapter
618102619
1
BKS_ActiveRecord.DatabaseAdapter
1
0
BeginTransaction
1
134217984
Sub BeginTransaction()
'If you are not connecting to CubeSQLServer and do not have the CubeSQLServer plugin delete this class (cubeSQLDatabaseAdapter)
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(m_db)
if m_iTransactionCt=0 and not db.AutoCommit then
try
m_db.Commit 'commit the auto transaction
catch ex as RuntimeException
'ignore this one
end try
end if
if m_iTransactionCt=0 then
SQLExecute( "BEGIN" )
end if
m_iTransactionCt = m_iTransactionCt + 1
#endif
End Sub
134217984
0
0
BindValues
1
134217984
Function BindValues(oStmt as Object, oRecord as BKS_ActiveRecord.Base, aroField() as BKS_ActiveRecord.P.FieldInfo) As Dictionary
// Overriding the parent class ...
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim stmt as cubeSQLVM = cubeSQLVM(oStmt)
dim dictFieldValue as new Dictionary
for i as integer = 0 to aroField.Ubound
dim oField as BKS_ActiveRecord.P.FieldInfo = aroField(i)
dim pi as Introspection.PropertyInfo = oField.piFieldProperty
dim v as Variant = pi.Value(oRecord)
dim iDbType as integer
select case aroField(i).enFieldType
case DbType.DInteger
iDbType = REALSQLPreparedStatement.SQLITE_INTEGER
case DbType.DSmallInt
iDbType = REALSQLPreparedStatement.SQLITE_INTEGER
case DbType.DDouble
iDbType = REALSQLPreparedStatement.SQLITE_DOUBLE
case DbType.DDate
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DTime
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DTimestamp
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DBoolean
iDbType = REALSQLPreparedStatement.SQLITE_BOOLEAN
case DbType.DBlob
iDbType = REALSQLPreparedStatement.SQLITE_BLOB
case DbType.DText
iDbType = REALSQLPreparedStatement.SQLITE_TEXT
case DbType.DInt64
iDbType = REALSQLPreparedStatement.SQLITE_INT64
case DbType.DFloat
iDbType = REALSQLPreparedStatement.SQLITE_DOUBLE
case else
break 'unsupported type
end select
if oField.IsKey and v.IntegerValue<=0 then
'if the field is a key and it's 0 or less, then set it to NULL
iDBType = REALSQLPreparedStatement.SQLITE_NULL
elseif pi.PropertyType.Name="Date" or _
(pi.PropertyType.Name="Variant" and v.Type=Variant.TypeDate) then
dim dt as Date = v.DateValue
if dt=nil then
iDBType = REALSQLPreparedStatement.SQLITE_NULL
else
dim dt1 as new Date
dt1.GMTOffset = dt.GMTOffset
dt1.TotalSeconds = dt.TotalSeconds
v = dt1 'copied for the saved value
dim dt2 as new Date
dt2.GMTOffset = dt.GMTOffset
dt2.TotalSeconds = dt.TotalSeconds
dt2.GMTOffset = 0
dt = dt2
if oField.enFieldType=BKS_ActiveRecord.DbType.DDate then
iDBType = REALSQLPreparedStatement.SQLITE_TEXT
elseif oField.enFieldType=BKS_ActiveRecord.DbType.DTimestamp then
iDBType = REALSQLPreparedStatement.SQLITE_TEXT
else
iDBType = REALSQLPreparedStatement.SQLITE_TEXT
end if
end if
elseif pi.PropertyType.Name="Double" and _
v.DoubleValue = BKS_ActiveRecord.kDoubleNullSentinal then
iDBType = REALSQLPreparedStatement.SQLITE_NULL
else
// stmt.Bind(i, v)
end if
dictFieldValue.Value(pi.Name) = v
select case iDbType
case REALSQLPreparedStatement.SQLITE_INTEGER
stmt.BindInt(i + 1, v.IntegerValue)
case REALSQLPreparedStatement.SQLITE_DOUBLE
stmt.BindDouble(i + 1, v.DoubleValue)
case REALSQLPreparedStatement.SQLITE_TEXT
stmt.BindText(i + 1, v.StringValue)
case REALSQLPreparedStatement.SQLITE_BOOLEAN
stmt.BindInt(i + 1, v.IntegerValue)
case REALSQLPreparedStatement.SQLITE_BLOB
stmt.BindBlob(i + 1, v)
case REALSQLPreparedStatement.SQLITE_INT64
stmt.BindInt64(i + 1, v.Int64Value)
end select
next
return dictFieldValue
#endif
End Function
134217984
33
0
oStmt as Object, oRecord as BKS_ActiveRecord.Base, aroField() as BKS_ActiveRecord.P.FieldInfo
Dictionary
CommitTransaction
1
134217984
Sub CommitTransaction()
m_iTransactionCt = m_iTransactionCt - 1
if m_iTransactionCt=0 then
Db.Commit
if db.Error then
dim ex as new BKS_ActiveRecord.DatabaseException(db, "Commit")
db.Rollback
raise ex
end if
end if
End Sub
134217984
0
0
Constructor
1
134217984
Sub Constructor(oDb as Object)
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(oDb)
if db=nil then
raise new RuntimeException
end if
m_db = db
#else
dim ex as new UnsupportedOperationException
ex.Message = "CubeSQL is not enabled"
raise ex
#endif
End Sub
134217984
0
0
oDb as Object
Db
1
134217984
Function Db() As Database
return m_db
End Function
134217984
0
0
Database
DeleteRecord
1
134217984
Sub DeleteRecord(oRecord as BKS_ActiveRecord.Base)
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(m_db)
dim sql as string
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
sql = "DELETE FROM " + oTableInfo.sTableName + _
" WHERE " + oTableInfo.sPrimaryKey + "=?1"
dim stmt as CubeSQLVM
stmt = db.VMPrepare(sql)
stmt.BindInt64(1, oRecord.ID)
stmt.VMExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
#endif
End Sub
134217984
0
0
oRecord as BKS_ActiveRecord.Base
GetLastInsertID
1
134217984
Function GetLastInsertID() As Int64
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(m_db)
return db.LastRowID
#endif
End Function
134217984
1
0
Int64
InsertRecord
1
134217984
Function InsertRecord(oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary) As Int64
// Overriding the parent class ...
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(m_db)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
dim dictFieldValue as Dictionary
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
dim arsField() as string
dim arsPlaceholder() as string
dim aroField() as BKS_ActiveRecord.P.FieldInfo
dim i as integer
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
if oField.bPrimaryKey then
continue
end if
arsField.Append(oField.sFieldName)
i = i + 1
arsPlaceholder.Append("?" + str(i))
aroField.Append(oField)
next
dim sql as string
sql = "INSERT INTO " + oTableInfo.sTableName
sql = sql + "(" + Join(arsField, ",") + ")"
sql = sql + " VALUES "
sql = sql + "(" + Join(arsPlaceholder, ",") + ")"
dim stmt as CubeSQLVM
stmt = db.VMPrepare(sql)
dictFieldValue = BindValues(stmt, oRecord, aroField)
stmt.VMExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
dim iRecordID as Int64 = GetLastInsertID
dictFieldValue.Value( oTableInfo.piPrimaryKey.Name ) = iRecordID
'store the newly saved property values
dictSavedPropertyValue = dictFieldValue
return iRecordID
#endif
End Function
134217984
0
0
oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary
Int64
RollbackTransaction
1
134217984
Sub RollbackTransaction()
m_iTransactionCt = m_iTransactionCt - 1
if m_iTransactionCt=0 then
Db.Rollback
end if
End Sub
134217984
0
0
SelectRecord
1
134217984
Function SelectRecord(oRecord as BKS_ActiveRecord.Base, iRecordID as Int64) As RecordSet
// Overriding the parent class ...
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(m_db)
dim sql as string
dim rs as RecordSet
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
sql = "SELECT * FROM " + oTableInfo.sTableName + _
" WHERE " + oTableInfo.sPrimaryKey + "=?1"
dim stmt as CubeSQLVM
stmt = db.VMPrepare(sql)
// stmt.BindType(0, REALSQLPreparedStatement.SQLITE_INT64)
stmt.BindInt64(1, iRecordID)
rs = stmt.VMSelect
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
return rs
#endif
End Function
134217984
0
0
oRecord as BKS_ActiveRecord.Base, iRecordID as Int64
RecordSet
UpdateRecord
1
134217984
Sub UpdateRecord(oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary)
// Overriding the parent class ...
#if BKS_ActiveRecordConfig.kIncludeCubeDatabase
dim db as CubeSQLServer = CubeSQLServer(m_db)
dim oTableInfo as BKS_ActiveRecord.P.TableInfo
dim dictFieldValue as Dictionary
oTableInfo = GetTableInfo( Introspection.GetType(oRecord) )
dim arsField() as string
dim aroField() as BKS_ActiveRecord.P.FieldInfo
dim oPrimaryKeyField as BKS_ActiveRecord.P.FieldInfo
dim i as integer
for each oField as BKS_ActiveRecord.P.FieldInfo in oTableInfo.aroField
if oField.bPrimaryKey then
oPrimaryKeyField = oField
continue
end if
i = i + 1
arsField.Append(oField.sFieldName + "=?" + str(i))
aroField.Append(oField)
next
dim sql as string
sql = "UPDATE " + oTableInfo.sTableName + " SET "
sql = sql + Join(arsField, ",")
sql = sql + " WHERE " + oTableInfo.sPrimaryKey + "=?"
dim stmt as CubeSQLVM
stmt = db.VMPrepare(sql)
aroField.Append(oPrimaryKeyField)
dictFieldValue = me.BindValues(stmt, oRecord, aroField)
stmt.VMExecute
if db.Error then
raise new BKS_ActiveRecord.DatabaseException(db)
end if
'store the newly saved property values
dictSavedPropertyValue = dictFieldValue
#endif
End Sub
134217984
0
0
oRecord as BKS_ActiveRecord.Base, byref dictSavedPropertyValue as Dictionary
CubeSQLServer
1
134217984
CubeSQLServer
If you are not connecting to CubeSQLServer and
do not have the CubeSQLServer plugin delete this class (cubeSQLDatabaseAdapter)
0
m_db
1
134217984
m_db As Database
134217984
m_db As Database
33
0
m_iTransactionCt
1
134217984
m_iTransactionCt As Integer
134217984
m_iTransactionCt As Integer
33
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
BKS_Database
0
0
1
0
SQLExecuteRaiseOnError
1
134217984
Sub SQLExecuteRaiseOnError(extends db as Database, sql as String)
db.SQLExecute( sql )
if db.Error then
raise new BKS_Database.DatabaseException( db.ErrorMessage, sql )
end if
End Sub
134217984
0
0
extends db as Database, sql as String
SQLSelectRaiseOnError
1
134217984
Function SQLSelectRaiseOnError(extends db as Database, sql as String) As RecordSet
dim rs as RecordSet = db.SQLSelect( sql )
if db.Error then
raise new BKS_Database.DatabaseException( db.ErrorMessage, sql )
end if
return rs
End Function
134217984
0
0
extends db as Database, sql as String
RecordSet
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
DatabaseException
147339697
1
RuntimeException
1
0
Constructor
1
134217984
Sub Constructor(db as Database, sql as string = "")
if db.Error then
ErrorCode = db.ErrorCode
ErrorMessage = db.ErrorMessage
Message = Str( ErrorCode ) + ": " + ErrorMessage
else
ErrorMessage = "Unknown error"
end if
if sql <> "" then
Message = Message + EndOfLine + " " + sql
end if
End Sub
134217984
0
0
db as Database, sql as string = ""
Constructor
1
134217984
Sub Constructor(sMessage as string, sSQL as string)
if sMessage <> "" then
me.Message = sMessage
end if
if sSQL <> "" then
me.Message = me.Message + EndOfLine + " " + sSQL
end
End Sub
134217984
0
0
sMessage as string, sSQL as string
ErrorCode
1
134217984
ErrorCode As Integer
134217984
ErrorCode As Integer
0
0
ErrorMessage
1
134217984
ErrorMessage As string
134217984
ErrorMessage As string
0
0
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
Message
Behavior
String
MultiLineEditor
RuntimeException
ErrorNumber
Behavior
0
Integer
RuntimeException
ErrorCode
Behavior
0
Integer
ErrorMessage
Behavior
string
MultiLineEditor
BKS_Core
0
BKS_Debug
1986983246
0
1
0
Assert
1
134217984
Sub Assert(bCondition as boolean, sMessage as string = "")
#if DebugBuild then
if not bCondition then
Raise new BKS_AssertFailedException(sMessage)
end if
#endif
End Sub
134217984
1
0
bCondition as boolean, sMessage as string = ""
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
BKS_AssertFailedException
1856721478
1
RuntimeException
1
0
Constructor
1
134217984
Sub Constructor(sMessage as string)
if sMessage <> "" then
Me.Message = sMessage
end if
End Sub
134217984
0
0
sMessage as string
Name
1
ID
Object
Index
1
ID
-2147483648
Object
Super
1
ID
Object
Left
1
Position
0
Object
Top
1
Position
0
Object
Message
Behavior
String
MultiLineEditor
RuntimeException
ErrorNumber
Behavior
0
Integer
RuntimeException
0
448
3
1
(Home)
BKS_ActiveRecordConfig
0
0
1
0
kIncludeCubeDatabase
1
134217984
kIncludeCubeDatabase
3
False
1
kIncludeMSSQLServer
1
134217984
kIncludeMSSQLServer
3
False
1
kIncludeMySQLCommunityServer
1
134217984
kIncludeMySQLCommunityServer
3
True
1
kIncludeOracle
1
134217984
kIncludeOracle
3
False
1
kIncludePostgreSQLDatabase
1
134217984
kIncludePostgreSQLDatabase
3
False
1
kIncludeREALSQLDatabase
1
134217984
kIncludeREALSQLDatabase
3
False
1
kIncludeSQLiteDatabase
1
134217984
kIncludeSQLiteDatabase
3
False
1
DataFile
0
0
1
0
Register
1
134217984
Sub Register(db as MySQLCommunityServer)
BKS_ActiveRecord.Table( db, "tbl_auslieferungsliste", GetTypeInfo( tbl_auslieferungsliste ) )
BKS_ActiveRecord.Table( db, "tbl_auslieferungsschein_bestellung", GetTypeInfo( tbl_auslieferungsschein_bestellung ) )
BKS_ActiveRecord.Table( db, "tbl_auslieferungsscheine", GetTypeInfo( tbl_auslieferungsscheine ) )
BKS_ActiveRecord.Table( db, "tbl_benutzer", GetTypeInfo( tbl_benutzer ) )
BKS_ActiveRecord.Table( db, "tbl_bestellungen", GetTypeInfo( tbl_bestellungen ) )
BKS_ActiveRecord.Table( db, "tbl_cmr", GetTypeInfo( tbl_cmr ) )
BKS_ActiveRecord.Table( db, "tbl_coa", GetTypeInfo( tbl_coa ) )
BKS_ActiveRecord.Table( db, "tbl_coa_bestellung", GetTypeInfo( tbl_coa_bestellung ) )
BKS_ActiveRecord.Table( db, "tbl_hilfswerte_coa", GetTypeInfo( tbl_hilfswerte_coa ) )
BKS_ActiveRecord.Table( db, "tbl_kunden", GetTypeInfo( tbl_kunden ) )
BKS_ActiveRecord.Table( db, "tbl_kunden_adressen", GetTypeInfo( tbl_kunden_adressen ) )
BKS_ActiveRecord.Table( db, "tbl_laenderkennungen", GetTypeInfo( tbl_laenderkennungen ) )
BKS_ActiveRecord.Table( db, "tbl_mikrobiologie", GetTypeInfo( tbl_mikrobiologie ) )
BKS_ActiveRecord.Table( db, "tbl_mikrobiologie_auslieferungsschein", GetTypeInfo( tbl_mikrobiologie_auslieferungsschein ) )
BKS_ActiveRecord.Table( db, "tbl_mikrobiologie_bestellung", GetTypeInfo( tbl_mikrobiologie_bestellung ) )
BKS_ActiveRecord.Table( db, "tbl_paletten", GetTypeInfo( tbl_paletten ) )
BKS_ActiveRecord.Table( db, "tbl_speditionen", GetTypeInfo( tbl_speditionen ) )
BKS_ActiveRecord.Table( db, "tbl_speditionen_adressen", GetTypeInfo( tbl_speditionen_adressen ) )
BKS_ActiveRecord.Table( db, "tbl_transport_ust", GetTypeInfo( tbl_transport_ust ) )
BKS_ActiveRecord.Table( db, "tbl_verpackungen", GetTypeInfo( tbl_verpackungen ) )
BKS_ActiveRecord.Table( db, "tbl_werk", GetTypeInfo( tbl_werk ) )
BKS_ActiveRecord.Table( db, "tbl_zusammengefasste_bestellungen", GetTypeInfo( tbl_zusammengefasste_bestellungen ) )
BKS_ActiveRecord.Table( db, "view_logistik_auftraege", GetTypeInfo( view_logistik_auftraege ) )
End Sub
134217984
33
0
db as MySQLCommunityServer
gDB
1
134217984
gDB As MySQLCommunityServer
134217984
gDB As MySQLCommunityServer
0
0
OpenDB
1
134217984
Function OpenDB() As Boolean
dim db as new MySQLCommunityServer
db.Host = "localhost"
db.Port = 3306
db.DatabaseName = "steinickev4"
db.UserName = "root"
db.Password = "test" //think about obfuscating this string
if db.Connect = false then
MsgBox "Couldn't Connect" + EndOfLine + db.ErrorMessage
return false
end
gDB = db
//Important to tell ActiveRecord what the connection is!
BKS_ActiveRecord.Connect( gdb )
//Make any db updates here before registering
//Register the tables with ActiveRecord
Register( gdb )
return true
End Function
134217984
0
0
Boolean
CloseDB
1
134217984
Sub CloseDB()
if gDB <> nil then
gDB.close
end
End Sub
134217984
0
0
ActiveRecordBase
1354395688
1
BKS_ActiveRecord.Base
1
0
tbl_auslieferungsliste
1354395688
1
DataFile.ActiveRecordBase
1
0
bestellung_uid
1
134217984
bestellung_uid As Integer
134217984
bestellung_uid As Integer
0
0
benutzerwerk_uid
1
134217984
benutzerwerk_uid As Integer
134217984
benutzerwerk_uid As Integer
0
0
checked
1
134217984
checked As Integer
134217984
checked As Integer
0
0
kunden_titel
1
134217984
kunden_titel As String
134217984
kunden_titel As String
0
0
artikel_bezeichnung
1
134217984
artikel_bezeichnung As String
134217984
artikel_bezeichnung As String
0
0
artikel_nummer_intern
1
134217984
artikel_nummer_intern As String
134217984
artikel_nummer_intern As String
0
0
abruf_nummer
1
134217984
abruf_nummer As String
134217984
abruf_nummer As String
0
0
menge
1
134217984
menge As Double
134217984
menge As Double
0
0
auslieferungsdatum
1
134217984
auslieferungsdatum As Date
134217984
auslieferungsdatum As Date
0
0
bemerkungen
1
134217984
bemerkungen As String
134217984
bemerkungen As String
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_auslieferungsliste()
//Usage:
// dim arotbl_auslieferungsliste() as DataFile.tbl_auslieferungsliste = DataFile.tbl_auslieferungsliste.List("fieldName = somevalue", "fieldName")
dim arotbl_auslieferungsliste() as DataFile.tbl_auslieferungsliste
dim s as string
s = "select * From tbl_auslieferungsliste "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_auslieferungsliste
end
do until rs.EOF
dim oRecord as new DataFile.tbl_auslieferungsliste
oRecord.ReadRecord(rs)
arotbl_auslieferungsliste.Append(oRecord)
rs.MoveNext
loop
return arotbl_auslieferungsliste
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_auslieferungsliste()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_auslieferungsliste
//Usage:
//dim tbl_auslieferungsliste as DataFile.tbl_auslieferungsliste = DataFile.tbl_auslieferungsliste.FindByID( id )
dim s as string
s = "Select * from tbl_auslieferungsliste WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_auslieferungsliste as new DataFile.tbl_auslieferungsliste
tbl_auslieferungsliste.ReadRecord(rs)
return tbl_auslieferungsliste
End Function
134217984
0
1
id as Integer
DataFile.tbl_auslieferungsliste
tbl_auslieferungsschein_bestellung
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
bestellung_uid
1
134217984
bestellung_uid As Integer
134217984
bestellung_uid As Integer
0
0
kunden_titel
1
134217984
kunden_titel As String
134217984
kunden_titel As String
0
0
coa_kontakt
1
134217984
coa_kontakt As String
134217984
coa_kontakt As String
0
0
artikel_bezeichnung_extern
1
134217984
artikel_bezeichnung_extern As String
134217984
artikel_bezeichnung_extern As String
0
0
artikel_bezeichnung_intern
1
134217984
artikel_bezeichnung_intern As String
134217984
artikel_bezeichnung_intern As String
0
0
kontrakt_extern
1
134217984
kontrakt_extern As String
134217984
kontrakt_extern As String
0
0
kontrakt_intern
1
134217984
kontrakt_intern As String
134217984
kontrakt_intern As String
0
0
artikel_nummer_extern
1
134217984
artikel_nummer_extern As String
134217984
artikel_nummer_extern As String
0
0
artikel_nummer_intern
1
134217984
artikel_nummer_intern As String
134217984
artikel_nummer_intern As String
0
0
spezial_kunde
1
134217984
spezial_kunde As String
134217984
spezial_kunde As String
0
0
sensorik1
1
134217984
sensorik1 As String
134217984
sensorik1 As String
0
0
sensorik2
1
134217984
sensorik2 As String
134217984
sensorik2 As String
0
0
sensorik3
1
134217984
sensorik3 As String
134217984
sensorik3 As String
0
0
schnitt_koernung
1
134217984
schnitt_koernung As String
134217984
schnitt_koernung As String
0
0
muster
1
134217984
muster As String
134217984
muster As String
0
0
schuettgewicht
1
134217984
schuettgewicht As String
134217984
schuettgewicht As String
0
0
stampfvolumen
1
134217984
stampfvolumen As String
134217984
stampfvolumen As String
0
0
abruf_nummer
1
134217984
abruf_nummer As String
134217984
abruf_nummer As String
0
0
farbe
1
134217984
farbe As String
134217984
farbe As String
0
0
aussehen
1
134217984
aussehen As String
134217984
aussehen As String
0
0
feuchtigkeit
1
134217984
feuchtigkeit As String
134217984
feuchtigkeit As String
0
0
sand
1
134217984
sand As String
134217984
sand As String
0
0
asche
1
134217984
asche As String
134217984
asche As String
0
0
mhd
1
134217984
mhd As String
134217984
mhd As String
0
0
bulkindex
1
134217984
bulkindex As String
134217984
bulkindex As String
0
0
attribut_auswahl
1
134217984
attribut_auswahl As String
134217984
attribut_auswahl As String
0
0
sieb1
1
134217984
sieb1 As String
134217984
sieb1 As String
0
0
sieb2
1
134217984
sieb2 As String
134217984
sieb2 As String
0
0
sieb3
1
134217984
sieb3 As String
134217984
sieb3 As String
0
0
sieb4
1
134217984
sieb4 As String
134217984
sieb4 As String
0
0
sieb5
1
134217984
sieb5 As String
134217984
sieb5 As String
0
0
sieb6
1
134217984
sieb6 As String
134217984
sieb6 As String
0
0
mikrobiologie
1
134217984
mikrobiologie As String
134217984
mikrobiologie As String
0
0
statistiknummer
1
134217984
statistiknummer As String
134217984
statistiknummer As String
0
0
bemerkung
1
134217984
bemerkung As String
134217984
bemerkung As String
0
0
zusatz
1
134217984
zusatz As String
134217984
zusatz As String
0
0
menge
1
134217984
menge As Double
134217984
menge As Double
0
0
menge_lbs
1
134217984
menge_lbs As Double
134217984
menge_lbs As Double
0
0
menge_brutto
1
134217984
menge_brutto As Double
134217984
menge_brutto As Double
0
0
verpackung_uid
1
134217984
verpackung_uid As Integer
134217984
verpackung_uid As Integer
0
0
verpackung_anzahl
1
134217984
verpackung_anzahl As Double
134217984
verpackung_anzahl As Double
0
0
verpackung_gewicht
1
134217984
verpackung_gewicht As Double
134217984
verpackung_gewicht As Double
0
0
paletten_uid
1
134217984
paletten_uid As Integer
134217984
paletten_uid As Integer
0
0
paletten_anzahl
1
134217984
paletten_anzahl As Double
134217984
paletten_anzahl As Double
0
0
palettenverpackung_anzahl
1
134217984
palettenverpackung_anzahl As Double
134217984
palettenverpackung_anzahl As Double
0
0
auslieferungs_auftrags_nummer
1
134217984
auslieferungs_auftrags_nummer As String
134217984
auslieferungs_auftrags_nummer As String
0
0
fa_nummer
1
134217984
fa_nummer As String
134217984
fa_nummer As String
0
0
letzte_lieferung
1
134217984
letzte_lieferung As Date
134217984
letzte_lieferung As Date
0
0
auslieferungsdatum
1
134217984
auslieferungsdatum As Date
134217984
auslieferungsdatum As Date
0
0
anlieferungsdatum
1
134217984
anlieferungsdatum As Date
134217984
anlieferungsdatum As Date
0
0
auslieferungsschein_titel
1
134217984
auslieferungsschein_titel As String
134217984
auslieferungsschein_titel As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_auslieferungsschein_bestellung()
//Usage:
// dim arotbl_auslieferungsschein_bestellung() as DataFile.tbl_auslieferungsschein_bestellung = DataFile.tbl_auslieferungsschein_bestellung.List("fieldName = somevalue", "fieldName")
dim arotbl_auslieferungsschein_bestellung() as DataFile.tbl_auslieferungsschein_bestellung
dim s as string
s = "select * From tbl_auslieferungsschein_bestellung "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_auslieferungsschein_bestellung
end
do until rs.EOF
dim oRecord as new DataFile.tbl_auslieferungsschein_bestellung
oRecord.ReadRecord(rs)
arotbl_auslieferungsschein_bestellung.Append(oRecord)
rs.MoveNext
loop
return arotbl_auslieferungsschein_bestellung
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_auslieferungsschein_bestellung()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_auslieferungsschein_bestellung
//Usage:
//dim tbl_auslieferungsschein_bestellung as DataFile.tbl_auslieferungsschein_bestellung = DataFile.tbl_auslieferungsschein_bestellung.FindByID( id )
dim s as string
s = "Select * from tbl_auslieferungsschein_bestellung WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_auslieferungsschein_bestellung as new DataFile.tbl_auslieferungsschein_bestellung
tbl_auslieferungsschein_bestellung.ReadRecord(rs)
return tbl_auslieferungsschein_bestellung
End Function
134217984
0
1
id as Integer
DataFile.tbl_auslieferungsschein_bestellung
tbl_auslieferungsscheine
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
kunden_titel
1
134217984
kunden_titel As String
134217984
kunden_titel As String
0
0
coa_kontakt
1
134217984
coa_kontakt As String
134217984
coa_kontakt As String
0
0
artikel_bezeichnung_extern
1
134217984
artikel_bezeichnung_extern As String
134217984
artikel_bezeichnung_extern As String
0
0
artikel_bezeichnung_intern
1
134217984
artikel_bezeichnung_intern As String
134217984
artikel_bezeichnung_intern As String
0
0
kontrakt_extern
1
134217984
kontrakt_extern As String
134217984
kontrakt_extern As String
0
0
kontrakt_intern
1
134217984
kontrakt_intern As String
134217984
kontrakt_intern As String
0
0
artikel_nummer_extern
1
134217984
artikel_nummer_extern As String
134217984
artikel_nummer_extern As String
0
0
artikel_nummer_intern
1
134217984
artikel_nummer_intern As String
134217984
artikel_nummer_intern As String
0
0
spezial_kunde
1
134217984
spezial_kunde As String
134217984
spezial_kunde As String
0
0
sensorik1
1
134217984
sensorik1 As String
134217984
sensorik1 As String
0
0
sensorik2
1
134217984
sensorik2 As String
134217984
sensorik2 As String
0
0
sensorik3
1
134217984
sensorik3 As String
134217984
sensorik3 As String
0
0
schnitt_koernung
1
134217984
schnitt_koernung As String
134217984
schnitt_koernung As String
0
0
muster
1
134217984
muster As String
134217984
muster As String
0
0
schuettgewicht
1
134217984
schuettgewicht As String
134217984
schuettgewicht As String
0
0
stampfvolumen
1
134217984
stampfvolumen As String
134217984
stampfvolumen As String
0
0
abruf_nummer
1
134217984
abruf_nummer As String
134217984
abruf_nummer As String
0
0
farbe
1
134217984
farbe As String
134217984
farbe As String
0
0
aussehen
1
134217984
aussehen As String
134217984
aussehen As String
0
0
feuchtigkeit
1
134217984
feuchtigkeit As String
134217984
feuchtigkeit As String
0
0
sand
1
134217984
sand As String
134217984
sand As String
0
0
asche
1
134217984
asche As String
134217984
asche As String
0
0
mhd
1
134217984
mhd As String
134217984
mhd As String
0
0
bulkindex
1
134217984
bulkindex As String
134217984
bulkindex As String
0
0
attribut_auswahl
1
134217984
attribut_auswahl As String
134217984
attribut_auswahl As String
0
0
sieb1
1
134217984
sieb1 As String
134217984
sieb1 As String
0
0
sieb2
1
134217984
sieb2 As String
134217984
sieb2 As String
0
0
sieb3
1
134217984
sieb3 As String
134217984
sieb3 As String
0
0
sieb4
1
134217984
sieb4 As String
134217984
sieb4 As String
0
0
sieb5
1
134217984
sieb5 As String
134217984
sieb5 As String
0
0
sieb6
1
134217984
sieb6 As String
134217984
sieb6 As String
0
0
mikrobiologie
1
134217984
mikrobiologie As String
134217984
mikrobiologie As String
0
0
statistiknummer
1
134217984
statistiknummer As String
134217984
statistiknummer As String
0
0
bemerkung
1
134217984
bemerkung As String
134217984
bemerkung As String
0
0
zusatz
1
134217984
zusatz As String
134217984
zusatz As String
0
0
menge
1
134217984
menge As Double
134217984
menge As Double
0
0
menge_lbs
1
134217984
menge_lbs As Double
134217984
menge_lbs As Double
0
0
menge_brutto
1
134217984
menge_brutto As Double
134217984
menge_brutto As Double
0
0
verpackung_uid
1
134217984
verpackung_uid As Integer
134217984
verpackung_uid As Integer
0
0
verpackung_anzahl
1
134217984
verpackung_anzahl As Double
134217984
verpackung_anzahl As Double
0
0
verpackung_gewicht
1
134217984
verpackung_gewicht As Double
134217984
verpackung_gewicht As Double
0
0
paletten_uid
1
134217984
paletten_uid As Integer
134217984
paletten_uid As Integer
0
0
paletten_anzahl
1
134217984
paletten_anzahl As Double
134217984
paletten_anzahl As Double
0
0
palettenverpackung_anzahl
1
134217984
palettenverpackung_anzahl As Double
134217984
palettenverpackung_anzahl As Double
0
0
auslieferungs_auftrags_nummer
1
134217984
auslieferungs_auftrags_nummer As String
134217984
auslieferungs_auftrags_nummer As String
0
0
fa_nummer
1
134217984
fa_nummer As String
134217984
fa_nummer As String
0
0
letzte_lieferung
1
134217984
letzte_lieferung As Date
134217984
letzte_lieferung As Date
0
0
auslieferungsdatum
1
134217984
auslieferungsdatum As Date
134217984
auslieferungsdatum As Date
0
0
anlieferungsdatum
1
134217984
anlieferungsdatum As Date
134217984
anlieferungsdatum As Date
0
0
auslieferungsschein_titel
1
134217984
auslieferungsschein_titel As String
134217984
auslieferungsschein_titel As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_auslieferungsscheine()
//Usage:
// dim arotbl_auslieferungsscheine() as DataFile.tbl_auslieferungsscheine = DataFile.tbl_auslieferungsscheine.List("fieldName = somevalue", "fieldName")
dim arotbl_auslieferungsscheine() as DataFile.tbl_auslieferungsscheine
dim s as string
s = "select * From tbl_auslieferungsscheine "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_auslieferungsscheine
end
do until rs.EOF
dim oRecord as new DataFile.tbl_auslieferungsscheine
oRecord.ReadRecord(rs)
arotbl_auslieferungsscheine.Append(oRecord)
rs.MoveNext
loop
return arotbl_auslieferungsscheine
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_auslieferungsscheine()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_auslieferungsscheine
//Usage:
//dim tbl_auslieferungsscheine as DataFile.tbl_auslieferungsscheine = DataFile.tbl_auslieferungsscheine.FindByID( id )
dim s as string
s = "Select * from tbl_auslieferungsscheine WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_auslieferungsscheine as new DataFile.tbl_auslieferungsscheine
tbl_auslieferungsscheine.ReadRecord(rs)
return tbl_auslieferungsscheine
End Function
134217984
0
1
id as Integer
DataFile.tbl_auslieferungsscheine
tbl_benutzer
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
benutzername
1
134217984
benutzername As String
134217984
benutzername As String
0
0
benutzerpasswort
1
134217984
benutzerpasswort As String
134217984
benutzerpasswort As String
0
0
anrede
1
134217984
anrede As String
134217984
anrede As String
0
0
vorname
1
134217984
vorname As String
134217984
vorname As String
0
0
nachname
1
134217984
nachname As String
134217984
nachname As String
0
0
abteilung
1
134217984
abteilung As String
134217984
abteilung As String
0
0
emailadresse
1
134217984
emailadresse As String
134217984
emailadresse As String
0
0
durchwahl
1
134217984
durchwahl As String
134217984
durchwahl As String
0
0
bemerkungen
1
134217984
bemerkungen As String
134217984
bemerkungen As String
0
0
benutzerwerk_uid
1
134217984
benutzerwerk_uid As Integer
134217984
benutzerwerk_uid As Integer
0
0
adminuser
1
134217984
adminuser As Integer
134217984
adminuser As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
token
1
134217984
token As String
134217984
token As String
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_benutzer()
//Usage:
// dim arotbl_benutzer() as DataFile.tbl_benutzer = DataFile.tbl_benutzer.List("fieldName = somevalue", "fieldName")
dim arotbl_benutzer() as DataFile.tbl_benutzer
dim s as string
s = "select * From tbl_benutzer "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_benutzer
end
do until rs.EOF
dim oRecord as new DataFile.tbl_benutzer
oRecord.ReadRecord(rs)
arotbl_benutzer.Append(oRecord)
rs.MoveNext
loop
return arotbl_benutzer
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_benutzer()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_benutzer
//Usage:
//dim tbl_benutzer as DataFile.tbl_benutzer = DataFile.tbl_benutzer.FindByID( id )
dim s as string
s = "Select * from tbl_benutzer WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_benutzer as new DataFile.tbl_benutzer
tbl_benutzer.ReadRecord(rs)
return tbl_benutzer
End Function
134217984
0
1
id as Integer
DataFile.tbl_benutzer
tbl_bestellungen
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
auslieferungsschein_uid
1
134217984
auslieferungsschein_uid As Integer
134217984
auslieferungsschein_uid As Integer
0
0
bearbeiter_uid
1
134217984
bearbeiter_uid As Integer
134217984
bearbeiter_uid As Integer
0
0
benutzerwerk_uid
1
134217984
benutzerwerk_uid As Integer
134217984
benutzerwerk_uid As Integer
0
0
auslieferungs_datum
1
134217984
auslieferungs_datum As Date
134217984
auslieferungs_datum As Date
0
0
anlieferungs_datum
1
134217984
anlieferungs_datum As Date
134217984
anlieferungs_datum As Date
0
0
kunden_nummer
1
134217984
kunden_nummer As String
134217984
kunden_nummer As String
0
0
abruf_nummer
1
134217984
abruf_nummer As String
134217984
abruf_nummer As String
0
0
status
1
134217984
status As Integer
134217984
status As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_bestellungen()
//Usage:
// dim arotbl_bestellungen() as DataFile.tbl_bestellungen = DataFile.tbl_bestellungen.List("fieldName = somevalue", "fieldName")
dim arotbl_bestellungen() as DataFile.tbl_bestellungen
dim s as string
s = "select * From tbl_bestellungen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_bestellungen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_bestellungen
oRecord.ReadRecord(rs)
arotbl_bestellungen.Append(oRecord)
rs.MoveNext
loop
return arotbl_bestellungen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_bestellungen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_bestellungen
//Usage:
//dim tbl_bestellungen as DataFile.tbl_bestellungen = DataFile.tbl_bestellungen.FindByID( id )
dim s as string
s = "Select * from tbl_bestellungen WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_bestellungen as new DataFile.tbl_bestellungen
tbl_bestellungen.ReadRecord(rs)
return tbl_bestellungen
End Function
134217984
0
1
id as Integer
DataFile.tbl_bestellungen
tbl_cmr
1354395688
1
DataFile.ActiveRecordBase
1
0
bestellung_uid
1
134217984
bestellung_uid As Integer
134217984
bestellung_uid As Integer
0
0
benutzerwerk_uid
1
134217984
benutzerwerk_uid As Integer
134217984
benutzerwerk_uid As Integer
0
0
deliverynote
1
134217984
deliverynote As String
134217984
deliverynote As String
0
0
invoice
1
134217984
invoice As String
134217984
invoice As String
0
0
mrn
1
134217984
mrn As String
134217984
mrn As String
0
0
statistiknummer
1
134217984
statistiknummer As String
134217984
statistiknummer As String
0
0
kunden_adressen_uid
1
134217984
kunden_adressen_uid As Integer
134217984
kunden_adressen_uid As Integer
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_cmr()
//Usage:
// dim arotbl_cmr() as DataFile.tbl_cmr = DataFile.tbl_cmr.List("fieldName = somevalue", "fieldName")
dim arotbl_cmr() as DataFile.tbl_cmr
dim s as string
s = "select * From tbl_cmr "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_cmr
end
do until rs.EOF
dim oRecord as new DataFile.tbl_cmr
oRecord.ReadRecord(rs)
arotbl_cmr.Append(oRecord)
rs.MoveNext
loop
return arotbl_cmr
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_cmr()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_cmr
//Usage:
//dim tbl_cmr as DataFile.tbl_cmr = DataFile.tbl_cmr.FindByID( id )
dim s as string
s = "Select * from tbl_cmr WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_cmr as new DataFile.tbl_cmr
tbl_cmr.ReadRecord(rs)
return tbl_cmr
End Function
134217984
0
1
id as Integer
DataFile.tbl_cmr
tbl_coa
1354395688
1
DataFile.ActiveRecordBase
1
0
auslieferungsschein_uid
1
134217984
auslieferungsschein_uid As Integer
134217984
auslieferungsschein_uid As Integer
0
0
hilfswerte_coa_uid
1
134217984
hilfswerte_coa_uid As Integer
134217984
hilfswerte_coa_uid As Integer
0
0
werte
1
134217984
werte As String
134217984
werte As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_datum
1
134217984
system_datum As Date
134217984
system_datum As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_editierdatum
1
134217984
system_editierdatum As Date
134217984
system_editierdatum As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_coa()
//Usage:
// dim arotbl_coa() as DataFile.tbl_coa = DataFile.tbl_coa.List("fieldName = somevalue", "fieldName")
dim arotbl_coa() as DataFile.tbl_coa
dim s as string
s = "select * From tbl_coa "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_coa
end
do until rs.EOF
dim oRecord as new DataFile.tbl_coa
oRecord.ReadRecord(rs)
arotbl_coa.Append(oRecord)
rs.MoveNext
loop
return arotbl_coa
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_coa()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_coa
//Usage:
//dim tbl_coa as DataFile.tbl_coa = DataFile.tbl_coa.FindByID( id )
dim s as string
s = "Select * from tbl_coa WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_coa as new DataFile.tbl_coa
tbl_coa.ReadRecord(rs)
return tbl_coa
End Function
134217984
0
1
id as Integer
DataFile.tbl_coa
tbl_coa_bestellung
1354395688
1
DataFile.ActiveRecordBase
1
0
bestellung_uid
1
134217984
bestellung_uid As Integer
134217984
bestellung_uid As Integer
0
0
hilfswerte_coa_uid
1
134217984
hilfswerte_coa_uid As Integer
134217984
hilfswerte_coa_uid As Integer
0
0
werte
1
134217984
werte As String
134217984
werte As String
0
0
werte_coa
1
134217984
werte_coa As String
134217984
werte_coa As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_coa_bestellung()
//Usage:
// dim arotbl_coa_bestellung() as DataFile.tbl_coa_bestellung = DataFile.tbl_coa_bestellung.List("fieldName = somevalue", "fieldName")
dim arotbl_coa_bestellung() as DataFile.tbl_coa_bestellung
dim s as string
s = "select * From tbl_coa_bestellung "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_coa_bestellung
end
do until rs.EOF
dim oRecord as new DataFile.tbl_coa_bestellung
oRecord.ReadRecord(rs)
arotbl_coa_bestellung.Append(oRecord)
rs.MoveNext
loop
return arotbl_coa_bestellung
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_coa_bestellung()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_coa_bestellung
//Usage:
//dim tbl_coa_bestellung as DataFile.tbl_coa_bestellung = DataFile.tbl_coa_bestellung.FindByID( id )
dim s as string
s = "Select * from tbl_coa_bestellung WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_coa_bestellung as new DataFile.tbl_coa_bestellung
tbl_coa_bestellung.ReadRecord(rs)
return tbl_coa_bestellung
End Function
134217984
0
1
id as Integer
DataFile.tbl_coa_bestellung
tbl_hilfswerte_coa
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
title
1
134217984
title As String
134217984
title As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_hilfswerte_coa()
//Usage:
// dim arotbl_hilfswerte_coa() as DataFile.tbl_hilfswerte_coa = DataFile.tbl_hilfswerte_coa.List("fieldName = somevalue", "fieldName")
dim arotbl_hilfswerte_coa() as DataFile.tbl_hilfswerte_coa
dim s as string
s = "select * From tbl_hilfswerte_coa "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_hilfswerte_coa
end
do until rs.EOF
dim oRecord as new DataFile.tbl_hilfswerte_coa
oRecord.ReadRecord(rs)
arotbl_hilfswerte_coa.Append(oRecord)
rs.MoveNext
loop
return arotbl_hilfswerte_coa
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_hilfswerte_coa()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_hilfswerte_coa
//Usage:
//dim tbl_hilfswerte_coa as DataFile.tbl_hilfswerte_coa = DataFile.tbl_hilfswerte_coa.FindByID( id )
dim s as string
s = "Select * from tbl_hilfswerte_coa WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_hilfswerte_coa as new DataFile.tbl_hilfswerte_coa
tbl_hilfswerte_coa.ReadRecord(rs)
return tbl_hilfswerte_coa
End Function
134217984
0
1
id as Integer
DataFile.tbl_hilfswerte_coa
tbl_kunden
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
kunden_nummer
1
134217984
kunden_nummer As String
134217984
kunden_nummer As String
0
0
titel
1
134217984
titel As String
134217984
titel As String
0
0
zahlungsbedingung
1
134217984
zahlungsbedingung As String
134217984
zahlungsbedingung As String
0
0
coa_kontakt
1
134217984
coa_kontakt As String
134217984
coa_kontakt As String
0
0
mhd
1
134217984
mhd As String
134217984
mhd As String
0
0
kontrakt_extern
1
134217984
kontrakt_extern As String
134217984
kontrakt_extern As String
0
0
kontrakt_intern
1
134217984
kontrakt_intern As String
134217984
kontrakt_intern As String
0
0
bemerkungen
1
134217984
bemerkungen As String
134217984
bemerkungen As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_kunden()
//Usage:
// dim arotbl_kunden() as DataFile.tbl_kunden = DataFile.tbl_kunden.List("fieldName = somevalue", "fieldName")
dim arotbl_kunden() as DataFile.tbl_kunden
dim s as string
s = "select * From tbl_kunden "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_kunden
end
do until rs.EOF
dim oRecord as new DataFile.tbl_kunden
oRecord.ReadRecord(rs)
arotbl_kunden.Append(oRecord)
rs.MoveNext
loop
return arotbl_kunden
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_kunden()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_kunden
//Usage:
//dim tbl_kunden as DataFile.tbl_kunden = DataFile.tbl_kunden.FindByID( id )
dim s as string
s = "Select * from tbl_kunden WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_kunden as new DataFile.tbl_kunden
tbl_kunden.ReadRecord(rs)
return tbl_kunden
End Function
134217984
0
1
id as Integer
DataFile.tbl_kunden
tbl_kunden_adressen
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
name1
1
134217984
name1 As String
134217984
name1 As String
0
0
name2
1
134217984
name2 As String
134217984
name2 As String
0
0
name3
1
134217984
name3 As String
134217984
name3 As String
0
0
land
1
134217984
land As String
134217984
land As String
0
0
plz
1
134217984
plz As String
134217984
plz As String
0
0
ort
1
134217984
ort As String
134217984
ort As String
0
0
strasse
1
134217984
strasse As String
134217984
strasse As String
0
0
telefon
1
134217984
telefon As String
134217984
telefon As String
0
0
telefax
1
134217984
telefax As String
134217984
telefax As String
0
0
email
1
134217984
email As String
134217984
email As String
0
0
adressenart
1
134217984
adressenart As Integer
134217984
adressenart As Integer
0
0
bemerkungen
1
134217984
bemerkungen As String
134217984
bemerkungen As String
0
0
dummy_uid
1
134217984
dummy_uid As Integer
134217984
dummy_uid As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_kunden_adressen()
//Usage:
// dim arotbl_kunden_adressen() as DataFile.tbl_kunden_adressen = DataFile.tbl_kunden_adressen.List("fieldName = somevalue", "fieldName")
dim arotbl_kunden_adressen() as DataFile.tbl_kunden_adressen
dim s as string
s = "select * From tbl_kunden_adressen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_kunden_adressen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_kunden_adressen
oRecord.ReadRecord(rs)
arotbl_kunden_adressen.Append(oRecord)
rs.MoveNext
loop
return arotbl_kunden_adressen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_kunden_adressen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_kunden_adressen
//Usage:
//dim tbl_kunden_adressen as DataFile.tbl_kunden_adressen = DataFile.tbl_kunden_adressen.FindByID( id )
dim s as string
s = "Select * from tbl_kunden_adressen WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_kunden_adressen as new DataFile.tbl_kunden_adressen
tbl_kunden_adressen.ReadRecord(rs)
return tbl_kunden_adressen
End Function
134217984
0
1
id as Integer
DataFile.tbl_kunden_adressen
tbl_laenderkennungen
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
bezeichnung
1
134217984
bezeichnung As String
134217984
bezeichnung As String
0
0
postkuerzel
1
134217984
postkuerzel As String
134217984
postkuerzel As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_laenderkennungen()
//Usage:
// dim arotbl_laenderkennungen() as DataFile.tbl_laenderkennungen = DataFile.tbl_laenderkennungen.List("fieldName = somevalue", "fieldName")
dim arotbl_laenderkennungen() as DataFile.tbl_laenderkennungen
dim s as string
s = "select * From tbl_laenderkennungen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_laenderkennungen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_laenderkennungen
oRecord.ReadRecord(rs)
arotbl_laenderkennungen.Append(oRecord)
rs.MoveNext
loop
return arotbl_laenderkennungen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_laenderkennungen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_laenderkennungen
//Usage:
//dim tbl_laenderkennungen as DataFile.tbl_laenderkennungen = DataFile.tbl_laenderkennungen.FindByID( id )
dim s as string
s = "Select * from tbl_laenderkennungen WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_laenderkennungen as new DataFile.tbl_laenderkennungen
tbl_laenderkennungen.ReadRecord(rs)
return tbl_laenderkennungen
End Function
134217984
0
1
id as Integer
DataFile.tbl_laenderkennungen
tbl_mikrobiologie
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
mikrobiologie_bezeichnung
1
134217984
mikrobiologie_bezeichnung As String
134217984
mikrobiologie_bezeichnung As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_mikrobiologie()
//Usage:
// dim arotbl_mikrobiologie() as DataFile.tbl_mikrobiologie = DataFile.tbl_mikrobiologie.List("fieldName = somevalue", "fieldName")
dim arotbl_mikrobiologie() as DataFile.tbl_mikrobiologie
dim s as string
s = "select * From tbl_mikrobiologie "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_mikrobiologie
end
do until rs.EOF
dim oRecord as new DataFile.tbl_mikrobiologie
oRecord.ReadRecord(rs)
arotbl_mikrobiologie.Append(oRecord)
rs.MoveNext
loop
return arotbl_mikrobiologie
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_mikrobiologie()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_mikrobiologie
//Usage:
//dim tbl_mikrobiologie as DataFile.tbl_mikrobiologie = DataFile.tbl_mikrobiologie.FindByID( id )
dim s as string
s = "Select * from tbl_mikrobiologie WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_mikrobiologie as new DataFile.tbl_mikrobiologie
tbl_mikrobiologie.ReadRecord(rs)
return tbl_mikrobiologie
End Function
134217984
0
1
id as Integer
DataFile.tbl_mikrobiologie
tbl_mikrobiologie_auslieferungsschein
1354395688
1
DataFile.ActiveRecordBase
1
0
auslieferungsschein_uid
1
134217984
auslieferungsschein_uid As Integer
134217984
auslieferungsschein_uid As Integer
0
0
mikrobiologie_uid
1
134217984
mikrobiologie_uid As Integer
134217984
mikrobiologie_uid As Integer
0
0
mikrobiologie_werte
1
134217984
mikrobiologie_werte As String
134217984
mikrobiologie_werte As String
0
0
mikrobiologie_spezifikation
1
134217984
mikrobiologie_spezifikation As String
134217984
mikrobiologie_spezifikation As String
0
0
mikrobiologie_coa_checked
1
134217984
mikrobiologie_coa_checked As Integer
134217984
mikrobiologie_coa_checked As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_mikrobiologie_auslieferungsschein()
//Usage:
// dim arotbl_mikrobiologie_auslieferungsschein() as DataFile.tbl_mikrobiologie_auslieferungsschein = DataFile.tbl_mikrobiologie_auslieferungsschein.List("fieldName = somevalue", "fieldName")
dim arotbl_mikrobiologie_auslieferungsschein() as DataFile.tbl_mikrobiologie_auslieferungsschein
dim s as string
s = "select * From tbl_mikrobiologie_auslieferungsschein "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_mikrobiologie_auslieferungsschein
end
do until rs.EOF
dim oRecord as new DataFile.tbl_mikrobiologie_auslieferungsschein
oRecord.ReadRecord(rs)
arotbl_mikrobiologie_auslieferungsschein.Append(oRecord)
rs.MoveNext
loop
return arotbl_mikrobiologie_auslieferungsschein
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_mikrobiologie_auslieferungsschein()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_mikrobiologie_auslieferungsschein
//Usage:
//dim tbl_mikrobiologie_auslieferungsschein as DataFile.tbl_mikrobiologie_auslieferungsschein = DataFile.tbl_mikrobiologie_auslieferungsschein.FindByID( id )
dim s as string
s = "Select * from tbl_mikrobiologie_auslieferungsschein WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_mikrobiologie_auslieferungsschein as new DataFile.tbl_mikrobiologie_auslieferungsschein
tbl_mikrobiologie_auslieferungsschein.ReadRecord(rs)
return tbl_mikrobiologie_auslieferungsschein
End Function
134217984
0
1
id as Integer
DataFile.tbl_mikrobiologie_auslieferungsschein
tbl_mikrobiologie_bestellung
1354395688
1
DataFile.ActiveRecordBase
1
0
bestellung_uid
1
134217984
bestellung_uid As Integer
134217984
bestellung_uid As Integer
0
0
mikrobiologie_uid
1
134217984
mikrobiologie_uid As Integer
134217984
mikrobiologie_uid As Integer
0
0
mikrobiologie_werte
1
134217984
mikrobiologie_werte As String
134217984
mikrobiologie_werte As String
0
0
mikrobiologie_spezifikation
1
134217984
mikrobiologie_spezifikation As String
134217984
mikrobiologie_spezifikation As String
0
0
mikrobiologie_coa_checked
1
134217984
mikrobiologie_coa_checked As Integer
134217984
mikrobiologie_coa_checked As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_mikrobiologie_bestellung()
//Usage:
// dim arotbl_mikrobiologie_bestellung() as DataFile.tbl_mikrobiologie_bestellung = DataFile.tbl_mikrobiologie_bestellung.List("fieldName = somevalue", "fieldName")
dim arotbl_mikrobiologie_bestellung() as DataFile.tbl_mikrobiologie_bestellung
dim s as string
s = "select * From tbl_mikrobiologie_bestellung "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_mikrobiologie_bestellung
end
do until rs.EOF
dim oRecord as new DataFile.tbl_mikrobiologie_bestellung
oRecord.ReadRecord(rs)
arotbl_mikrobiologie_bestellung.Append(oRecord)
rs.MoveNext
loop
return arotbl_mikrobiologie_bestellung
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_mikrobiologie_bestellung()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_mikrobiologie_bestellung
//Usage:
//dim tbl_mikrobiologie_bestellung as DataFile.tbl_mikrobiologie_bestellung = DataFile.tbl_mikrobiologie_bestellung.FindByID( id )
dim s as string
s = "Select * from tbl_mikrobiologie_bestellung WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_mikrobiologie_bestellung as new DataFile.tbl_mikrobiologie_bestellung
tbl_mikrobiologie_bestellung.ReadRecord(rs)
return tbl_mikrobiologie_bestellung
End Function
134217984
0
1
id as Integer
DataFile.tbl_mikrobiologie_bestellung
tbl_paletten
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
paletten_bezeichnung
1
134217984
paletten_bezeichnung As String
134217984
paletten_bezeichnung As String
0
0
paletten_gewicht
1
134217984
paletten_gewicht As Double
134217984
paletten_gewicht As Double
0
0
deleted
1
134217984
deleted As Double
134217984
deleted As Double
0
0
active
1
134217984
active As Double
134217984
active As Double
0
0
lastuser_uid
1
134217984
lastuser_uid As Double
134217984
lastuser_uid As Double
0
0
system_created
1
134217984
system_created As String
134217984
system_created As String
0
0
system_deleted
1
134217984
system_deleted As String
134217984
system_deleted As String
0
0
system_lastedit
1
134217984
system_lastedit As String
134217984
system_lastedit As String
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_paletten()
//Usage:
// dim arotbl_paletten() as DataFile.tbl_paletten = DataFile.tbl_paletten.List("fieldName = somevalue", "fieldName")
dim arotbl_paletten() as DataFile.tbl_paletten
dim s as string
s = "select * From tbl_paletten "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_paletten
end
do until rs.EOF
dim oRecord as new DataFile.tbl_paletten
oRecord.ReadRecord(rs)
arotbl_paletten.Append(oRecord)
rs.MoveNext
loop
return arotbl_paletten
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_paletten()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_paletten
//Usage:
//dim tbl_paletten as DataFile.tbl_paletten = DataFile.tbl_paletten.FindByID( id )
dim s as string
s = "Select * from tbl_paletten WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_paletten as new DataFile.tbl_paletten
tbl_paletten.ReadRecord(rs)
return tbl_paletten
End Function
134217984
0
1
id as Integer
DataFile.tbl_paletten
tbl_speditionen
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
titel
1
134217984
titel As String
134217984
titel As String
0
0
email1
1
134217984
email1 As String
134217984
email1 As String
0
0
email2
1
134217984
email2 As String
134217984
email2 As String
0
0
email3
1
134217984
email3 As String
134217984
email3 As String
0
0
email4
1
134217984
email4 As String
134217984
email4 As String
0
0
email5
1
134217984
email5 As String
134217984
email5 As String
0
0
email6
1
134217984
email6 As String
134217984
email6 As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_speditionen()
//Usage:
// dim arotbl_speditionen() as DataFile.tbl_speditionen = DataFile.tbl_speditionen.List("fieldName = somevalue", "fieldName")
dim arotbl_speditionen() as DataFile.tbl_speditionen
dim s as string
s = "select * From tbl_speditionen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_speditionen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_speditionen
oRecord.ReadRecord(rs)
arotbl_speditionen.Append(oRecord)
rs.MoveNext
loop
return arotbl_speditionen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_speditionen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_speditionen
//Usage:
//dim tbl_speditionen as DataFile.tbl_speditionen = DataFile.tbl_speditionen.FindByID( id )
dim s as string
s = "Select * from tbl_speditionen WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_speditionen as new DataFile.tbl_speditionen
tbl_speditionen.ReadRecord(rs)
return tbl_speditionen
End Function
134217984
0
1
id as Integer
DataFile.tbl_speditionen
tbl_speditionen_adressen
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
spedition_uid
1
134217984
spedition_uid As Integer
134217984
spedition_uid As Integer
0
0
titel
1
134217984
titel As String
134217984
titel As String
0
0
name1
1
134217984
name1 As String
134217984
name1 As String
0
0
strasse
1
134217984
strasse As String
134217984
strasse As String
0
0
plz
1
134217984
plz As String
134217984
plz As String
0
0
ort
1
134217984
ort As String
134217984
ort As String
0
0
land
1
134217984
land As String
134217984
land As String
0
0
telefon
1
134217984
telefon As String
134217984
telefon As String
0
0
telefax
1
134217984
telefax As String
134217984
telefax As String
0
0
ansprechpartner
1
134217984
ansprechpartner As String
134217984
ansprechpartner As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_speditionen_adressen()
//Usage:
// dim arotbl_speditionen_adressen() as DataFile.tbl_speditionen_adressen = DataFile.tbl_speditionen_adressen.List("fieldName = somevalue", "fieldName")
dim arotbl_speditionen_adressen() as DataFile.tbl_speditionen_adressen
dim s as string
s = "select * From tbl_speditionen_adressen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_speditionen_adressen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_speditionen_adressen
oRecord.ReadRecord(rs)
arotbl_speditionen_adressen.Append(oRecord)
rs.MoveNext
loop
return arotbl_speditionen_adressen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_speditionen_adressen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_speditionen_adressen
//Usage:
//dim tbl_speditionen_adressen as DataFile.tbl_speditionen_adressen = DataFile.tbl_speditionen_adressen.FindByID( id )
dim s as string
s = "Select * from tbl_speditionen_adressen WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_speditionen_adressen as new DataFile.tbl_speditionen_adressen
tbl_speditionen_adressen.ReadRecord(rs)
return tbl_speditionen_adressen
End Function
134217984
0
1
id as Integer
DataFile.tbl_speditionen_adressen
tbl_transport_ust
1354395688
1
DataFile.ActiveRecordBase
1
0
bestellung_uid
1
134217984
bestellung_uid As Integer
134217984
bestellung_uid As Integer
0
0
kunden_adressen_uid
1
134217984
kunden_adressen_uid As Integer
134217984
kunden_adressen_uid As Integer
0
0
spedition_uid
1
134217984
spedition_uid As Integer
134217984
spedition_uid As Integer
0
0
benutzerwerk_uid
1
134217984
benutzerwerk_uid As Integer
134217984
benutzerwerk_uid As Integer
0
0
spedition_adresse
1
134217984
spedition_adresse As String
134217984
spedition_adresse As String
0
0
liefer_adresse
1
134217984
liefer_adresse As String
134217984
liefer_adresse As String
0
0
mengen_angaben
1
134217984
mengen_angaben As String
134217984
mengen_angaben As String
0
0
gewicht_angaben
1
134217984
gewicht_angaben As String
134217984
gewicht_angaben As String
0
0
artikel_beschreibung
1
134217984
artikel_beschreibung As String
134217984
artikel_beschreibung As String
0
0
auslieferungs_datum
1
134217984
auslieferungs_datum As Date
134217984
auslieferungs_datum As Date
0
0
anlieferungs_datum
1
134217984
anlieferungs_datum As Date
134217984
anlieferungs_datum As Date
0
0
frachtzahler
1
134217984
frachtzahler As String
134217984
frachtzahler As String
0
0
warenwert
1
134217984
warenwert As String
134217984
warenwert As String
0
0
anrede
1
134217984
anrede As String
134217984
anrede As String
0
0
bemerkungen
1
134217984
bemerkungen As String
134217984
bemerkungen As String
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_transport_ust()
//Usage:
// dim arotbl_transport_ust() as DataFile.tbl_transport_ust = DataFile.tbl_transport_ust.List("fieldName = somevalue", "fieldName")
dim arotbl_transport_ust() as DataFile.tbl_transport_ust
dim s as string
s = "select * From tbl_transport_ust "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_transport_ust
end
do until rs.EOF
dim oRecord as new DataFile.tbl_transport_ust
oRecord.ReadRecord(rs)
arotbl_transport_ust.Append(oRecord)
rs.MoveNext
loop
return arotbl_transport_ust
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_transport_ust()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_transport_ust
//Usage:
//dim tbl_transport_ust as DataFile.tbl_transport_ust = DataFile.tbl_transport_ust.FindByID( id )
dim s as string
s = "Select * from tbl_transport_ust WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_transport_ust as new DataFile.tbl_transport_ust
tbl_transport_ust.ReadRecord(rs)
return tbl_transport_ust
End Function
134217984
0
1
id as Integer
DataFile.tbl_transport_ust
tbl_verpackungen
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
verpackung_bezeichnung
1
134217984
verpackung_bezeichnung As String
134217984
verpackung_bezeichnung As String
0
0
verpackung_gewicht
1
134217984
verpackung_gewicht As Double
134217984
verpackung_gewicht As Double
0
0
verpackung_faktor
1
134217984
verpackung_faktor As Double
134217984
verpackung_faktor As Double
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_verpackungen()
//Usage:
// dim arotbl_verpackungen() as DataFile.tbl_verpackungen = DataFile.tbl_verpackungen.List("fieldName = somevalue", "fieldName")
dim arotbl_verpackungen() as DataFile.tbl_verpackungen
dim s as string
s = "select * From tbl_verpackungen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_verpackungen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_verpackungen
oRecord.ReadRecord(rs)
arotbl_verpackungen.Append(oRecord)
rs.MoveNext
loop
return arotbl_verpackungen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_verpackungen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_verpackungen
//Usage:
//dim tbl_verpackungen as DataFile.tbl_verpackungen = DataFile.tbl_verpackungen.FindByID( id )
dim s as string
s = "Select * from tbl_verpackungen WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_verpackungen as new DataFile.tbl_verpackungen
tbl_verpackungen.ReadRecord(rs)
return tbl_verpackungen
End Function
134217984
0
1
id as Integer
DataFile.tbl_verpackungen
tbl_werk
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
namebezeichnung
1
134217984
namebezeichnung As String
134217984
namebezeichnung As String
0
0
namezusatz
1
134217984
namezusatz As String
134217984
namezusatz As String
0
0
strasse
1
134217984
strasse As String
134217984
strasse As String
0
0
strassezusatz
1
134217984
strassezusatz As String
134217984
strassezusatz As String
0
0
plz
1
134217984
plz As String
134217984
plz As String
0
0
ort
1
134217984
ort As String
134217984
ort As String
0
0
laenderid
1
134217984
laenderid As String
134217984
laenderid As String
0
0
deleted
1
134217984
deleted As Integer
134217984
deleted As Integer
0
0
active
1
134217984
active As Integer
134217984
active As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_deleted
1
134217984
system_deleted As Date
134217984
system_deleted As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_werk()
//Usage:
// dim arotbl_werk() as DataFile.tbl_werk = DataFile.tbl_werk.List("fieldName = somevalue", "fieldName")
dim arotbl_werk() as DataFile.tbl_werk
dim s as string
s = "select * From tbl_werk "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_werk
end
do until rs.EOF
dim oRecord as new DataFile.tbl_werk
oRecord.ReadRecord(rs)
arotbl_werk.Append(oRecord)
rs.MoveNext
loop
return arotbl_werk
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_werk()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_werk
//Usage:
//dim tbl_werk as DataFile.tbl_werk = DataFile.tbl_werk.FindByID( id )
dim s as string
s = "Select * from tbl_werk WHERE uid = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_werk as new DataFile.tbl_werk
tbl_werk.ReadRecord(rs)
return tbl_werk
End Function
134217984
0
1
id as Integer
DataFile.tbl_werk
tbl_zusammengefasste_bestellungen
1354395688
1
DataFile.ActiveRecordBase
1
0
master_uid
1
134217984
master_uid As Integer
134217984
master_uid As Integer
0
0
child_uid
1
134217984
child_uid As Integer
134217984
child_uid As Integer
0
0
lastuser_uid
1
134217984
lastuser_uid As Integer
134217984
lastuser_uid As Integer
0
0
system_created
1
134217984
system_created As Date
134217984
system_created As Date
0
0
system_lastedit
1
134217984
system_lastedit As Date
134217984
system_lastedit As Date
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.tbl_zusammengefasste_bestellungen()
//Usage:
// dim arotbl_zusammengefasste_bestellungen() as DataFile.tbl_zusammengefasste_bestellungen = DataFile.tbl_zusammengefasste_bestellungen.List("fieldName = somevalue", "fieldName")
dim arotbl_zusammengefasste_bestellungen() as DataFile.tbl_zusammengefasste_bestellungen
dim s as string
s = "select * From tbl_zusammengefasste_bestellungen "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return arotbl_zusammengefasste_bestellungen
end
do until rs.EOF
dim oRecord as new DataFile.tbl_zusammengefasste_bestellungen
oRecord.ReadRecord(rs)
arotbl_zusammengefasste_bestellungen.Append(oRecord)
rs.MoveNext
loop
return arotbl_zusammengefasste_bestellungen
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.tbl_zusammengefasste_bestellungen()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.tbl_zusammengefasste_bestellungen
//Usage:
//dim tbl_zusammengefasste_bestellungen as DataFile.tbl_zusammengefasste_bestellungen = DataFile.tbl_zusammengefasste_bestellungen.FindByID( id )
dim s as string
s = "Select * from tbl_zusammengefasste_bestellungen WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim tbl_zusammengefasste_bestellungen as new DataFile.tbl_zusammengefasste_bestellungen
tbl_zusammengefasste_bestellungen.ReadRecord(rs)
return tbl_zusammengefasste_bestellungen
End Function
134217984
0
1
id as Integer
DataFile.tbl_zusammengefasste_bestellungen
view_logistik_auftraege
1354395688
1
DataFile.ActiveRecordBase
1
0
uid
1
134217984
uid As Integer
134217984
uid As Integer
0
0
kunden_uid
1
134217984
kunden_uid As Integer
134217984
kunden_uid As Integer
0
0
titel
1
134217984
titel As String
134217984
titel As String
0
0
auslieferungs_datum
1
134217984
auslieferungs_datum As Date
134217984
auslieferungs_datum As Date
0
0
artikel_bezeichnung_intern
1
134217984
artikel_bezeichnung_intern As String
134217984
artikel_bezeichnung_intern As String
0
0
artikel_bezeichnung_extern
1
134217984
artikel_bezeichnung_extern As String
134217984
artikel_bezeichnung_extern As String
0
0
List
1
134217984
Shared Function List(sCriteria as string = "", sOrderBy as string = "") As DataFile.view_logistik_auftraege()
//Usage:
// dim aroview_logistik_auftraege() as DataFile.view_logistik_auftraege = DataFile.view_logistik_auftraege.List("fieldName = somevalue", "fieldName")
dim aroview_logistik_auftraege() as DataFile.view_logistik_auftraege
dim s as string
s = "select * From view_logistik_auftraege "
if sCriteria <> "" then
s = s + " WHERE " + sCriteria
end
if sOrderBy.trim <> "" then
s = s + " ORDER BY " + sOrderBy
end
dim rs as RecordSet = gDB.SQLSelect(s)
If gdb.error then
break
System.debugLog gDB.ErrorMessage
return aroview_logistik_auftraege
end
do until rs.EOF
dim oRecord as new DataFile.view_logistik_auftraege
oRecord.ReadRecord(rs)
aroview_logistik_auftraege.Append(oRecord)
rs.MoveNext
loop
return aroview_logistik_auftraege
End Function
134217984
0
1
sCriteria as string = "", sOrderBy as string = ""
DataFile.view_logistik_auftraege()
FindByID
1
134217984
Shared Function FindByID(id as Integer) As DataFile.view_logistik_auftraege
//Usage:
//dim view_logistik_auftraege as DataFile.view_logistik_auftraege = DataFile.view_logistik_auftraege.FindByID( id )
dim s as string
s = "Select * from view_logistik_auftraege WHERE = " + str(id)
dim rs as RecordSet = gDB.SQLSelect(s)
if gdb.error then
System.debugLog gDB.ErrorMessage
return nil
end
if rs.RecordCount = 0 then return nil
dim view_logistik_auftraege as new DataFile.view_logistik_auftraege
view_logistik_auftraege.ReadRecord(rs)
return view_logistik_auftraege
End Function
134217984
0
1
id as Integer
DataFile.view_logistik_auftraege