Beispiel #1
0
  /**
   * Add Node to correct tree
   *
   * @param ctx cpntext
   * @param treeType tree type
   * @param Record_ID id
   * @param trxName transaction
   * @return true if node added
   */
  public static boolean addNode(Properties ctx, String treeType, int Record_ID, String trxName) {
    // TODO: Check & refactor this
    // Get Tree
    int AD_Tree_ID = 0;
    MClient client = MClient.get(ctx);
    I_AD_ClientInfo ci = client.getInfo();

    if (TREETYPE_Activity.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_Activity_ID();
    else if (TREETYPE_BoM.equals(treeType))
      throw new IllegalArgumentException("BoM Trees not supported");
    else if (TREETYPE_BPartner.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_BPartner_ID();
    else if (TREETYPE_Campaign.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_Campaign_ID();
    else if (TREETYPE_ElementValue.equals(treeType))
      throw new IllegalArgumentException("ElementValue cannot use this API");
    else if (TREETYPE_Menu.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_Menu_ID();
    else if (TREETYPE_Organization.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_Org_ID();
    else if (TREETYPE_Product.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_Product_ID();
    else if (TREETYPE_ProductCategory.equals(treeType))
      throw new IllegalArgumentException("Product Category Trees not supported");
    else if (TREETYPE_Project.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_Project_ID();
    else if (TREETYPE_SalesRegion.equals(treeType)) AD_Tree_ID = ci.getAD_Tree_SalesRegion_ID();

    if (AD_Tree_ID == 0) throw new IllegalArgumentException("No Tree found");
    MTree_Base tree = MTree_Base.get(ctx, AD_Tree_ID, trxName);
    if (tree.get_ID() != AD_Tree_ID)
      throw new IllegalArgumentException("Tree found AD_Tree_ID=" + AD_Tree_ID);

    // Insert Tree in correct tree
    boolean saved = false;
    if (TREETYPE_Menu.equals(treeType)) {
      MTree_NodeMM node = new MTree_NodeMM(tree, Record_ID);
      saved = node.save();
    } else if (TREETYPE_BPartner.equals(treeType)) {
      MTree_NodeBP node = new MTree_NodeBP(tree, Record_ID);
      saved = node.save();
    } else if (TREETYPE_Product.equals(treeType)) {
      MTree_NodePR node = new MTree_NodePR(tree, Record_ID);
      saved = node.save();
    } else {
      MTree_Node node = new MTree_Node(tree, Record_ID);
      saved = node.save();
    }
    return saved;
  } // addNode
Beispiel #2
0
  /**
   * ************************************************************************ Get Node TableName
   *
   * @param treeType tree type
   * @return node table name, e.g. AD_TreeNode
   */
  public static String getNodeTableName(String treeType) {
    String nodeTableName = "AD_TreeNode";
    if (TREETYPE_Menu.equals(treeType)) nodeTableName += "MM";
    else if (TREETYPE_BPartner.equals(treeType)) nodeTableName += "BP";
    else if (TREETYPE_Product.equals(treeType)) nodeTableName += "PR";
    // else if (TREETYPE_ProductCategory.equals(treeType))
    // nodeTableName += TREETYPE_ProductCategory;

    else if (TREETYPE_CMContainer.equals(treeType)) nodeTableName += "CMC";
    else if (TREETYPE_CMContainerStage.equals(treeType)) nodeTableName += "CMS";
    else if (TREETYPE_CMMedia.equals(treeType)) nodeTableName += "CMM";
    else if (TREETYPE_CMTemplate.equals(treeType)) nodeTableName += "CMT";
    //
    else if (TREETYPE_User1.equals(treeType)) nodeTableName += "U1";
    else if (TREETYPE_User2.equals(treeType)) nodeTableName += "U2";
    else if (TREETYPE_User3.equals(treeType)) nodeTableName += "U3";
    else if (TREETYPE_User4.equals(treeType)) nodeTableName += "U4";
    return nodeTableName;
  } // getNodeTableName