Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

Northwind Developer Edition의 구매 주문에 대해 알아보려면 아래 항목을 선택합니다. 

Northwind Purchase Orders 샘플 애플리케이션의 이 Dev Edition에는 유일한 구매 주문 모듈이 있습니다. Starter Edition에서는 제품이 소진되지 않으며 구매할 필요가 없습니다. 이 Dev Edition은 Northwind 2.0 Starter Edition의 데이터베이스 스키마(사용된 테이블)를 확장하고 고급 기능을 사용합니다. 특정 비즈니스를 운영하는 것이 아니라 Microsoft Access의 주요 기능을 소개하기 위한 것입니다.

  • 구매 주문 목록은 리본에서 사용할 수 있습니다. 각 구매 주문을 여는 하이퍼링크가 있습니다.

  • 구매 주문 목록과 리본 메뉴에는 새 구매 주문 단추를 사용하여 비어 있는 새 구매 주문을 엽니다. 제품 양식 >제품 순서 다시 정렬 단추에서 구매 주문을 만들 수도 있습니다.

  • 헤더의 단추는 제출, 승인, 받기닫기를 통해 워크플로를 통해 구매 주문을 진행합니다. 폼의 해당 추적 필드는 작업 단추를 클릭하여 프로그래밍 방식으로만 설정해야 하므로 잠깁니다.

  • PO를 승인하려면 구매 승인 권한이 필요합니다. 권한이 있는 Andrew Cencini로 로그인하거나 시스템 관리 > 권한에서 자신에게 제공할 수 있습니다. 이렇게 하는 기능은 Northwind가 프로덕션 품질 애플리케이션이 아닌 여러 가지 이유 중 하나입니다. 실제 환경에서 사용자는 자신의 권한을 상승시킬 수 없습니다.

  • 구매 주문의 품목은 수량과 관련하여 유효성이 검사됩니다. 최소 다시 정렬 수량 이상이어야 하며, 각 제품에 대해 설정된 대로 인벤토리를 적어도 대상 수준으로 백업해야 합니다.

  • 구매 주문이 수신되면 해당 제품을 배포하여 재고 없음 상태 품목을 주문하고 할당됨으로 설정하기 위해 특별 처리가 호출됩니다. 남은 수량은 인벤토리로 전송됩니다. 레코드가 StockTake 테이블에 추가됩니다.

이 섹션에서는 구매 주문 양식 frmPurchaseOrderDetails의 주목할 만한 구현 세부 정보를 다룹니다.

  1. 구매 주문 양식은 간단한 쿼리 qryPurchaseOrder 에서 해당 데이터를 가져옵니다( RecordSource 속성 참조). 간단한 쿼리에 데이터 입력 양식을 기반으로 하는 것이 가장 좋습니다. 이 쿼리에 PurchaseOrderDetails 테이블을 포함할 필요는 없습니다. 세부 정보는 하위 폼에서 처리됩니다. 그러나 쿼리는 다른 테이블과 조인하여 읽기 전용 StatusName, SubmittedBy 및 ApprovedBy 필드를 선택합니다.

  2. PurchaseOrderList 양식은 구매 주문 양식의 여러 인스턴스를 열 수 있습니다. 이는 PO 부서가 많은 중단을 처리하고 첫 번째 PO에서 작업하는 동안 다른 PO를 열거나 세 번째 PO와 비교해야 할 수 있기 때문에 편리합니다. 이 기술은 여기에 설명되어 있습니다.

  3. VendorID 는 숨겨진 ID 열과 표시되는 설명 열의 두 열 콤보 상자에서 해당 값을 가져옵니다. 이러한 콤보박스는 간단한 두 열 쿼리에 바인딩됩니다. RowSource 속성을 참조하세요.

  4. 레코드를 저장할 때 최소한 필요한 필드를 입력해야 합니다. Starter 버전에서는 Access 기본 동작이 수행되도록 합니다. 이 Dev Edition에서는 아래에 자세히 설명된 대로 보다 사용자 친화적인 기술이 구현됩니다.

  5. PO 상태가 수신됨으로 넘어가면 특수 처리(AllocateToInventory 프로시저)가 호출되어 이러한 제품을 기다리는 주문에 새 인벤토리를 배포합니다.

유효성 검사

Northwind Dev 버전에서 구현된 유효성 검사 코드에는 다음 세 줄의 코드만 필요합니다.

  • Form_BeforeUpdate: Cancel = ValidateForm(Me)

  • Form_AfterUpdate : ValidateForm_RemoveHighlights 나  

  • Form_Current: ValidateForm_RemoveHighlights 나

이 패턴은 따라야 할 좋은 패턴입니다. 코드를 매우 자체 포함되도록 하면 어디서나 쉽게 구현할 수 있습니다. 전문 개발자는 양식 서브클래싱을 사용하는 등 이를 더욱 발전시킬 수 있습니다. (이는 Northwind Dev의 목표를 초과합니다.)

자체 포함 유효성 검사 코드는 유효성을 검사하기 위해 양식 개체를 허용합니다.  그런 다음 기본 RecordsetClone의 양식 컬렉션을 확인하여 필요한 필드에 바인딩된 컨트롤을 확인하고 값이 있는지 확인합니다. 그렇지 않으면 강조 표시됩니다. 

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×