Package com.ipc.oce.metadata.objects

Source Code of com.ipc.oce.metadata.objects.OCChartsOfAccountsMetadataObject

package com.ipc.oce.metadata.objects;

import org.jinterop.dcom.common.JIException;
import org.jinterop.dcom.core.JIVariant;
import org.jinterop.dcom.impls.automation.IJIDispatch;

import com.ipc.oce.OCObject;
import com.ipc.oce.metadata.AttributeMetadataHolder;
import com.ipc.oce.metadata.collection.OCMetadataAccountingFlagCollection;
import com.ipc.oce.metadata.collection.OCMetadataAttributeCollection;
import com.ipc.oce.metadata.collection.OCMetadataExtDimensionAccountingFlagCollection;
import com.ipc.oce.metadata.collection.OCMetadataTabularSectionCollection;
import com.ipc.oce.metadata.collection._OCMetadataObjectPropertyValueCollection;


/**
* Используется для обращения к метаданным объекта конфигурации - план счетов.
* @author Konovalov
*
*/
public class OCChartsOfAccountsMetadataObject extends _OCCommonMetadataObject implements AttributeMetadataHolder{
  private OCMetadataAttributeCollection attributeCollection = null;
  private OCMetadataTabularSectionCollection tabularCollection = null;
 
  public OCChartsOfAccountsMetadataObject(OCObject object) {
    super(object);
  }

  public OCChartsOfAccountsMetadataObject(IJIDispatch aDispatch) {
    super(aDispatch);
  }

  public OCChartsOfAccountsMetadataObject(JIVariant aDispatch) throws JIException {
    super(aDispatch);
  }
 
  /**
   * Коллекция объектов метаданных, описывающих реквизиты данного объекта метаданных.
   */
  public OCMetadataAttributeCollection getAttributes() throws JIException{
    if (attributeCollection == null) {
      attributeCollection = new OCMetadataAttributeCollection(get("Attributes"));
    }
    return attributeCollection;
  }
 
  /**
   * Коллекция объектов метаданных, описывающих табличные части данного объекта метаданных.
   * @return
   * @throws JIException
   */
  public OCMetadataTabularSectionCollection getTabularSections() throws JIException{
    if (tabularCollection == null) {
      tabularCollection = new OCMetadataTabularSectionCollection(get("TabularSections"));
    }
    return tabularCollection;
  }
 
  /**
   * Коллекция объектов метаданных, описывающих признаки учета плана счетов.
   * @return
   * @throws JIException
   */
  public OCMetadataAccountingFlagCollection getAccountingFlags() throws JIException{
    return new OCMetadataAccountingFlagCollection(get("AccountingFlags"));
  }
 
  /**
   * Если свойство установлено в значение Истина, то упорядочивание по полю Код будет фактически подменяться упорядочиванием по полю Порядок. Другими словами, упорядочивание по полю Код и по полю Порядок будут давать одинаковый результат. При этом по умолчанию список счетов будет упорядочиваться по полю Код.
   * Если свойство установлено в значение Ложь, то упорядочивание по полю Код будет фактическим, а по умолчанию список счетов будет упорядочиваться (по полю Код или по полю Порядок) в зависимости от значения свойства ДлинаПорядка.
   * @return
   * @throws JIException
   */
  public Boolean getAutoOrderByCode() throws JIException{
    return get("AutoOrderByCode").getObjectAsBoolean();
  }
 
  /**
   *  Коллекция объектов конфигурации, данные которых могут являться основанием для ввода нового объекта базы данных этого типа.
   * @return
   * @throws JIException
   */
  public _OCMetadataObjectPropertyValueCollection getBasedOn() throws JIException{
    // TODO че-то непонятно как эту колекцию обходить
    return new _OCMetadataObjectPropertyValueCollection(get("BasedOn"));
  }
 
  /**
   * Максимальная длина кода объекта базы данных
   * @return
   * @throws JIException
   */
  public Integer getCodeLength() throws JIException{
    return get("CodeLength").getObjectAsInt();
  }
 
  /**
   * Максимальная длина наименования объекта базы данных
   * @return
   * @throws JIException
   */
  public Integer getDescriptionLength() throws JIException{
    return get("DescriptionLength").getObjectAsInt();
  }
 
  /**
   *  Максимальная длина поля Порядок плана счетов. Если значение этого свойства равно 0, то по умолчанию список счетов упорядочивается по полю Код. В противном случае - по полю Порядок.
   * @return
   * @throws JIException
   */
  public Integer getOrderLength() throws JIException{
    return get("OrderLength").getObjectAsInt();
  }
 
  /**
   *  Если это свойство установлено в значение Истина, то при создании нового объекта базы данных будет выполняться автоматический контроль уникальности его кода/номера.
   * @return
   * @throws JIException
   */
  public Boolean isCheckUnique() throws JIException{
    return get("CheckUnique").getObjectAsBoolean();
  }
 
  /**
   * Определяет максимальное количество субконто, которые могут быть у одного счета.
   * @return
   * @throws JIException
   */
  public Integer getMaxExtDimensionCount() throws JIException{
    return get("MaxExtDimensionCount").getObjectAsInt();
  }
 
  /**
   * Строка, описывающая структуру кода счетов и субсчетов.
   * @return
   * @throws JIException
   */
  public String getCodeMask() throws JIException{
    return get("CodeMask").getObjectAsString2();
  }
 
  /**
   * Коллекция объектов метаданных, описывающих признаки учета субконто плана счетов.
   * @return
   * @throws JIException
   */
  public OCMetadataExtDimensionAccountingFlagCollection getExtDimensionAccountingFlags() throws JIException{
    return new OCMetadataExtDimensionAccountingFlagCollection(
        get("ExtDimensionAccountingFlags"));
  }
 
}
TOP

Related Classes of com.ipc.oce.metadata.objects.OCChartsOfAccountsMetadataObject

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.