LAPI Error in LL_ListInbox
Dear, I built a function that returns information about users tasks, it was working perfect under LL9.2 for 5 years. we did the LL upgrade to LL9.6, unfortunatly this function is not working well, ParentID for the task for example could not be retreived, it thougs error number 0X80010005 (LL_E_TYPEERROR), as per LAPI documentation ParentID is of integer type and I am using LL_RecordGetInteger to get the data as you can see below, ther is no logic behind this error the same function is working with LL9.2 but not wint 9.6 is there any suggestions? here is the code:Public Function GetAssignments(ByVal Session_ID As Long) As ADODB.Recordset Dim inbox As Long Dim InboxRec As Long Dim Assignment As Long Dim i, J, RecNo, Kind As Long Dim Temp As String * 255 Dim Dump As Long Dim status As Long Dim Assignment_List As New ADODB.Recordset Dim MyDate As Date Dim tempval As Long Dim LL_DATE As Long With Assignment_List .Fields.Append "ParentID", 20 .Fields.Append "DataID", 20 .Fields.Append "Name", 8 .Fields.Append "UserID", 20 .Fields.Append "GroupID", 20 .Fields.Append "UPermissions", 20 .Fields.Append "GPermissions", 20 .Fields.Append "WPermissions", 20 .Fields.Append "SPermissions", 20 .Fields.Append "ACLCount", 20 .Fields.Append "CreatedBy", 20 .Fields.Append "CreateDate", 7 .Fields.Append "ModifyDate", 7 .Fields.Append "DComment", 8 .Fields.Append "DCategory", 8 .Fields.Append "SubType", 20 .Fields.Append "ChildCount", 20 .Fields.Append "AssignedTo", 8 .Fields.Append "DateAssigned", 7 .Fields.Append "DateDue", 7 .Fields.Append "DateCompleted", 7 .Fields.Append "Status", 20 .Fields.Append "Priority", 20 .Fields.Append "Permissions", 20 .Fields.Append "delayStatus", 20 .Open End With status = LL_ValueAlloc(inbox) status = LL_ValueAlloc(InboxRec) status = LL_ValueAlloc(Assignment) status = LL_ListInbox(Session_ID, inbox) status = LL_ValueGetLength(inbox, RecNo) J = 0 For i = 0 To RecNo - 1 status = LL_TableGetRecord(inbox, i, InboxRec) status = LL_RecordGetInteger(InboxRec, "Kind", Kind) If Kind = 1 Then ' 1 for project tasks status = LL_RecordGetValue(InboxRec, "Data", Assignment) Assignment_List.AddNew status = LL_RecordGetInteger(Assignment, "ParentID", tempval) MsgBox (LCase(Hex(status))) Assignment_List!ParentId = tempval status = LL_RecordGetInteger(Assignment, "DataID", tempval) Assignment_List!DataID = tempval status = LL_RecordGetInteger(Assignment, "userID", tempval) Assignment_List!userID = tempval status = LL_RecordGetInteger(Assignment, "groupID", tempval) Assignment_List!GroupID = tempval status = LL_RecordGetInteger(Assignment, "UPermissions", tempval) Assignment_List!UPermissions = tempval status = LL_RecordGetInteger(Assignment, "GPermissions", tempval) Assignment_List!GPermissions = tempval status = LL_RecordGetInteger(Assignment, "WPermissions", tempval) Assignment_List!WPermissions = tempval status = LL_RecordGetInteger(Assignment, "SPermissions", tempval) Assignment_List!SPermissions = tempval status = LL_RecordGetInteger(Assignment, "ACLCount", tempval) Assignment_List!ACLCount = tempval status = LL_RecordGetInteger(Assignment, "CreatedBy", tempval) Assignment_List!CreatedBy = tempval status = LL_RecordGetInteger(Assignment, "SubType", tempval) Assignment_List!SubType = tempval status = LL_RecordGetInteger(Assignment, "ChildCount", tempval) Assignment_List!ChildCount = tempval status = LL_RecordGetInteger(Assignment, "Status", tempval) Assignment_List!status = tempval status = LL_RecordGetInteger(Assignment, "Priority", tempval) Assignment_List!Priority = tempval status = LL_RecordGetInteger(Assignment, "Permissions", tempval) Assignment_List!Permissions = tempval status = LL_RecordGetLength(Assignment, "Name", Dump) Temp = String(Dump, 77) status = LL_RecordGetString(Assignment, "Name", Temp, Dump + 1, Dump) Assignment_List!Name = Trim(Temp) status = LL_RecordGetLength(Assignment, "DComment", Dump) If Dump >= 0 Then Temp = String(Dump, 77) status = LL_RecordGetString(Assignment, "DComment", Temp, Dump + 1, Dump) Assignment_List!DComment = Trim(Temp) End If status = LL_RecordGetLength(Assignment, "DCategory", Dump) If Dump >= 0 Then Temp = String(Dump, 77) status = LL_RecordGetString(Assignment, "DCategory", Temp, Dump + 1, Dump) Assignment_List!DCategory = Trim(Temp) End If status = LL_RecordGetLength(Assignment, "AssignedTo", Dump) If Dump >= 0 Then Temp = String(Dump, 77) status = LL_RecordGetString(Assignment, "AssignedTo", Temp, Dump + 1, Dump) Assignment_List!assignedto = Trim(Temp) End If status = LL_RecordGetDate(Assignment, "CreateDate", LL_DATE) Assignment_List!CreateDate = Date_From_LL(LL_DATE) status = LL_RecordGetDate(Assignment, "ModifyDate", LL_DATE) Assignment_List!ModifyDate = Date_From_LL(LL_DATE) status = LL_RecordGetDate(Assignment, "DateAssigned", LL_DATE) Assignment_List!DateAssigned = Date_From_LL(LL_DATE) status = LL_RecordGetDate(Assignment, "DateCompleted", LL_DATE) Assignment_List!DateCompleted = Date_From_LL(LL_DATE) status = LL_RecordGetDate(Assignment, "DateDue", LL_DATE) Assignment_List!DateDue = Date_From_LL(LL_DATE) MyDate = Date If MyDate <= Assignment_List!DateDue Then Assignment_List!delayStatus = 0 Else Assignment_List!delayStatus = -1 End If J = J + 1 Assignment_List.Update End If Next status = LL_ValueFree(Assignment) status = LL_ValueFree(InboxRec) status = LL_ValueFree(inbox) Set GetAssignments = Assignment_List Set Assignment_List = NothingEnd Function