다음을 통해 공유


장치에 대한 판매 주문 예제

새 설치: 2006년 4월 14일

이 예제는 병합 복제에 대한 판매 주문 예제의 모바일 장치 버전입니다. 이 예제에서는 데이터를 모바일 장치 사용자에게 배달하기 위한 병합 복제 토폴로지에서 Microsoft SQL Server Compact Edition(SQL Server 2005 Compact Edition)을 구독자로 사용하는 방법을 설명합니다. 또한 SQL Server 2005 Compact Edition에 있는 복제의 프로그래밍 기능을 보여 줍니다. 이 예제는 표준 Microsoft 데이터 액세스 기술 및 병합 복제를 통해 판매 직원이 자신의 로컬 데이터를 관리하면서 주기적으로 홈 오피스와 동기화할 수 있도록 하는 Windows 폼 기반 응용 프로그램입니다. 이 예제에 사용되는 게시는 병합 복제에 대한 판매 주문 예제를 설치할 때 만들어집니다. 이 예제에서 사용되는 복제 시나리오에 대한 자세한 내용은 Sales Orders Sample Scenario를 참조하십시오.

언어

  • C#

필수 구성 요소

이 예제를 실행하기 전에 다음 소프트웨어가 개발 컴퓨터에 설치되어 있는지 확인합니다.

  • .NET Framework SDK 2.0 또는 Microsoft Visual Studio 2005 SP1(서비스 팩 1) 이상 버전. 자세한 내용은 .NET Framework SDK 설치를 참조하십시오.
  • Microsoft SQL Server Compact Edition (SQL Server 2005 Compact Edition).
  • Microsoft ActiveSync 4.0 이상 버전
  • SQL Server 2005 SP2(서비스 팩 2) 이상 버전
  • SQL Server 2005 예제. 이러한 예제는 SQL Server 2005에 포함되어 있으며 SQL Server Developer Center에서도 다운로드할 수 있습니다. 자세한 내용은 예제 설치를 참조하십시오.

또한 예제를 배포 및 실행하기 위해 15MB 이상의 여유 메모리가 있는 모바일 장치 또는 모바일 장치 에뮬레이터(Microsoft Visual Studio 2005에 포함됨)가 있어야 합니다.

구독을 초기화하고 판매 주문 데이터를 장치에 다운로드하려면 병합 복제에 대한 판매 주문 예제를 실행하도록 SQL Server 2005 게시자가 구성되어 있어야 합니다.

필요한 권한

판매 주문 예제의 구성 및 실행에 필요한 권한은 복제 보안 요구 사항에 따라 다음과 같습니다.

  • 게시자에서 InstallSalesOrdersSample.bat를 실행하려면 Windows 계정은 게시자에서 sysadmin 고정 서버 역할의 멤버여야 합니다. 이 배치 파일은 복제를 구성하고 AdvWorksSalesOrders 게시를 만들며 초기 스냅숏을 생성합니다.

  • 구독을 초기화하고 게시자와 데이터를 동기화하려면 웹 서버에 연결하는 데 사용되는 Windows 계정이 다음 요구 사항을 충족해야 합니다.

    • 게시 데이터베이스의 사용자와 연결된 게시자에 유효한 로그인이 있어야 합니다.
    • 배포 데이터베이스의 사용자(또는 게스트 사용자)와 연결된 배포자에 유효한 로그인이 있어야 합니다.
    • AdvWorksSalesOrders 게시에 대한 PAL(게시 액세스 목록)의 멤버여야 합니다.

    [!참고] 웹 서버에 대한 익명 연결을 사용할 경우 IIS 익명 Windows 계정이 게시자에 연결하는 데 사용됩니다.

  • SSL(Secure Sockets Layer) 암호화를 사용하여 웹 서버에 연결하려면 장치에 루트 인증서로 설치된 웹 서버의 보안 설정에 사용되는 서버 인증서의 루트 인증서 복사본이 있어야 합니다. 또한 클라이언트 인증서가 필요하도록 구성된 웹 서버의 경우 유효한 인증서가 장치에 개인 인증서로 설치되어 있어야 합니다.

예제 빌드 및 구성

복제 토폴로지를 구성하고 예제 프로젝트를 빌드 및 배포하려면

  1. 게시자에서 판매 주문 예제의 게시 설치 스크립트를 실행합니다.
  2. 판매 주문 예제를 빌드하고 비즈니스 논리 처리기 어셈블리를 웹 서버에 배포합니다.
  3. 웹 동기화 구성 마법사를 실행하여 가상 디렉터리를 구성합니다.
  4. Visual Studio 2005를 사용하여 예제를 빌드하고 장치 또는 장치 에뮬레이터에 배포합니다.

게시자를 구성하고 예제 프로젝트를 빌드 및 배포하려면

  1. SQL Server 2005를 실행하는 컴퓨터에서 병합 복제에 대한 판매 주문 예제의 설치 스크립트를 실행하여 게시자에서 AdvWorksSalesOrders 게시를 만듭니다.

    [!참고] 판매 주문 예제 구성 스크립트는 SQL Server 2005 및 SQL Server Express 구독자에 대해서만 웹 동기화를 구성합니다.

  2. 명령 프롬프트에서 SQL Server 2005 예제 설치 디렉터리로 이동합니다. 기본 위치는 C:\Program Files\Microsoft SQL Server\90\Samples입니다.

  3. .NET Framework 또는 Microsoft Visual Studio 2005 명령 프롬프트에서 다음을 실행합니다.

    sn -k SampleKey.snk

    [!참고] 다른 예제에서 사용하기 위해 이 키를 이미 만든 경우 이 단계를 생략해도 됩니다.

  4. Microsoft Visual C#으로 된 판매 주문 예제 솔루션의 설치 위치로 이동합니다. 기본 위치는 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\Merge\SalesOrders\CS입니다.

  5. Visual Studio 2005에서 SalesOrders.sln 솔루션 파일을 엽니다.

  6. 프로젝트를 빌드합니다.

  7. BusinessLogic.dll 어셈블리 복사본을 웹 서버의 C:\Program Files\Microsoft SQL Server\90\COM 디렉터리에 저장합니다.

  8. 웹 동기화 구성 마법사를 실행하여 "SalesOrdersMobile"이라는 가상 디렉터리를 만듭니다. 이 마법사를 실행하는 방법은 SQL Server 2005 Compact Edition 온라인 설명서의 방법: 웹 동기화 구성 마법사를 사용하여 연결 구성 항목에 있는 단계를 참조하십시오.

    [!참고] 웹 서버에 연결하기 위해 클라이언트 인증서가 필요한 경우 유효한 개인 인증서가 장치에 설치되어 있어야 합니다.

  9. 웹 서버에 대한 익명 연결을 사용하는 경우 익명 액세스에 사용되는 Windows 계정에 대한 로그인을 게시자에서 만들고 이 로그인에 대한 사용자를 AdventureWorks 데이터베이스에서 만든 다음 AdvWorksSalesOrders 게시용 PAL에 이 사용자를 추가힙니다. 자세한 내용은 방법: 게시 액세스 목록에서 로그인 관리(SQL Server Management Studio)를 참조하십시오.

  10. Microsoft Visual C#으로 된 판매 주문 모바일 장치 예제 솔루션의 설치 위치로 이동합니다. 기본 위치는 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\Merge\SalesOrdersMobile\CS입니다.

  11. Visual Studio 2005에서 SalesOrdersMobile.sln 솔루션 파일을 엽니다.

  12. 장치 또는 장치 에뮬레이터를 연결하고 ActiveSync를 시작합니다.

  13. 프로젝트를 빌드하여 장치에 배포합니다.

예제 실행

판매 주문 모바일 장치 예제를 실행하여 데이터를 동기화하려면

  1. 장치를 크레들에 놓고 ActiveSync가 실행되고 있는지 확인합니다.

  2. SSL을 사용하여 웹 서버에 대한 연결을 보안 설정하려면 SalesOrdersMobile 가상 디렉터리 보안 설정에 사용되는 서버 인증서의 루트 인증서(DER로 인코딩된 X.509 바이너리 형식)를 내보내서 장치에 복사한 다음 장치에서 루트 인증서로 설치합니다. 웹 서버에 연결하기 위해 클라이언트 인증서가 필요한 경우 또한 유효한 개인 인증서가 장치에 설치되어 있어야 합니다.

    ms365205.security(ko-kr,SQL.90).gif보안 정보:
    기본 인증을 사용하여 웹 서버에 연결할 경우 SSL을 사용하여 웹 서버에 대한 연결을 암호화해야 합니다. 이렇게 하면 Windows 자격 증명이 보호됩니다.
  3. 장치에서 Internet Explorer를 시작하고 다음 URL 중 하나로 이동합니다.

    • http://webserver/SalesOrdersMobile/sqlcesa30.dll?diag - 웹 서버에 대한 익명 액세스를 사용할 경우
    • https://webserver/SalesOrdersMobile/sqlcesa30.dll?diag - SSL을 사용하여 웹 서버에 연결하고 기본 인증에 사용할 Windows 로그인 및 암호를 지정하는 경우
  4. 장치 또는 장치 에뮬레이터에서 SalesOrdersMobile 프로그램을 시작합니다. 처음 실행되면 이 프로그램은 SQL Server 2005 Compact Edition 구독 데이터베이스(\My Documents\AWMobile.sdf)를 만듭니다.

  5. Settings 페이지에서 게시자의 이름과 웹 서버의 URL을 다음 형식 중 하나로 입력합니다.

    • http://webserver/SalesOrdersMobile/sqlcesa30.dll. 이 URL은 Connect anonymously to server 상자가 선택된 경우에 사용됩니다.
    • https://webserver/SalesOrdersMobile/sqlcesa30.dll. 이 URL은 Connect anonymously to server 상자가 선택 취소된 경우에 사용됩니다. 또한 Windows loginPassword 필드에 Windows 로그인과 암호를 지정해야 하며 이러한 값은 게시자 및 배포자에서 Windows 로그인에 해당하는 자격 증명이 됩니다.
  6. Save를 눌러 이러한 설정을 저장합니다.

  7. Synchronize 페이지에서 Hostname 필드의 값을 확인하고 Sync type으로 **Full (recommended)**을 선택한 다음 Synchronize를 누릅니다. 응용 프로그램에 대한 구독 데이터를 생성, 초기화 및 다운로드하기 위해 장치가 지정된 웹 서버에 연결됩니다.

판매 주문 데이터를 업데이트하고 게시자와 동기화하려면

  1. 구독이 초기화된 상태에서 File 메뉴에서 View Orders를 누르고 Customers 목록에서 고객을 선택합니다.

  2. 기존 주문을 업데이트하려면 Orders 테이블에서 기존 주문을 누르고 다음 중 하나를 수행합니다.

    • 기존 항목을 업데이트하려면 Order Items 표에서 항목을 두 번 누르고 선택한 항목의 Quantity 값을 변경한 다음 Save를 누릅니다.
    • 새 항목을 주문에 추가하려면 Add New를 누르고 CategoryProduct 목록에서 제품을 선택한 다음 Quantity 필드에 주문 수량을 설정하고 Save를 누릅니다.
    • 주문에서 기존 항목을 삭제하려면 Order Items 표에서 항목을 선택한 다음 Delete를 누릅니다.
  3. Tools 메뉴에서 Synchronize를 누르고 Sync type 목록에서 Full (recommended) 또는 Upload only를 선택한 다음 Synchronize를 누릅니다.