Axapta Codefix Template

BUG #: 103700 (Content Maintenance)BUG #: 2997 (AXSE)

이 문서의 Microsoft Dynamics AX 모든 지역에 적용 됩니다.

증상

Microsoft Dynamics AX 2009 년에는 구매 주문서를 게시 하면 다음과 같은 오류 메시지가 나타납니다.

구매 주문 헤더 업데이트 (PurchParmSubTable)를 테이블에에서 레코드를 만들 수 없습니다.

이 문제는 다음 조건 중 하나가 참일 경우 발생 합니다.

  • 모든 테이블에 대해 "생명 공학 전자 서명 감사 내역 설정" 설정을 사용 합니다.

  • 일반적인 테이블에 대 한 레코드를 만듭니다.

  • 데이터베이스 로그에서 PurchParmTable 테이블을 설정 합니다.

구매 주문서, 영수증, 전표, 목록과 송장 게시 하면이 문제가 발생 합니다. 다음 제품에이 문제가 발생합니다.

  • Microsoft Dynamics AX 2009 서비스 팩 1

  • Microsoft Dynamics AX 2009

해결 방법

핫픽스 정보

지원 되는 핫픽스를 Microsoft에서 출시 되었습니다. 이 문서에 설명 되어 있는 문제를 해결 하기 위한 것일 뿐입니다. 이러한 특정 문제가 발생 한 시스템에만 적용 됩니다. 이 핫픽스는 추가 테스트가 필요할 수 있습니다. 따라서이 문제의 영향이 심각 하지 다음 Microsoft Dynamics AX 2009 서비스 팩 또는이 핫픽스가 포함 된 다음 버전의 기다리는 것이 좋습니다. 참고 특별 한 경우 일반적으로 호출 취소 될 수도 있습니다 경우 기술 지원 담당자는 Microsoft Dynamics 및 관련 된 제품에 대 한 지원에 따른 비용이 특정 업데이트로 문제를 해결할 수 있다고 결정 합니다. 추가 지원 질문과 특정 업데이트가 필요 하지 않은 문제에는 일반 지원 비용이 적용 됩니다.

This hotfix is not scheduled to be included with Service Pack for Microsoft Dynamics AX 2009.

설치 정보

이 핫픽스를 설치 하기 전에 시스템에 Microsoft Dynamics AX 클라이언트 사용자가 기록 됩니다 있는지 확인 합니다. 이 핫픽스를 구현할 때 로그온 되어 있는 사용자만 클라이언트 수 있습니다. 이 핫픽스를 구현 하려면 개발자 라이센스가 있어야 합니다.참고 사용자 계정이 Windows 로그인 창이 나 데이터베이스 로그인 창에서 Microsoft Dynamics AX에서 관리자 사용자 그룹의 구성원이 되도록 하는 것이 좋습니다.

코드 변경 사항

Microsoft는 모든 보증(상품, 특정 목적의 적합성에 대한 묵시적인 보증을 포함하며 이에 제한되지 않음)을 배제하며 예를 보여 주기 위한 목적으로만 이 프로그래밍 예제를 제공합니다. 이 문서의 내용은 프로시저를 작성하고 디버깅하는 데 사용되는 도구 및 여기에서 설명하는 프로그래밍 언어에 익숙한 사용자를 대상으로 합니다. Microsoft 지원 담당자는 사용자에게 도움이 되도록 특정 프로시저에 대한 기능을 설명할 수 있지만 사용자의 특정 요구 사항에 맞도록 예제를 수정하여 추가 기능을 제공하거나 프로시저를 구성하지는 않습니다. 항상 테스트 코드 수정 제어 된 환경에 적용 하기 전에 프로덕션 컴퓨터에 수정 프로그램입니다.이 문제를 해결 하려면 다음과이 같이 하십시오.

  1. PurchParmSubTable 테이블의 insert 메서드는 코드를 다음과 같이 덮어쓰기:

    public void insert(){    PurchParmSubTable tempPurchParmSubTable;    ;    select tempPurchParmSubTable where        tempPurchParmSubTable.ParmId == this.ParmId        && tempPurchParmSubTable.TableRefId == this.TableRefId        && tempPurchParmSubTable.OrigPurchId == this.OrigPurchId;    if(tempPurchParmSubTable.RecId == 0)    {        super();    }}
  2. PurchParmSubTable 테이블의 createFromPurchParmTable 메서드에서 코드를 다음과 같이 덮어쓰기:

    static PurchParmSubTable createFromPurchParmTable(PurchParmTable _purchParmTable, boolean _insert = true){    PurchParmSubTable   purchParmSubTable;    systemSequence systemSequence;    ;    ttsbegin;    purchParmSubTable.clear();    purchParmSubTable.initValue();    purchParmSubTable.initFromPurchParmTable(_purchParmTable);    if (_insert)    {        systemSequence = new systemSequence();        purchParmSubTable.RecId = systemSequence.reserveValues(1, tablenum(PurchParmSubTable));        purchParmSubTable.insert();    }    ttscommit;    return purchParmSubTable;}
  3. SalesParmSubTable 테이블의 insert 메서드는 코드를 다음과 같이 덮어쓰기:

    public void insert(){    SalesParmSubTable tempSalesParmSubTable;    ;    select tempSalesParmSubTable where        tempSalesParmSubTable.ParmId == this.ParmId        && tempSalesParmSubTable.TableRefId == this.TableRefId        && tempSalesParmSubTable.OrigSalesId == this.OrigSalesId        && tempSalesParmSubTable.subId == this.subId;    if(tempSalesParmSubTable.RecId == 0)    {        super();    }}

참고 이러한 방법의 모든 기존 사용자 지정 병합 해야 합니다.

필수 조건

전제 조건이 없습니다.

다시 시작 요구 사항

이 핫픽스를 적용 한 후 컴퓨터를 다시 시작할 필요가 없습니다.

상태

Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.

Author: mansourm
Writer: v-brialu
Tech Reviewer: mansourm
Editor:

추가 도움이 필요하신가요?

기술 향상
교육 살펴보기
새로운 기능 우선 가져오기
Microsoft Insider 참가

이 정보가 유용한가요?

번역 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?

소중한 의견에 감사드립니다.

×