"위치 코드를 변경할 수 없습니다" 오류 메시지가 Microsoft Dynamics 이동 지점에서 판매 주문에서 판매로 고객 아니요"값을 변경 하는 경우

서식 파일: CPR-Navision 코드 수정 템플릿

버그 번호: 169053 (콘텐츠 유지 관리)


이 문서의 Microsoft Dynamics 탐색 모든 국가 모든 언어 로케일에 적용 됩니다.

증상

판매 주문에서 판매로 고객 없음 값을 변경 하면 다음과 같은 오류 메시지가 나타납니다.

판매 주문에 대 한 예약, 항목 추적 또는 주문 추적 있기 때문에 코드 위치를 변경할 수 없습니다.


이 문제는 다음 조건이 참인 경우 발생 합니다.

  • 주문 추적 정책 설정이 활성화 됩니다.

  • 기존 판매 주문 라인을 업데이트 됩니다.


다음 제품에이 문제가 발생합니다.

  • Microsoft Dynamics 탐색 2009 R2

  • Microsoft Dynamics 탐색 2009 서비스 팩 1

  • Microsoft Dynamics 탐색 5.0 서비스 팩 1

해결 방법

핫픽스 정보

지원 되는 핫픽스를 Microsoft에서 출시 되었습니다. 이 문서에 설명 되어 있는 문제를 해결 하기 위한 것일 뿐입니다. 이러한 특정 문제가 발생 한 시스템에만 적용 됩니다. 이 핫픽스는 추가 테스트가 필요할 수 있습니다. 따라서이 문제의 영향이 심각 하지 다음 Microsoft Dynamics 탐색 2009 서비스 팩 또는이 핫픽스가 포함 된 다음 Microsoft Dynamics 탐색 버전까지 기다리는 것이 좋습니다.

참고: 특별 한 경우 일반적으로 호출 취소 될 수도 있습니다 경우 기술 지원 담당자는 Microsoft Dynamics 및 관련 된 제품에 대 한 지원에 따른 비용이 특정 업데이트로 문제를 해결할 수 있다고 결정 합니다. 추가 지원 질문과 특정 업데이트가 필요 하지 않은 문제에는 일반 지원 비용이 적용 됩니다.

이 핫픽스 (즉이 핫픽스 위한 공개 URL이이 문서에 제공 되지) 공개 다운로드를 위해 게시 되지 않으면, 배포를 위해 기술 리더, 에스컬레이션 팀 구성원 또는 관리자의 승인이 필요 하 고 다음과 같은 정보가 적용 됩니다.

  • 핫픽스를 받으려면 "현상" 절에 설명 되어 있는 문제가 고객에 게 발생 해야 합니다.

  • (서비스 팩이 출시 된) 경우에 사용할 수 있을 때 다음 서비스 팩에 제공을 보낼 고객을 추적 해야 합니다.

이 핫픽스는 Microsoft Dynamics 탐색 서비스 팩에 포함 될 예정 되지 않습니다.



설치 정보

Microsoft는 모든 보증, 그림에 대 한 묵시적인 보증. 이 포함 되지만 상품성 또는 특정 목적에의 적합성의 묵시적된 보증에 국한 되지는 않습니다. 이 문서는 작성 하 고 프로시저를 디버깅할 데 사용 되는 도구 및 여기서 설명 하는 프로그래밍 언어에 익숙한 가정 합니다. Microsoft 지원 엔지니어는 특정 프로시저의 기능을 설명할 수 있습니다. 그러나이 예제에서는 추가 기능을 제공 하거나 특정 요구 사항에 맞도록 프로시저를 구성 하려면 수정 하지 않습니다.

참고: 이 핫픽스를 설치 하기 전에 모든 Microsoft Dynamics 탐색 클라이언트 사용자가 시스템 로그를 확인 하십시오. Microsoft Dynamics 탐색 응용 프로그램 서버 (NAS) 서비스가 포함 됩니다. 이 핫픽스를 구현할 때 로그온 되어 있는 사용자만 클라이언트 수 있습니다.

이 핫픽스를 구현 하려면 개발자 라이센스가 있어야 합니다.

것을 권장 합니다 Windows 로그인 창이 나 데이터베이스 로그인 창에서 사용자 계정 "SUPER" 역할 ID를 할당할 수 사용자 계정 "SUPER" 역할 ID를 할당할 수 없습니다, 사용자 계정에 다음 권한이 있는지 확인 해야 합니다.

  • 변경할 수 있는 개체에 대 한 수정 권한이 있습니다.

  • 시스템 개체 ID 9015 개체 및 시스템 개체 ID 5210 개체에 대 한 Execute 권한이 있습니다.



참고: 데이터 복구를 수행 해야 할 경우가 아니면 데이터 저장소에 대 한 권한을 가질 필요가 없습니다.

코드 변경 사항

참고: 항상 테스트 코드 수정 제어 된 환경에 적용 하기 전에 프로덕션 컴퓨터에 수정 프로그램입니다.
이 문제를 해결 하려면 판매 헤더 테이블 (36)의 코드를 변경 합니다. 이렇게 하려면, 다음 단계를 수행하십시오.

  1. 다음 텍스트 상수를 삭제 합니다.

    Text047@1095 : TextConst 'ENU=You cannot change %1 because reservation, item tracking, or order tracking exists on the sales order.'; 


  2. RecreateSalesLines 함수에 코드를 다음과 같이 변경.
    기존 코드

    SalesLine.TESTFIELD("Return Qty. Received",0);              SalesLine.TESTFIELD("Shipment No.",'');
    SalesLine.TESTFIELD("Return Receipt No.",'');
    SalesLine.TESTFIELD("Blanket Order No.",'');
    SalesLine.TESTFIELD("Prepmt. Amt. Inv.",0);
    SalesLineTmp := SalesLine;
    IF SalesLine.Nonstock THEN BEGIN
    SalesLine.Nonstock := FALSE;
    SalesLine.MODIFY;
    END;
    SalesLineTmp.INSERT;
    RecreateReservEntry(SalesLine,0,TRUE);
    RecreateReqLine(SalesLine,0,TRUE);
    UNTIL SalesLine.NEXT = 0;

    // Delete the following lines.
    IF "Location Code" <> xRec."Location Code" THEN
    IF NOT TempReservEntry.ISEMPTY THEN
    ERROR(Text047,FIELDCAPTION("Location Code"));
    // End of the deleted lines.

    ItemChargeAssgntSales.SETRANGE("Document Type","Document Type");
    ItemChargeAssgntSales.SETRANGE("Document No.","No.");
    IF ItemChargeAssgntSales.FINDSET THEN BEGIN

    대체 코드

    SalesLine.TESTFIELD("Return Qty. Received",0);              SalesLine.TESTFIELD("Shipment No.",'');
    SalesLine.TESTFIELD("Return Receipt No.",'');
    SalesLine.TESTFIELD("Blanket Order No.",'');
    SalesLine.TESTFIELD("Prepmt. Amt. Inv.",0);

    // Add the following lines.
    IF SalesLine."Location Code" <> "Location Code" THEN
    SalesLine.VALIDATE("Location Code","Location Code");
    // End of the added lines.

    SalesLineTmp := SalesLine;
    IF SalesLine.Nonstock THEN BEGIN
    SalesLine.Nonstock := FALSE;
    SalesLine.MODIFY;
    END;
    SalesLineTmp.INSERT;
    RecreateReservEntry(SalesLine,0,TRUE);
    RecreateReqLine(SalesLine,0,TRUE);
    UNTIL SalesLine.NEXT = 0;

    ItemChargeAssgntSales.SETRANGE("Document Type","Document Type");
    ItemChargeAssgntSales.SETRANGE("Document No.","No.");
    IF ItemChargeAssgntSales.FINDSET THEN BEGIN

전제 조건

이 핫픽스를 적용 하려면 설치한 다음 제품 중 하나가 있어야 합니다.

  • Microsoft Dynamics 탐색 2009 R2

  • Microsoft Dynamics 탐색 2009 서비스 팩 1

  • Microsoft Dynamics 탐색 5.0 서비스 팩 1

제거 정보

이 핫픽스를 제거할 수 없습니다.

상태

Microsoft는 이 문제가 '적용 대상' 섹션에 나열된 Microsoft 제품의 문제임을 확인했습니다.

참조

VSFT DynamicsNAVSE: 212239

참고: 이 문서는 Microsoft 지원 부서 내에서 직접 작성한 "빠른 게시" 문서입니다. 여기에 포함된 정보는 신흥 문제에 대한 응답으로 제공되었습니다. 신속히 사용할 수 있도록 작성되었으므로, 자료 입력 오류가 포함될 수 있으며 언제든지 예고없이 개정될 수 있습니다. 다른 고려 사항은 사용 약관을 참조하십시오.

작성자: benle
작성자: v-ivz
기술 검토자: benle
편집기:

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

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

이 정보가 유용한가요?

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

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×