2015-01-15 4 views
0

나는 x ++로 일반 저널에 글을 남겼습니다. 현재 게시 할 수 있지만 광고 항목의 크기가 표시되지 않습니다. 코드 실행에는 701100- - - - -이 표시되고 나머지는 광고 항목에 채워지지 않습니다. 나는 왜 그런지 모르겠다. 나는 아래처럼 여러 가지 다른 것들을 시도했다. 또한일반 저널에 글쓰기, 금융 차원이 작동하지 않습니다.

ledgerDimensions = ["701100","701100", "MIDWHS", "ACCT", "000001", "AIR", "019-000100"]; 
    journalTrans.parmLedgerDimension(AxdDimensionUtil::getLedgerAccountId(ledgerDimensions)); 
offsetDimensions = ["701100","701100", "MIDWHS", "ACCT", "000001", "AIR", "019-000100"]; 
journalTrans.parmOffsetLedgerDimension(AxdDimensionUtil::getLedgerAccountId(offsetDimensions)); 
journaltrans.save() 

// dimensionAttribute = DimensionAttribute::findByName("Location"); 
// dimensionAttributeValue =   //DimensionAttributeValue::findByDimensionAttributeAndValue(dimensionAttribute, "MINOT"); 
// dimStorage = DimensionAttributeValueSetStorage::find(0); 
// dimStorage.addItem(dimensionAttributeValue); 
// journalTrans.parmOffsetDefaultDimension(dimStorage.save()); 
//journalTrans.save() 

모두 그냥 .. 왜 모르는 계좌 번호와 아무것도를 추가를 시도!

답변

0

일반 저널의 가져 오기 인터페이스에 서비스를 사용했습니다. 내 코드 아래에서이 방법으로 시도해보십시오.이 서비스로 차원을 쉽게 만들 수 있습니다. 더 자세한 설명이 필요하면 우리 시스템의 코드를 복사하고 주석을 달았습니다.

선언 : 필요한 경우

LedgerGeneralJournal     ledgerGeneralJournal; 
LedgerGeneralJournalService    ledgerGeneralJournalService; 
AfStronglyTypedDataContainerList  journalHeaderCollection; 
LedgerGeneralJournal_LedgerJournalTable journalHeader; 
AfStronglyTypedDataContainerList  journalLineCollection; 
AifEntityKeyList      journalHeaderCollectionKeyList; 
int          journalLineCounter; // to create more than one line 
int          entityKeyCount; 
int          journalHeaderCounter; // to create more than one journal header if needed 

귀하의 카운터 변수에 대한 PARM 방법을 추가

public int parmJournalLineCounter(int _journalLineCounter = journalLineCounter) 
{ 
    journalLineCounter = _journalLineCounter; 

    return journalLineCounter; 
} 

public int parmJournalHeaderCounter(int _journalHeaderCounter = journalHeaderCounter) 
{ 
    journalHeaderCounter = _journalHeaderCounter; 

    return journalHeaderCounter; 
} 

초기화 : 헤더 여기

ledgerGeneralJournalService = LedgerGeneralJournalService::construct(); 
ledgerGeneralJournal = new LedgerGeneralJournal(); 
journalHeaderCollection = ledgerGeneralJournal.createLedgerJournalTable(); 
this.parmJournalLineCounter(0); // note to add a parm method for your counter variables 

this.parmJournalHeaderCounter(_newInstance ? 1 : this.parmJournalHeaderCounter() + 1); // i added a parameter if more headers are needed 
    journalHeader = journalHeaderCollection.insertNew(this.parmJournalHeaderCounter()); 
    journalHeader.parmJournalName(contract.parmJournalNameId()); // init your own journal ID 

치수 라인을 만드는 내 방법 .

public void finalizeLedgerJournal() 
{ 
    int  keyCount; 
    List journalIdList; 

    journalHeader.parmLedgerJournalTrans(journalLineCollection); 
    ledgerGeneralJournal.parmLedgerJournalTable(journalHeaderCollection); 
    journalHeaderCollectionKeyList = LedgerGeneralJournalService.create(ledgerGeneralJournal); 

    // if you need the journalId for further processing: 
this.parmEntityKeyCount(journalHeaderCollectionKeyList.getEntityKeyCount()); 

    if (entityKeyCount > 0) 
    { 
     for (keyCount = 1;keyCount <= entityKeyCount;keyCount++) 
     { 
      if (!contract.parmJournalIdList()) 
      { 
       contract.parmJournalIdList(new List(Types::String)); 
      } 
      journalIdList = contract.parmJournalIdList(); 
      journalIdList.addEnd(LedgerJournalTable::findByRecId(journalHeaderCollectionKeyList.getEntityKey(keyCount).parmRecId()).JournalNum); 
      contract.parmJournalId(LedgerJournalTable::findByRecId(journalHeaderCollectionKeyList.getEntityKey(keyCount).parmRecId()).JournalNum); 
     } 
    } 
} 
: CostCenter하여 수행으로 난 단지 당신이 더 필요한 경우, 추가, 여기 CostCenter를 사용 참고 일지를 작성하는 마지막

protected void writeLine(
    str      _oldCompany, 
    TransDate    _transDate, 
    Voucher     _voucher, 
    str      _mainAccountNum, 
    AmountMST    _amount, 
    LedgerJournalTransTxt _transTxt, 
    CurrencyCode   _currencyCode, 
    str      _offsetAccountNum, 
    str      costCenter 
    ) 
{ 
    LedgerGeneralJournal_LedgerJournalTrans journalLine; 
    AifMultiTypeAccount      journalLineLedgerDimensionMain; 
    AifDimensionAttributeValue    journalLineDim1Main; 
    AfStronglyTypedDataContainerList  journalLineDimensionCollectionMain; 
    AifMultiTypeAccount      journalLineLedgerDimensionOffset; 
    str          lineMainAccount; 
    str          lineFullAccount; 
    str          lineMainDimensionName = 'CostCenter'; 
    str          lineMainDimensionValue; 
    str          lineOffsetAccount; 
    str          lineOffsetFullAccount; 


    this.parmJournalLineCounter(this.parmJournalLineCounter()+1); 
    journalLine = this.parmJournalLineCollection().insertNew(this.parmJournalLineCounter()); 
    journalLine.parmLineNum(this.parmJournalLineCounter()); 

    journalLine.parmCompany(CompanyInfo::findByPTROldCompany(_oldCompany).company()); 
    journalLine.parmOffsetCompany(journalLine.parmCompany()); 
    journalLine.parmTransDate(_transDate); 
    journalLine.parmVoucher(_voucher); 
    journalLine.parmAccountType(LedgerJournalACType::Ledger); 
    lineMainAccount = _mainAccountNum; 

    journalLine.parmAmountCurCredit(_amount > 0 ? 0 : _amount); 
    journalLine.parmAmountCurDebit(_amount > 0 ? _amount : 0); 
    journalLine.parmTxt(_transTxt); 
    journalLine.parmCurrencyCode(_currencyCode); 
    journalLine.parmOffsetAccountType(LedgerJournalACType::Ledger); 
    lineOffsetAccount = _offsetAccountNum; 

    // Create Main Account Dimensions 
    journalLineLedgerDimensionMain = journalLine.createLedgerDimension(); 
    journalLineLedgerDimensionMain.parmAccount(lineMainAccount); 
    lineFullAccount = strFmt("%1-%2-", lineMainAccount, costCenter ? lineMainDimensionValue : ''); // if you need more dimensions, add them here first 
    journalLineLedgerDimensionMain.parmDisplayValue(lineFullAccount); 
// and then add the values here like costcenter: 
     if (costCenter) 
     { 
      lineMainDimensionValue = costCenter; 
      journalLineDimensionCollectionMain = journalLineLedgerDimensionMain.createValues(); 
      journalLineDim1Main = new AifDimensionAttributeValue(); 
      journalLineDim1Main.parmName(lineMainDimensionName); 
      journalLineDim1Main.parmValue(lineMainDimensionValue); 
      journalLineDimensionCollectionMain.add(journalLineDim1Main); 
      journalLineLedgerDimensionMain.parmValues(journalLineDimensionCollectionMain); 
     } 
     journalLine.parmLedgerDimension(journalLineLedgerDimensionMain); 
     // Create Offset Account Dimensions 
// same procedure with offset dimensions if needed 
     if (_offsetAccountNum) 
     { 
      journalLineLedgerDimensionOffset = journalLine.createOffsetLedgerDimension(); 
      journalLineLedgerDimensionOffset.parmAccount(lineOffsetAccount); 
      lineOffsetFullAccount = strFmt("%1--", lineOffsetAccount); 
      journalLineLedgerDimensionOffset.parmDisplayValue(lineOffsetFullAccount); 
      journalLine.parmOffsetLedgerDimension(journalLineLedgerDimensionOffset); 
     } 
    } 

     // Create Lines 
     journalLineCollection = journalHeader.createLedgerJournalTrans(); 

(내가 줄을 주석)

관련 문제