[futurebasic] RE: [FB] Array of Records containing arrays of Records containing arrays

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : December 2006 : Group Archive : Group : All Groups

From: "Dennis J. Fast" <dfast@...>
Date: Sat, 09 Dec 2006 10:06:18 -0800
OK, tried both approaches. I don't know if I can attach files. I'll put at
end of email as well as attach.
Strings(my preference) have problems:
============================================================
Error:  Byte index into a string is not available for String Arrays (yet.).
input #1, StuArray.yearArray[dayNum].PermNumArray$([attNum](studNum)

Error: var$[ Missing end ]
input #1, StuArray.yearArray[dayNum].PermNumArray$([attNum](studNum)
============================================================
The LONG approach kills FB_TEMP
/*  Error Report
Date/Time:      2006-12-09 09:40:27.637 -0800
OS Version:     10.4.7 (Build 8J135)
Report Version: 4

Command: FB_Temp
Path:    /Users/dfast/Desktop/Att Info/FB_Temp
Parent:  WindowServer [89]

Version: 1.0 (www.stazsoftware.com)

PID:    250
Thread: 0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_INVALID_ADDRESS (0x0001) at 0x04c4c668

Thread 0 Crashed:
0                       	0x00406d00 0x405040 + 7360
1   FB^3.Carbon.Runtime 	0x000c1458 main + 504
*/
Strings Approach File:
begin globals
  _numStudents = 3
  _numQtrGrds = 4
  _numDays = 10
  _numAttFlds = 14

BEGIN RECORD StudentDay
dim 8 PermNumArray$(_numAttFlds)
dim 8 DateArray$(_numAttFlds)
dim 1 AttCodeArray$(_numAttFlds)
end record

begin record Student
dim 2 qtrGrade$(_numQtrGrds)
dim yearArray(_numDays) as StudentDay
end record

  DIM FileName$, PROGRAM$
  dim as int Wx,Wy
  dim StuArray(_numStudents) as Student
  dim as long studNum, qtrnum, dayNum, attNum
end globals

output file "Att Info App"
PROGRAM$ = "Attendance Info Analyzer"

/* WRITTEN BY: Dennis J. Fast
           ID: BB1.40
         DATE: 12/9/06
   PURPOSE: The purpose of this program is to analyze attendance data
*/
LOCAL mode
 dim AN$
LOCAL FN Wait
DO
AN$ = INKEY$
UNTIL LEN(AN$) > 0
END FN

'~_Main Program

Wx = SYSTEM(_scrnWidth):Wy = SYSTEM(_scrnHeight)
WINDOW #1,PROGRAM$,(2,40)-(Wx-3,Wy-3), _DocNoGrow + _NoGoAway

TEXT 4,9,1,1
CLS

FileName$ = "AttInfo.txt"
OPEN "I",1,FileName$

for studNum = 1 to 10
for dayNum = 0 to 1
for attNum = 0 to 13
input #1, StuArray.yearArray[dayNum].PermNumArray$[attNum](studNum)
input #1, StuArray.yearArray[dayNum].DateArray$[attNum](studNum)
input #1, StuArray.yearArray[dayNum].AttCodeArray$[attNum](studNum)

print StuArray.yearArray[dayNum].PermNumArray$[attNum](studNum),
print StuArray.yearArray[dayNum].DateArray$[attNum](studNum),
print StuArray.yearArray[dayNum].AttCodeArray$[attNum](studNum)
print

next attNum
next dayNum
fn Wait
cls
next studNum

CLOSE #1

/*

'~200,0,Temp Project
'~200,1,73

Error:  Byte index into a string is not available for String Arrays (yet.).
in file Temp Project at line 73 in Wait
Yinput #1, StuArray.yearArray[dayNum].PermNumArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,73

Error: var$E[ Missing end ]
in file Temp Project at line 73 in Wait
Yinput #1, StuArray.yearArray[dayNum].PermNumArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,74

Error:  Byte index into a string is not available for String Arrays (yet.).
in file Temp Project at line 74 in Wait
Yinput #1, StuArray.yearArray[dayNum].DateArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,74

Error: var$E[ Missing end ]
in file Temp Project at line 74 in Wait
Yinput #1, StuArray.yearArray[dayNum].DateArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,75

Error:  Byte index into a string is not available for String Arrays (yet.).
in file Temp Project at line 75 in Wait
Yinput #1, StuArray.yearArray[dayNum].AttCodeArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,75

Error: var$E[ Missing end ]
in file Temp Project at line 75 in Wait
Yinput #1, StuArray.yearArray[dayNum].AttCodeArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,77

Error:  Byte index into a string is not available for String Arrays (yet.).
in file Temp Project at line 77 in Wait
Yprint StuArray.yearArray[dayNum].PermNumArray$Y[attNum](studNum),
'~'

'~200,0,Temp Project
'~200,1,77

Error: var$E[ Missing end ]
in file Temp Project at line 77 in Wait
Yprint StuArray.yearArray[dayNum].PermNumArray$Y[attNum](studNum),
'~'

'~200,0,Temp Project
'~200,1,78

Error:  Byte index into a string is not available for String Arrays (yet.).
in file Temp Project at line 78 in Wait
Yprint StuArray.yearArray[dayNum].DateArray$Y[attNum](studNum),
'~'

'~200,0,Temp Project
'~200,1,78

Error: var$E[ Missing end ]
in file Temp Project at line 78 in Wait
Yprint StuArray.yearArray[dayNum].DateArray$Y[attNum](studNum),
'~'

'~200,0,Temp Project
'~200,1,79

Error:  Byte index into a string is not available for String Arrays (yet.).
in file Temp Project at line 79 in Wait
Yprint StuArray.yearArray[dayNum].AttCodeArray$Y[attNum](studNum)
'~'

'~200,0,Temp Project
'~200,1,79

Error: var$E[ Missing end ]
in file Temp Project at line 79 in Wait
Yprint StuArray.yearArray[dayNum].AttCodeArray$Y[attNum](studNum)
'~'
********* End of PPC Code Compile *********
************* End of Compile **************
 Warnings: 0
   Errors: 12
LONG approach file
begin globals
  _numStudents = 3
  _numQtrGrds = 4
  _numDays = 180
  _numAttFlds = 14

BEGIN RECORD StudentDay
dim PermNumArray(_numAttFlds) as long
dim DateArray(_numAttFlds) as long
dim AttCodeArray(_numAttFlds) as byte
end record

begin record Student
dim qtrGrade(_numQtrGrds) as byte
dim yearArray(_numDays) as StudentDay
end record

  dim dummy$
  DIM FileName$, PROGRAM$
  dim 8 tempPermNum$
  dim 8 tempDate$
  dim 1 tempAttcode$
  dim as int Wx,Wy
  dim StuArray(_numStudents) as Student
  dim as long studNum, qtrnum, dayNum, attNum
end globals

output file "Att Info App"
PROGRAM$ = "Attendance Info Analyzer"

/* WRITTEN BY: Dennis J. Fast
           ID: BB1.40
         DATE: 12/9/06
   PURPOSE: The purpose of this program is to analyze attendance data
*/

'~_Main Program

Wx = SYSTEM(_scrnWidth):Wy = SYSTEM(_scrnHeight)
WINDOW #1,PROGRAM$,(2,40)-(Wx-3,Wy-3), _DocNoGrow + _NoGoAway
TEXT 4,9,1,1 : CLS

for studNum = 0 to 1
for dayNum = 0 to 1
for attNum = 0 to 1
input tempPermNum$'Enter 12345678
StuArray.yearArray[dayNum].PermNumArray[attNum](studNum) =
val&(tempPermNum$)

input tempDate$'Enter 87654321
StuArray.yearArray[dayNum].DateArray[attNum](studNum) = val&(tempDate$)

input tempAttCode$'Enter T
StuArray.yearArray[dayNum].AttCodeArray[attNum](studNum) = asc(tempAttCode$)

print StuArray.yearArray[dayNum].PermNumArray[attNum](studNum),
print StuArray.yearArray[dayNum].DateArray[attNum](studNum),
print StuArray.yearArray[dayNum].AttCodeArray[attNum](studNum)
print

next attNum
next dayNum

INPUT dummy$ : cls
next studNum

CLOSE #1


/*  Error Report
Date/Time:      2006-12-09 09:40:27.637 -0800
OS Version:     10.4.7 (Build 8J135)
Report Version: 4

Command: FB_Temp
Path:    /Users/dfast/Desktop/Att Info/FB_Temp
Parent:  WindowServer [89]

Version: 1.0 (www.stazsoftware.com)

PID:    250
Thread: 0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_INVALID_ADDRESS (0x0001) at 0x04c4c668

Thread 0 Crashed:
0                       	0x00406d00 0x405040 + 7360
1   FB^3.Carbon.Runtime 	0x000c1458 main + 504
*/


Attachments: