Objects and classes

Hi All
I am new to ABAP Objects and i feel lil difficult  to under the concept and classes..can any one please give me with small example to easily understand about the tole of objects and classes..
Thanks and Regards,
Arun joseph

Hi arun,
These are very simple concepts.There is no need to worry about it.
Object is an instance of a class.Class is an abstract description of an object. Class is a set of instructions that is used to build an object.  Class represents  properties of an object.
eg: Vehical, Car,Bird,Box,Student
Object represents a properties of real time entity  like
engine, color,marks, legs,height,width etc.
The following links provide more information with examples.   
Link:[http://help.sap.com/saphelp_nw70/helpdata/EN/c3/225b5c54f411d194a60000e8353423/frameset.htm]
Link:[http://help.sap.com/saphelp_nw70/helpdata/EN/c3/225b5c54f411d194a60000e8353423/frameset.htm]
if any more doubts, come to me with your doubts.
if it useful, reward points.
Thank you,
Prasad G.V.K

Similar Messages

  • Difference Between Business Object And Class Object

    Hi all,
    Can any one tel me the difference between business object and class Object....
    Thanks...
    ..Ashish

    Hello Ashish
    A business object is a sematic term whereas a class (object) is a technical term.
    Business objects are all important objects within R/3 e.g. sales order, customer, invoice, etc.
    The business objects are defined in the BOR (transaction SWO1). The have so-called "methods" like
    BusinessObject.Create
    BusinessObject.GetDetail
    BusinessObject.Change
    which are implemented (usually) by BAPIs, e.g.:
    Business Object = User
    User.Create => BAPI_USER_CREATE1
    User.GetDetail => BAPI_USER_GET_DETAIL
    CONCLUSION: Business Object >< Class (Object)
    Regards
      Uwe

  • How to find objects and classes

    hi
    any notes or path on objects and classes on crm?

    Hi Kumara
    I beleive your talking about the Classification system.
    To get to this go here: SPRO->IMG->Cross-Application Components - -> Classification System - -> Classes - -> Maintain Object Keys
    This will give a list of Tables which are currently set with Object Keys, you may need to add a new table and configure.
    Next
    To get to this go here: SPRO->IMG->Cross-Application Components - -> Classification System - -> Classes - -> Maintain Object Types and Class Types
    Here you assign a Class Type to Link your Table from the previous step, this class new Class Type will be used with a New Class to created in the following steps.
    Goto Transaction CT04 - Create Characteristics
    Here you create effectively attributes of a Class (Fields)
    Goto Transaction CL01 - Create New Class
                              or CL02 - Maintain Class
    Create a new class linked to your Class Type from previous steps
    On the Char.. Tab you can add the new Characteristics created in the previous step to your new Class.
    Based on the Object Key from the first step, these new attributes shoulds all now link together. If the key is of type 'RAW'  (Binary) it may not be possible to link correctly, therefore some ABAP maybe required to create the link, depending on your application.
    Hope this helps.
    <b>Reward with points if useful.</b>
    Regards
    Arden

  • How to extract List of Objects and Classes in BO

    Hi
    I need to get a list of all Classes and Objects in a universe.
    Is there a way to extract this list in an excel.
    I dont need the PDF file which can be saved from a universe with all the universe information.
    I just need a plain excel file with the classes, objects under it, object definitions etc.
    Is there a VBA code to do so?
    I know there is one to extract the user info from CMS.
    Please help.
    Thanks in advance.

    Option Explicit
    Dim DesignerApp As Designer.Application
    Dim Univ As Designer.Universe
    Dim Wksht As Excel.Worksheet
    Sub GetInfo()
        Set DesignerApp = New Designer.Application
        DesignerApp.Visible = True
        Call DesignerApp.LoginAs
        Set Univ = DesignerApp.Universes.Open
        'DesignerApp.Visible = False
        Set Wksht = ThisWorkbook.Worksheets("Objects")
        Wksht.Unprotect
        Wksht.Columns().ClearContents
        Wksht.Cells(1, 1) = "Class"
        Wksht.Cells(1, 2) = "Objects"
        Wksht.Cells(1, 3) = "Table Reference"
        Wksht.Cells(1, 4) = "Object Description"
        Wksht.Cells(1, 5) = "Object Type"
        Wksht.Cells(1, 6) = "Qualification"
        Call GetObjectInfo(Univ.Classes, 1)
        Wksht.Protect
        DesignerApp.Quit
        Set DesignerApp = Nothing
    End Sub
    Private Sub GetObjectInfo(Clss, RowNum As Long)
        Dim Cls As Designer.Class
        Dim Obj As Designer.Object
        For Each Cls In Clss
            For Each Obj In Cls.Objects
                RowNum = RowNum + 1
                Wksht.Cells(RowNum, 1) = Cls.Name
                Wksht.Cells(RowNum, 2) = Obj.Name
                Wksht.Cells(RowNum, 3) = Obj.Select
                Wksht.Cells(RowNum, 4) = Obj.Description
                If Obj.Type = 2 Then
                    Wksht.Cells(RowNum, 5) = "Character"
                ElseIf Obj.Type = 3 Then
                    Wksht.Cells(RowNum, 5) = "Date"
                ElseIf Obj.Type = 1 Then
                    Wksht.Cells(RowNum, 5) = "Number"
                Else
                    Wksht.Cells(RowNum, 5) = "Long Text"
                End If
                If Obj.Qualification = dsDimensionObject Then Wksht.Cells(RowNum, 6) = "Dimension"
                If Obj.Qualification = dsDetailObject Then Wksht.Cells(RowNum, 6) = "Detail"
                If Obj.Qualification = dsMeasureObject Then Wksht.Cells(RowNum, 6) = "Measure"
            Next Obj
            If Cls.Classes.Count > 0 Then
                Call GetObjectInfo(Cls.Classes, RowNum)
            End If
        Next Cls
    End Sub
    Above is the macro to document BO universes (Classes, Objects, TableName.FieldName, Object description, Object Type and Object Qualification ).
    You need to open the excel sheet->Go to TOOLS> MACRO --->VB EDITOR (Alt+F11) and paste this code in MODULE1
    To run the macro, You need to press Alt+F8 key and Click RUN button. Then designer window pops out, enter user id and password and select the required universe.
    Enjoy Macro

  • Need HELP with objects and classes problem (program compiles)

    Alright guys, it is a homework problem but I have definitely put in the work. I believe I have everything right except for the toString method in my Line class. The program compiles and runs but I am not getting the right outcome and I am missing parts. I will post my problems after the code. I will post the assignment (sorry, its long) also. If anyone could help I would appreciate it. It is due on Monday so I am strapped for time.
    Assignment:
    -There are two ways to uniquely determine a line represented by the equation y=ax+b, where a is the slope and b is the yIntercept.
    a)two diffrent points
    b)a point and a slope
    !!!write a program that consists of three classes:
    1)Point class: all data MUST be private
    a)MUST contain the following methods:
    a1)public Point(double x, double y)
    a2)public double x ()
    a3public double y ()
    a4)public String toString () : that returns the point in the format "(x,y)"
    2)Line class: all data MUST be private
    b)MUST contain the following methods:
    b1)public Line (Point point1, Point point2)
    b2)public Line (Point point1, double slope)
    b3)public String toString() : that returns the a text description for the line is y=ax+b format
    3)Point2Line class
    c1)reads the coordinates of a point and a slope and displays the line equation
    c2)reads the coordinates of another point (if the same points, prompt the user to change points) and displays the line equation
    ***I will worry about the user input later, right now I am using set coordinates
    What is expected when the program is ran: example
    please input x coordinate of the 1st point: 5
    please input y coordinate of the 1st point: -4
    please input slope: -2
    the equation of the 1st line is: y = -2.0x+6.0
    please input x coordinate of the 2nd point: 5
    please input y coordinate of the 2nd point: -4
    it needs to be a diffrent point from (5.0,-4.0)
    please input x coordinate of the 2nd point: -1
    please input y coordinate of the 2nd point: 2
    the equation of the 2nd line is: y = -1.0x +1.0
    CODE::
    public class Point{
         private double x = 0;
         private double y = 0;
         public Point(){
         public Point(double x, double y){
              this.x = x;
              this.y = y;
         public double getX(){
              return x;
         public double setX(){
              return this.x;
         public double getY(){
              return y;
         public double setY(){
              return this.y;
         public String toString(){
              return "The point is " + this.x + ", " + this.y;
    public class Line
         private double x = 0;
         private double y = 0;
         private double m = 0;
         private double x2 = 0;
         private double y2 = 0;
         public Line()
         public Line (Point point1, Point point2)
              this.x = point1.getX();
              this.y = point1.getY();
              this.x2 = point2.getX();
              this.y2 = point2.getY();
              this.m = slope(point1, point2);
         public Line (Point point1, double slope)
              this.x = point1.getX();
              this.y = point1.getY();
         public double slope(Point point1, Point point2)//finds slope
              double m1 = (point1.getY() - point2.getY())/(point1.getX() - point2.getX());
              return m1;
         public String toString()
              double temp = this.x- this.x2;
              return this.y + " = " +temp + "" + "(" + this.m + ")" + " " + "+ " + this.y2;
              //y-y1=m(x-x1)
    public class Point2Line
         public static void main(String[]args)
              Point p = new Point(3, -3);
              Point x = new Point(10, 7);
              Line l = new Line(p, x);
              System.out.println(l.toString());
    }My problems:
    I dont have the right outcome due to I don't know how to set up the toString in the Line class.
    I don't know where to put if statements for if the points are the same and you need to prompt the user to put in a different 2nd point
    I don't know where to put in if statements for the special cases such as if the line the user puts in is a horizontal or vertical line (such as x=4.7 or y=3.4)
    Edited by: ta.barber on Apr 20, 2008 9:44 AM
    Edited by: ta.barber on Apr 20, 2008 9:46 AM
    Edited by: ta.barber on Apr 20, 2008 10:04 AM

    Sorry guys, I was just trying to be thorough with the assignment. Its not that if the number is valid, its that you cannot put in the same coordinated twice.
    public class Line
         private double x = 0;
         private double y = 0;
         private double m = 0;
         private double x2 = 0;
         private double y2 = 0;
         public Line()
         public Line (Point point1, Point point2)
              this.x = point1.getX();
              this.y = point1.getY();
              this.x2 = point2.getX();
              this.y2 = point2.getY();
              this.m = slope(point1, point2);
         public Line (Point point1, double slope)
              this.x = point1.getX();
              this.y = point1.getY();
         public double slope(Point point1, Point point2)//finds slope
              double m1 = (point1.getY() - point2.getY())/(point1.getX() - point2.getX());
              return m1;
         public String toString()
              double temp = this.x- this.x2;
              return this.y + " = " +temp + "" + "(" + this.m + ")" + " " + "+ " + this.y2;
              //y-y1=m(x-x1)
    public class Point2Line
         public static void main(String[]args)
              Point p = new Point(3, -3);
              Point x = new Point(10, 7);
              Line l = new Line(p, x);
              System.out.println(l.toString());
    }The problem is in these lines of code.
    public double slope(Point point1, Point point2) //if this method finds the slope than how would i use the the two coordinates plus "m1" to
              double m1 = (point1.getY() - point2.getY())/(point1.getX() - point2.getX());
              return m1;
         public String toString()
              double temp = this.x- this.x2;
              return this.y + " = " +temp + "" + "(" + this.m + ")" + " " + "+ " + this.y2;
              //y-y1=m(x-x1)
         }if slope method finds the slope than how would i use the the two coordinates + "m1" to create a the line in toString?

  • Help with objects and classes

    the only problems i have is getting the bestTime value to display at the end and also getting the proper message dialog boxes to appear by calling the other program instead of putting JOptionPane.showInputDialog...... in this part
    Swimmer swim = new Swimmer();
              swim.setName(JOptionPane.showInputDialog(null, "Input user's name"));
              swim.setInitTime(Double.parseDouble(JOptionPane.showInputDialog(null, "Enter initial time")));
              swim.setFinTime(Double.parseDouble(JOptionPane.showInputDialog(null, "Enter final time")));there should be a way i can call the other program where i have the methods in but im not sure as to how to do it.
    import javax.swing.JOptionPane;
    public class Swimmer
         private String name;
         private double initTime;
         private double finalTime;
         private double bestTime = 0;
         public void setName(String n)
              name = n;
         public void setInitTime(double t)
              initTime = t;
         public void setFinTime(double f)
              finalTime = f;
         public void setBest(double b)
              bestTime = b;
         public String getName()
         String userName = "";
              userName = JOptionPane.showInputDialog(null,
              "Input swimmer's name");
              return name;
         public double getInitTime()
              double initialT;
              initialT = Double.parseDouble(
                   JOptionPane.showInputDialog(null, "Enter initial time"));     
              return initTime;
         public double getFinTime()
              double finalT;
              finalT = Double.parseDouble(
                   JOptionPane.showInputDialog(null, "Enter final time"));
              return finalTime;
         public double getBest(double initTime, double finalTime)
              initTime = 0;
              finalTime = 0;     
              double bestTime = 0;
              if (finalTime > initTime)
                   bestTime = initTime;
              else
                   if (initTime > finalTime)
                        bestTime = finalTime;
                   return bestTime;
         public void output()
         String outString = "";
         outString += name + "\n";
         outString += "Best Time: " + bestTime + " seconds\n";
         JOptionPane.showMessageDialog(null, outString);
    }new other java file. the problem i was talking about up top is for this program. instead of using the joption dialog boxes there should be a way to call the other program where i have methods but im not sure how to do it.
    import javax.swing.JOptionPane;
    public class Swimmer2
         public static void main(String[] args)
              Swimmer swim = new Swimmer();
              swim.setName(JOptionPane.showInputDialog(null, "Input user's name"));
              swim.setInitTime(Double.parseDouble(JOptionPane.showInputDialog(null, "Enter initial time")));
              swim.setFinTime(Double.parseDouble(JOptionPane.showInputDialog(null, "Enter final time")));
              swim.output();
    }

    swim.setName(swim.getName());would seem to work.
    Very odd design though.

  • Object and class problem

    I have a homework assignment that i cant seem to figure out. I have to create a class that has an id, date when made, balance, interest rate (annually converted to monthly), be able to make a withdraw and show the new balance as well as make a deposit and make a new balance. After that, create a testAccount to test it.
    import java.util.Date;
    class Account1{
         public static int id = 1122;
         public static double balance = 20000;
         public static double annualInterestRate = 0.045;
         public static double withdraw = 2500;
         public static double deposit = 3000;
         Date dateCreated= new Date();
         double monthlyInterestRate = 0;
         public static void Account()//no arg
         public int getid()//constructor for id
              return id;
         public double getbalance()//constructor for balance
              return balance * monthlyInterestRate;
         public double getannualInterestRate()// constructor for annual interest rate
              return annualInterestRate;
         public double getMonthlyInterestRate(double monthlyInterestRate)//method for monthly interest rate
              return monthlyInterestRate = annualInterestRate / 1200;
         public double withDraw ()// method for withdraw
              if (balance >= withdraw)
                   balance -= withdraw;
                   return balance;
              else
               return balance = 0;
         public double deposit ()
              balance += deposit;
              return balance;
         public String toString() {
            return "this returns the original balance " + balance
              + ", the deposit amount " + deposit + ", the withdraw amount "
              + withdraw + ",the id number " + id + ", the monthly interest rate " + monthlyInterestRate ;
    }what am i doing wrong with the date=new date?
    how do i send date to the string?
    how do i invoke the two methods to get a new balance?
    what am i doing wrong with the monthly interest rate?
    below is what i have for the testAccount
    public class Account{
         public static void main(String[] args) {
         Account1 account= new Account1();
       System.out.println(account.toString());
    }

    ta.barber wrote:
    Hye, please explain about the debugging statements. The teach has never explained how to use them to fix our problemsIt just means to add methods that print values at various parts in the program. For example, if you had a method factorial(), like this:
    public int factorial (int x) {
      return x * factorial(x - 1);
    }Then you could add a statement like this to see what's going on:
    public int factorial (int x) {
      System.err.println("x is: " + x);
      return x * factorial(x - 1);
    }Then when you ran this modified version of the program, you'd see that the x keeps getting smaller forever.
    Teachers should show you debugging tricks immediately.
    There are other things you can do, to make debugging easier. You can use a debugger, although that tends to be more labor-intensive than it's worth. A debugger is a program that lets you step through your program line-by-line. You can also follow some idioms to make debugging statements easier, such as:
    private final static boolean DEBUG = true;
    public int factorial (int x) {
      if (DEBUG) System.err.println("x is: " + x);
      return x * factorial(x - 1);
    }If you do this, you can turn off all debugging statements by just setting DEBUG to false and recompiling.
    There are also logging packages that let you specify debugging statements, like log4j or java.util.logging. That's probably overkill at this point though.

  • To view database Java Source and Class code in SQL Developer - Do this...

    I've wanted something like this for a while.. Hope this helps someone else...
    Make a master detail report...
    1. Click the reports tab.
    2. Right click on "user defined reports" and select "add report"
    3. Type "Java Source Object and Class Code" into the name field.
    4. Make sure "Style" is set to "Table".
    5. Paste this code into the "SQL" window.
    select OBJECT_NAME, OBJECT_TYPE, to_char(created,'DD-MON-YYYY HH24:MI:SS') Created, to_char(LAST_DDL_TIME,'DD-MON-YYYY HH24:MI:SS') "Last DDL", STATUS
         from user_objects
        where object_type in ('JAVA SOURCE')
        order by object_name6. Click "Add child"
    7. Make sure "Style" is set to "Code" in the child.
    8. Paste the following code into the SQL window of the child.
    select text from user_source where name = :OBJECT_NAME order by line9. Click Apply..
    10. Enjoy...
    no semicolons after the sql....
    Message was edited by:
    slugo

    Mark,
    Thanks Check this out people can now subscribe to the public reports out no the exchange.
    http://krisrice.blogspot.com/2007/10/marks-post-on-forums-got-me-to-do.html
    -kris

  • Is Active Directory's ExtensionAttributes9 a field in user object and how to retrieve it in the class type userprincipal?

    Hi, I'm using VS2012.
    I want to use this ExtensionAttributes9 field to store date value for each user object.  I use UserPrincipal class, a collection of these objects are then bind to a gridview control.  Is ExtensionAttributes9 a field in AD user object? 
    How can I access it and bind to the gridview?
    If this field isn't available then what other field can use?
    Thank you.
    Thank you

    UserPrincipal is basically a wrapper around DirectoryEntry:
    http://msdn.microsoft.com/en-us/library/system.directoryservices.directoryentry.aspx and only provides a subset of the Active Directory, although the most common, attributes that are available for the user object.  The attribute that you
    seek is not one of them.
    By utilizing the method that I provided you a link to, it will return the underlying DirectoryEntry that was used to build the UserPrincipal object and should allow you to access the attribute that you seek.
    It would be greatly appreciated if you would mark any helpful entries as helpful and if the entry answers your question, please mark it with the Answer link.

  • BOR Object and ABAP Class

    Hi,
        Can anybody say when to use BOR object and Abap class in the task with an example.
    Thanks,
    Mugundhan

    There is no any specific condition or rule that for this purpose you need to use BOR and Class , it depends on your requirement. not only the requirement but also the new techniques to make classes not just as simple way to create objects but when you use classes in the Workflows they are not simple classes but they are BUSINESS CLASSES which makes a lot of difference.
    Check the blogs of [Jocelyn Dart|https://www.sdn.sap.com/irj/scn/wiki?path=/pages/viewpage.action%3fpageid=55566]

  • How to create unique objects in class and store

    Hi, I have a class that opens a text file and reads in the
    lines. each line holds an ip address. i need to create x amount of
    objects, and each object is assigned a unique ip address from the file.
    and here i am stuck. the class reads in the file, then i think it should create an object for each line read in and assign that object the ip address. i want to store the objects in some sort of array or collection, and i guess each object will need a unique name, but i dont know how many objects until i read in the file and count the number of lines. can anyone give me any pointers as to how i should create/store the objects
    many thanx
    ness

    You could use your own object:
    public class Test {
      public class IPNumber {
        public int ip;
        public IPNumber(int ip) {
          this.ip = ip;
      public Test() {
        int numberOfIPs = 5; // this is your number of lines
        IPNumber[] ips = new IPNumber[numberOfIPs];
        for (int i = 0; i < numberOfIPs; i++) ips[i] = new IPNumber(i); // assign ip address from file
      public static void main(String args[]){
        new Test();
    }or you could store the ips as strings:
    public class Test {
      public Test() {
        final int numberOfIPs = 5; // this is your number of lines
        final java.util.ArrayList al = new java.util.ArrayList(numberOfIPs);
        for (int i = 0; i < numberOfIPs; i++) al.add(""+i); // assign ip address from file   
      public static void main(String args[]){
        new Test();
    }p.s Objects don't have names

  • Business Object and Global Classes

    is there any link between the Business Objects And Global Classes?
    Sameer

    Hi,
    BO is basicallya reporting tool...
    and now BO will be used for reporting on BW.....
    Check these details BW and BO integration..
    follow the link
    www.scribd.com/doc/7805501/BI-BO-Integration
    http://www.jonerp.com/content/view/170/46/
    Have a look at this:
    http://www.businessobjects.com/products/dataintegration/dataintegrator/sap.asp
    This link has lots of PDF documents between SAP and Business object:
    http://www.businessobjects.com/solutions/sap/default.asp
    Also check:
    http://www.dmreview.com/article_sub.cfm?articleId=2839
    http://searchsap.techtarget.com/general/0,295582,sid21_gci1077480,00.html
    check the foll links.
    http://www.businessobjects.com/solutions/sap/
    http://72.14.235.104/search?q=cache:A5mUGEzyGLUJ:www.businessobjects.com/pdf/solutions/xi_sap_insight.pdfBW%26BUSINESSOBJECTS&hl=en&gl=in&ct=clnk&cd=5
    http://www.buisnessobjects.com/news/press/press2003/cust_sapbw_webseminar.asp
    http://www.buisnessobjects.com/solutions/enterprise_solutions/operational_bi.asp
    http://www.businessobjects.com/products/
    http://help.sap.com/saphelp_erp2005/helpdata/en/a4/1be541f321c717e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/30/8d27425005ca7ee10000000a1550b0/frameset.htm
    regards
    Venkat...
    Edited by: Venkata Narayana Jakkampudi on Dec 30, 2008 12:57 PM

  • Local object and development class?

    wht r local objects ?
    and
    wht is development class?

    Hi,
    Local Objects are the Objects which are not transportable.They are saved in the server n we can't create a Tranport Request.
    Development classes collect together development environment objects that can be considered as a unit and should therefore also be corrected and transported together. A development class can, for example, consist of a transaction or a group of related transactions.
    You can say in simple word, Development class is like Folder which will have the collection of objects(Report, class etc) for a assigned Proejcts.
    If you save objects in Local Class ,you are not able to transport from one system to another.If you save it into a Development Class ,you can transport objects from one system to another.
    Have a look at these links.
    http://help.sap.com/saphelp_46c/helpdata/en/d1/80194b454211d189710000e8322d00/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/af/40bd38652c8c42e10000009b38f8cf/content.htm
    Regards,
    Priyanka.

  • Why is the Integer wrapper class object and primitive object equal ?

    This is my code :
    package obectorientation;
    public class oo3 {
         public static void main(String[] args) {
              int x=1; float y=1.0F;
              int x1=1;
                                    Integer y1= new Integer(1);
              if(x1==y1)
                   System.out.println("Equal");
              else
                   System.out.println("NOT Equal");
    O/P : EqualMy question is why are x1 and y1 equal ? Won't y1 be a different object and x1 just a primitive variable ?
    Thanks in Advance.

    Specifically, it's because y1 gets unboxed before the comparison. What's really happening is effectively: if ( x1 == y1.intValue() )

  • Array of objects in class private data and calling overridden VIs on these objects?

    Hello
    I am developing part of an application using the actor framework and have run into problems.
    I have a several actors and will try briefly describe them and their intended functionality. All actors are started by a Controller actor and in the actor core for the controller I have the possibility to do a lot of intiliazation etc.
    Logger:
    Has a message (Send Log Message) that other actors can use to write to the log. It is supposed to take a string input and a log level (error, warning, debug etc). This message chain sends data to the actor core with a user event.
    The Actor Core of Logger is supposed to save the incoming message to a log, but should be able to do it in several different ways (file, database, email or whatever).
    Logger Output:
    Abstract class that has a dynamic dispatch vi called "Write Output" that all it's children are supposed to overwrite.
    Logger Output File
    Child of Logger Output and overwrites "Write Output" to save the string to a file on disk.
    Problem:
    I want to be able to set up the actor core for Logger once and for all but still be able to create new children of "Logger Output" and have them be handled in the Logger actor core.
    My idea was to have Logger use an array of objects as private data and initialize this array in the Controller actor core.
    In the logger actor core I could then auto index the array and use each element (each Logger Output child) and the abstract "Write Output" vi to get the correct functionality.
    HOWEVER, I cannot get this to work properly and I think I have misunderstood something or stared myself blind on this problem. I have tried 3 different methods when it comes to private data for Logger.
    1. Labview Object
    2. Array of Labview Object
    3. Array of Logger Output Object
    Of these 3 methods, I can only get the first one to work and that doesn't accomplish what I want in the end (being able to add more classes without changing private data / actor core for Logger).
    I have included 3 screenshots that show snippets of 2 of the actor cores and the private data. File names should correspond to my description above.
    The screenshot "Logger actor core.png" shows a very fast test of the 3 different methods I described above. Each of the 3 tunnel inputs to the event structure can be wired to the "Reference" input of "To More Specific Class", but only method 1 (Labview Object) works.
    If you need additional information / screenshots or whatever please ask.
    Thanks in advance
    Attachments:
    Logger ctl.PNG ‏8 KB
    Logger actor core.PNG ‏25 KB
    Controller Actor Core.PNG ‏11 KB

    Thanks for the reply and sorry for the confusing OP. It was meant as a quick test and a way to skip making 10+ screenshots .
    I updated the actor core for the Controller and Logger to be less confusing (hopefully) and attached 2 screenshots.
    I agree with you that it would be a good idea to make a message for the controller that can launch new children of the L" abstract actor, but for these tests I have just launched it the easy way (dragging it to the controller actor core).
    Both Logger Output and Logger Output File are actors and in Logger Output there is a dynamic dispatch vi called Write Output that I want to override in all its children.
    The problem is when I run the actor core of Logger (see the screenshot) only the abstract version (the one in Logger Output) of Write Output is executed, not the overridden version from Logger Output File.
    When I did the same thing with the actor cores looking like the did in my original post, then the correct overridden version got executed when I used the method with one Labview Object in private data (not any array or an array of Logger Output objects).
     EDIT: I just tried to have the Logger private data be a single Logger Output object and writing the Logger Output File to that piece of private data in the Controller and the correct Write Output override method gets called now. So apparently I have done something stupid when it comes to creating the array of Logger Output objects and writing them in the controller? The private data is in the Logger actor so I have simply right clicked and chosen "New VI for Data Member Access" and chosen "Write" for "Element of Array of Logger Output Objects".
    Attachments:
    Controller Actor core updated.PNG ‏10 KB
    Logger actor core updated.PNG ‏24 KB

Maybe you are looking for