Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ECOBUL

ECOBUL.m

Go to the documentation of this file.
  1. ECOBUL ;BP/CMF - List Utility object
  1. ;;2.0;EVENT CAPTURE;**100**;8 May 96;Build 21
  1. ;@author - Chris Flegel
  1. ;@date - 17 May 2009
  1. ;@version - 1.0
  1. ;;
  1. Q
  1. ;;protected methods
  1. ADD(RESULT,HANDLE,PARAMS) ; add simple list item
  1. D METHOD(.RESULT,HANDLE_".List.Add."_PARAMS)
  1. Q
  1. ;;
  1. CLEAR(RESULT,HANDLE,PARAMS) ; restore object to default state
  1. D CLEAR^ECOBU(.RESULT,HANDLE,PARAMS) ; parent method
  1. D METHOD(.RESULT,HANDLE_".List.Clear")
  1. Q
  1. ;;
  1. COLLECT(RESULT,HANDLE,CHILD) ; add a child object to the list
  1. N ITEM
  1. D ADD(.ITEM,HANDLE,CHILD)
  1. S @HANDLE@("Pr","list","Handle",CHILD)=ITEM
  1. S RESULT=ITEM
  1. Q
  1. ;;
  1. FIRST(RESULT,HANDLE,PARAMS) ;
  1. D METHOD(.RESULT,HANDLE_".List.Criteria.First")
  1. Q
  1. ;;
  1. FIND(RESULT,HANDLE,PARAMS) ;
  1. D METHOD(.RESULT,HANDLE_".List.Criteria.Find."_PARAMS)
  1. Q
  1. ;;
  1. FIND1(RESULT,HANDLE,PARAMS) ;
  1. D METHOD(.RESULT,HANDLE_".List.Criteria.Find1."_PARAMS)
  1. Q
  1. ;;
  1. GET(RESULT,HANDLE,SCOPE,PROPERTY) ;
  1. ; if unique get methods, call them first, else call parent
  1. D GET^ECOB(.RESULT,HANDLE,SCOPE,PROPERTY)
  1. Q
  1. ;;
  1. GETITEM(RESULT,HANDLE,ITEM) ; get simple list item
  1. D METHOD(.RESULT,HANDLE_".List.GetItem."_ITEM)
  1. Q
  1. ;;
  1. INFO(RESULT,HANDLE,PARAMS) ;
  1. N LIST,JUSTIFY,OFFSET
  1. D PARSE("Offset",PARAMS)
  1. D INFO^ECOBU(.RESULT,HANDLE,PARAMS) ; parent method
  1. D METHOD^ECOB2(.LIST,HANDLE_".GetList")
  1. D METHOD^ECOBL(.RESULT,LIST_".Info."_JUSTIFY)
  1. Q
  1. ;;
  1. ISHANDLE(RESULT,HANDLE,PARAMS) ; is value a collected handle
  1. D METHOD(.RESULT,HANDLE_".List.IsHandle."_PARAMS)
  1. Q
  1. ;
  1. LAST(RESULT,HANDLE,PARAMS) ; get the last referenced item from the list
  1. D METHOD(.RESULT,HANDLE_".List.Criteria.Last")
  1. Q
  1. ;
  1. NEXT(RESULT,HANDLE,PARAMS) ; get the next item from the list
  1. D METHOD(.RESULT,HANDLE_".List.Criteria.Next")
  1. Q
  1. ;;
  1. SETITEM(RESULT,HANDLE,PARAMS) ; set simple list item
  1. D METHOD(.RESULT,HANDLE_".List.SetItem."_PARAMS)
  1. Q
  1. ;;
  1. PARSE(PARSE,VALUE) ;
  1. D PARSE^ECOBL(PARSE,VALUE)
  1. Q
  1. ;;
  1. ECOBL(RESULT,HANDLE,ARGUMENT) ; handler for the actual list object
  1. N CHILD
  1. D METHOD(.CHILD,HANDLE_".GetList")
  1. D METHOD^ECOBL(.RESULT,CHILD_"."_ARGUMENT)
  1. Q
  1. ;;
  1. OB2(RESULT,ARGUMENT) ;short cut to primitive object
  1. D METHOD^ECOB2(.RESULT,ARGUMENT) Q
  1. ;;
  1. OBM(RESULT,ARGUMENT) ;short cut to method object
  1. D METHOD^ECOBM(.RESULT,ARGUMENT) Q
  1. ;;
  1. ;; public methods
  1. CREATE(NAME) ; call parent first
  1. N HANDLE,CHILD,X
  1. S HANDLE=$$CREATE^ECOBU(NAME)
  1. ;;
  1. D METHOD(.X,HANDLE_".of.Set_name.List Utility")
  1. D METHOD(.X,HANDLE_".of.Set_class.EC OBU UTILITY LIST")
  1. D METHOD(.X,HANDLE_".of.Set_routine.METHOD^ECOBUL(.RESULT,ARGUMENT)")
  1. D METHOD(.X,HANDLE_".Root.Add.EC OBU UTILITY LIST")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.Add")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default Add for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.ADD^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.Value ... to be added")
  1. D METHOD(.X,CHILD_".mf.SetReturns.Item # added to the list")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Override.Clear")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Restore object to default state.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.CLEAR^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.")
  1. D METHOD(.X,CHILD_".mf.SetReturns.1")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.Find")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default Find for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.FIND^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.Value ... what to look for")
  1. D METHOD(.X,CHILD_".mf.SetReturns.Array of matches")
  1. ;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.Find1")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default Find1 for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.FIND1^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.Value ... what to look for")
  1. D METHOD(.X,CHILD_".mf.SetReturns.First matching value")
  1. ;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.First")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default First for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.FIRST^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.")
  1. D METHOD(.X,CHILD_".mf.SetReturns.Handle, Item or Value of first object")
  1. ;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.GetItem")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default GetItem for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.GETITEM^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.Item #")
  1. D METHOD(.X,CHILD_".mf.SetReturns.Value of item")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Override.Info")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Displays business information.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.INFO^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.[Justify]")
  1. D METHOD(.X,CHILD_".mf.SetReturns.1")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.Last")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default Last for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.LAST^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.")
  1. D METHOD(.X,CHILD_".mf.SetReturns.Handle, Item or Value of most recent object")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.Next")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default Next for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.NEXT^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.")
  1. D METHOD(.X,CHILD_".mf.SetReturns.Handle, Item or Value of next object")
  1. ;;
  1. D METHOD(.CHILD,HANDLE_".Methods.Add.SetItem")
  1. D METHOD(.X,CHILD_".mf.SetAddedByClass.List Utility")
  1. D METHOD(.X,CHILD_".mf.SetDescription.Default SetItem for list objects.")
  1. D METHOD(.X,CHILD_".mf.SetHandler.SETITEM^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,CHILD_".mf.SetParams.Item #.Value ... to be stored")
  1. D METHOD(.X,CHILD_".mf.SetReturns.1 if successful")
  1. ;;
  1. S CHILD=$$CREATE^ECOBL(NAME)
  1. D METHOD(.X,HANDLE_".Collect.SetChild."_CHILD)
  1. D METHOD(.X,HANDLE_".Collect.SetName.List")
  1. D METHOD(.X,HANDLE_".Collect.SetHandler.ECOBL^ECOBUL(.RESULT,HANDLE,PARAMS)")
  1. D METHOD(.X,HANDLE_".Collect.Execute")
  1. ;
  1. Q HANDLE
  1. ;;
  1. DESTROY(HANDLE) ; call parent last
  1. N CHILD
  1. D METHOD(.CHILD,HANDLE_".GetList")
  1. D DESTROY^ECOBL(CHILD)
  1. Q $$DESTROY^ECOBU(HANDLE)
  1. ;;
  1. METHOD(RESULT,ARGUMENT) ; argument=[handle].[method].(additional.params...)
  1. D METHOD^ECOBU(.RESULT,ARGUMENT) Q
  1. ;;