threedimarr.mos |
(!*******************************************************
Mosel Example Problems
======================
file threedimarr.mos
````````````````````
Reading 3-dimensional arrays.
- Using 'initializations from' with the odbc driver -
(c) 2010 Fair Isaac Corporation
author: S. Heipcke, July 2010, rev. Jan. 2014
*******************************************************!)
model ThreeDimArr
uses "mmodbc"
parameters
CSTR = "threedim.mdb" ! Use Access database `threedim.mdb'
! CSTR = 'threedim.sqlite' ! Use SQLite database `threedim.sqlite' directly
! Use SQLite database `threedim.sqlite' via ODBC
! CSTR = 'DSN=sqlite;DATABASE=threedim.sqlite'
end-parameters
declarations
I: range
J: set of string
K = 1..5 ! The last index set must be defined in the model
A: dynamic array(I,J,K) of real
end-declarations
initializations from 'mmodbc.odbc:debug;noindex;' + CSTR
A as 'Tab_23'
end-initializations
writeln("A: ")
forall(i in I, j in J, k in K | exists(A(i,j,k)))
writeln("A(", i, ",", j, ",", k, "): ", A(i,j,k))
end-model
|
|
threedimarr2.mos |
(!*******************************************************
Mosel Example Problems
======================
file threedimarr2.mos
`````````````````````
Reading 3-dimensional arrays.
- Using SQL commands -
(c) 2014 Fair Isaac Corporation
author: S. Heipcke, Jan. 2014
*******************************************************!)
model "ThreeDimArr (SQL)"
uses "mmodbc", "mmsystem"
parameters
! CSTR = "threedim.xls" ! Use Excel spreadsheet `threedim.xls'
CSTR = "threedim.mdb" ! Use Access database `threedim.mdb'
! CSTR = 'threedim.sqlite' ! Use SQLite database `threedim.sqlite' directly
! Use SQLite database `threedim.sqlite' via ODBC
! CSTR = 'DSN=sqlite;DATABASE=threedim.sqlite'
end-parameters
declarations
I: range
J: set of string
K = 1..5 ! The last index set must be defined in the model
A: dynamic array(I,J,K) of real
Idx3: text
end-declarations
SQLconnect(CSTR)
setparam("SQLndxcol", false) ! Partially indexed data
forall(k in K) Idx3+= (", Index3_"+k )
SQLexecute("select Index1, Index2" + Idx3 + " from Tab_23", A)
SQLdisconnect
writeln("A: ")
forall(i in I, j in J, k in K | exists(A(i,j,k)))
writeln("A(", i, ",", j, ",", k, "): ", A(i,j,k))
end-model
|
|
threedimarr3.mos |
(!*******************************************************
Mosel Example Problems
======================
file threedimarr3.mos
`````````````````````
Reading 3-dimensional arrays.
- Using 'initializations from' with Excel -
(c) 2010 Fair Isaac Corporation
author: S. Heipcke, July 2010, rev. Apr. 2014
*******************************************************!)
model "ThreeDimArr (Excel)"
uses "mmsheet", "mmodbc"
declarations
I: range
J: set of string
K = 1..5 ! The last index set must be defined in the model
A,B: dynamic array(I,J,K) of real
end-declarations
initializations from 'mmsheet.excel:partndx;threedim.xls'
A as 'Tab_23'
end-initializations
writeln("A: ")
forall(i in I, j in J, k in K | exists(A(i,j,k)))
writeln("A(", i, ",", j, ",", k, "): ", A(i,j,k))
(!
initializations from 'mmodbc.odbc:debug;partndx;threedim.xls'
B as 'Tab23odbc'
end-initializations
writeln("B: ")
forall(i in I, j in J, k in K | exists(B(i,j,k)))
writeln("B(", i, ",", j, ",", k, "): ", B(i,j,k))
!)
end-model
|
|
threedimarr4.mos |
(!*******************************************************
Mosel Example Problems
======================
file threedimarr4.mos
`````````````````````
Reading 3-dimensional arrays.
- Using OCI statements -
(c) 2014 Fair Isaac Corporation
author: S. Heipcke, Jan. 2014
*******************************************************!)
model "ThreeDimArr (OCI)"
uses "mmoci", "mmsystem"
parameters
DB="myname/mypassword@dbname" ! Login to Oracle database (not provided)
CNCT="mmoci.oci:debug;"+DB
end-parameters
declarations
I: range
J: set of string
K = 1..5 ! The last index set must be defined in the model
A: dynamic array(I,J,K) of real
Idx3: text
end-declarations
setparam("OCIdebug",true)
OCIlogon(DB)
setparam("OCIndxcol", false) ! Partially indexed data
forall(k in K) Idx3+= (", Index3_"+k )
OCIexecute("select Index1, Index2" + Idx3 + " from Tab_23", A)
OCIlogoff
writeln("A: ")
forall(i in I, j in J, k in K | exists(A(i,j,k)))
writeln("A(", i, ",", j, ",", k, "): ", A(i,j,k))
end-model
|
|
threedimarr5.mos |
(!*******************************************************
Mosel Example Problems
======================
file threedimarr5.mos
`````````````````````
Reading 3-dimensional arrays.
- Using 'initializations from' with the xls/xlsx driver -
(c) 2012 Fair Isaac Corporation
author: S. Heipcke, Dec. 2012, rev. Apr. 2014
*******************************************************!)
model "ThreeDimArr (generic spreadsheet)"
uses "mmsheet"
parameters
CSTR1= 'mmsheet.xls:threedim.xls'
CSTR2= 'mmsheet.xlsx:threedim.xlsx'
end-parameters
declarations
I: range
J: set of string
K = 1..5 ! The last index set must be defined in the model
A,B,C: dynamic array(I,J,K) of real
end-declarations
initializations from CSTR1
A as 'partndx;Tab_23'
end-initializations
writeln("A: ")
forall(i in I, j in J, k in K | exists(A(i,j,k)))
writeln("A(", i, ",", j, ",", k, "): ", A(i,j,k))
initializations from CSTR2
B as 'partndx;Tab_23'
end-initializations
writeln("B: ")
forall(i in I, j in J, k in K | exists(B(i,j,k)))
writeln("B(", i, ",", j, ",", k, "): ", B(i,j,k))
! Using explicit cell addresses instead of a named range:
initializations from CSTR1
C as 'partndx;[Sheet1$A3:G8]'
end-initializations
writeln("C: ")
forall(i in I, j in J, k in K | exists(C(i,j,k)))
writeln("C(", i, ",", j, ",", k, "): ", C(i,j,k))
end-model
|
|
threedimarr6.mos |
(!*******************************************************
Mosel Example Problems
======================
file threedimarr6.mos
`````````````````````
Reading 3-dimensional arrays.
- Using 'initializations from' with the csv driver -
(c) 2012 Fair Isaac Corporation
author: S. Heipcke, Dec. 2012, rev. Apr. 2014
*******************************************************!)
model "ThreeDimArr (CSV)"
uses "mmsheet"
parameters
CSTR= 'mmsheet.csv:threedim.csv'
end-parameters
declarations
I: range
J: set of string
K = 1..5 ! The last index set must be defined in the model
A: dynamic array(I,J,K) of real
end-declarations
initializations from CSTR
A as 'partndx;[A3:G8]'
end-initializations
writeln("A: ")
forall(i in I, j in J, k in K | exists(A(i,j,k)))
writeln("A(", i, ",", j, ",", k, "): ", A(i,j,k))
end-model
|
|