모바일 클라이언트 1C 8.3 인증 양식. 모바일 애플리케이션 "1C-Rating: Mobile Waiter"의 초기 설정

소개

1C 플랫폼의 새 버전(8.3.5)에는 많은 새로운 기능이 있습니다. 그건 그렇고, 모르는 사람들을 위해 1C 개발자가 플랫폼의 새로운 혁신을 설명하는 리소스가 있습니다. 그 중 하나가 메커니즘입니다. 그것은 내 관심을 끌었고 재미있는 것을 구현하고 싶었습니다. 웹사이트 같은 것을 만들어보자는 생각이 바로 떠올랐는데, 이 아이디어는 인포스타트에서도 이해가 안 될 것 같아서 버렸다. 버려진 것 같았지만 아이디어는 그다지 크지 않고 생활에서 실제로 적용할 수 있는 모바일 웹 애플리케이션으로 변형되었습니다.
저는 직원과 같은 제한된 수의 사용자를 위한 부하가 적고 간단한 모바일 웹 애플리케이션을 HTTP 서비스를 사용하여 1C에서 구현할 수 있다고 믿습니다.

모바일 웹 애플리케이션 "연락처"

결과부터 시작하겠습니다. 모바일 웹 애플리케이션 "연락처"는 단순해 보이지만 실제로는 그렇습니다. 처음에는 연락처를 검색하는 필드만 표시됩니다.

누군가를 찾아봅시다(검색을 시작하려면 3자 이상 입력해야 합니다). 누군가 발견되었습니다.

알렉세이에게 전화하자.

티모페이에게 편지를 쓰자.

이것이 모바일 웹 애플리케이션의 전부입니다.

그건 그렇고, 어떤 구성에도 적용하는 것은 매우 쉽습니다.

구현에 대해 조금

사용된 도구:
- 1C 플랫폼의 HTTP 서비스 메커니즘(버전 8.3.5부터 시작)
- 자바스크립트 라이브러리 jQuery (http://jquery.com)
- 자바스크립트 라이브러리 jQuery mobile (http://jquerymobile.com)
- 1C:JSON()

"ContactsMVP" HTTP 서비스는 모든 요청을 수락하고 이를 "ContactsMVP" 처리로 전송합니다. 모바일 웹 애플리케이션의 모든 로직은 "ContactsMVP" 처리에 집중되어 있습니다.

요청 처리는 다음과 같습니다.

함수 ProcessRequest(요청) 내보내기 If MatchesResource(Request, "/index.html") Then Return GetResourceIndexHTML(); ElseIf MatchesResource(Request,"/application.js") 그런 다음 GetResourceApplicationJS()를 반환합니다. ElseIf MatchesResource(Request,"/contacts.json") 그런 다음 GetResourceContactsJSON(요청)을 반환합니다. endIf; EndFunction

예를 들어 이것은 index.html 페이지의 반환 모습입니다.

함수 GetResourceIndexHTML() 응답 = 새 HTTPServiceResponse(200); Text = GetLayout("IndexHTML").GetText(); Answer.SetBodyFromString(Text); Response.Headers.Insert("콘텐츠 유형", "text/html"); 답장을 돌려주세요. EndFunction

복잡한 것은 없습니다. ContactsMVP.dt를 다운로드하면 메커니즘을 더 자세히 연구할 수 있습니다.

출판의 특징

HTTP 서비스를 게시할 때 약간의 어려움이 있었기 때문에 더 쉽게 설명할 수 있도록 몇 가지 참고 사항을 설명하겠습니다.
- 출판물에 대한 매우 자세한 설명이 있습니다. 더 자세히 읽으십시오.
- 게시하기 전에 관리자 권한으로 구성기를 실행하는 것을 잊지 마세요.
- 파일 버전에서만 HTTP 서비스 실행이 가능했는데, 클라이언트-서버 버전에서 일부 오류가 발생했습니다.
- 인증 요청 없이 모바일 웹 애플리케이션이 작동하려면 데이터베이스에 등록된 사용자가 있는 경우 게시 후 default.vrd 파일에서 Usr 및 Pwd 매개변수를 연결 문자열에 추가해야 합니다(point. ib).

결론

기사 자료가 귀하에게 도움이 되기를 바랍니다.

관심을 가져주셔서 감사합니다.

사전 설정

작업을 시작하기 전에 모바일 장치에 1C: Link 서비스의 루트 인증서를 설치해야 합니다.

모바일 애플리케이션 설정에서 1C:Link를 통해 게시된 정보 기반의 경로를 지정해야 합니다. "1C: Link"를 통한 모바일 애플리케이션 작업의 특별한 특징은 웹 서비스에 대한 연결이 가명(별칭)이 아닌 이름으로 수행된다는 것입니다. 일부 모바일 애플리케이션(예: "1C:DO")에서는 연결 문자열이 자동으로 생성되며 웹 서비스 이름을 지정할 필요가 없습니다.

모바일 애플리케이션 설정 기능 1C : 주문
  • 정보 베이스에서 "관리" 섹션으로 이동하여 "CRM 및 판매" 메뉴 항목을 선택하고 "1C 모바일 애플리케이션과의 데이터 동기화 허용: 고객 주문" 확인란을 선택한 다음 "동기화 설정" 링크를 클릭하고 추가합니다. 사용자를 위한 설정입니다.
  • 로그인: 1C 사용자 로그인
  • "1C:LINK" 설정이 활성화되었습니다
  • 터널 이름:
  • HTTPS를 통해 정보 보안을 사용하려면 "SSL" 설정을 활성화해야 하며, HTTP를 통해 작업하려면 비활성화해야 합니다.
  • 목록:
모바일 문서 관리
  • 정보베이스 설정에서 모바일 클라이언트 작업을 활성화하십시오.
    이렇게 하려면 관리자 권한이 있는 사용자로 정보 데이터베이스로 이동하여 "설정 및 관리" - "프로그램 설정" - "데이터 교환" 메뉴 항목을 선택한 다음 "모바일 클라이언트 사용" 확인란을 선택하세요.
  • 접속주소 : https://.site/
  • 로그인: 1C 사용자 로그인
  • 비밀번호: 그의 비밀번호

모바일 애플리케이션을 사용하려면 버전 1C: Document Flow 8 1.3.1.3 KORP 이상을 설치해야 합니다.

1C: UNF
  • 모바일 애플리케이션 "1C: UNF"의 동기화 설정에서 "기타 서비스" 섹션으로 이동하세요.
  • "신청 주소" 필드에 다음을 입력하십시오. (ru_RU 제외)
  • 정보베이스 사용자의 사용자 이름과 비밀번호를 지정하고 "로그인"버튼을 클릭하십시오.

1C: ERP 모니터
  • 로그인: 1C 사용자 로그인
  • 비밀번호: 그의 비밀번호
  • "1C:LINK" 설정이 활성화되었습니다
  • 터널 이름:
  • 목록:

회계 클라이언트 1cfresh

1C : Link에 게시 된 기업 회계 부서와 동기화하려면 모바일 애플리케이션 "회계 클라이언트 1cfresh"를 사용할 수 있습니다.

  • 모바일 애플리케이션 "Accounting Client 1cfresh" 설정에서 "기타 서비스" 섹션으로 이동하세요.
  • "연결을 위한 기본 주소" 필드에 다음을 입력합니다. https://tunnel name.link.1c.ru/웹 애플리케이션 경로(ru_RU 제외)
  • Infobase 사용자의 로그인과 비밀번호를 지정하고 연결 버튼을 클릭합니다.


모바일 애플리케이션 개발 실습 1C 8.3 (1 부)

이 기사에서는 태블릿에 대한 다소 일반적인 응용 프로그램을 만들기 전에 우리가 시도한 것과 실수한 것에 대해 이야기할 것입니다. 이 애플리케이션은 처음에는 1C: 주문 구성 및 개발용 모바일 애플리케이션을 기반으로 Android용으로만 개발되었습니다.

처음에는 애플리케이션을 컴파일하고 태블릿에 수동으로 업로드하는 "잘못된" 접근 방식이 선택되었습니다. 모바일 애플리케이션을 구축하려면 "모바일 애플리케이션 생성 도우미"(MobileAppWizzard)를 사용한다는 점을 상기시켜 드리겠습니다. 그런 다음 포럼 중 하나에서 개발용 모바일 애플리케이션을 사용하여 아름다운 솔루션을 찾았습니다. 이 애플리케이션은 모바일 플랫폼 설치에 포함되어 있습니다. 개발 당시 플랫폼 버전은 8.3.3.24를 사용하였습니다. "Android" 폴더에서 1cem.apk 파일을 찾을 수 있습니다. 개발을 위한 모바일 애플리케이션입니다. 많은 시간을 절약해 준 가장 큰 장점은 웹 서버에 모바일 애플리케이션을 게시할 수 있고 태블릿에서는 http://[웹 서버 주소]/[모바일 애플리케이션 이름]과 같은 경로를 지정할 수 있다는 것입니다. .

태블릿 PC의 추가된 애플리케이션 설정에서 "구성기에서 업데이트" 확인란을 선택하면 애플리케이션을 시작할 때마다 웹 서버에 연결하여 업데이트를 확인하려고 시도합니다.

모바일 애플리케이션이 배포된 후 이를 개선하는 프로세스가 시작되었습니다.

필요한 것:

1. 중앙 데이터베이스와 모바일 장치 간의 교환을 설정합니다.

2. 비대칭 동기화 구성: 중앙 데이터베이스에서 제품 품목, 거래 상대방, 창고 내 상품 잔액 및 상호 정산에 대한 데이터를 다운로드하고 모바일 애플리케이션에서 고객 주문만 다운로드합니다.

3. 관리자가 잔액, 가격, 상호 정산을 빠르게 볼 수 있는 간단한 인터페이스를 구현합니다.

테스트 단계에서는 1C:Orders 데모 애플리케이션이 처음에 Managed Application과의 교환을 위해 설계되었기 때문에 "Managed Application" 중간 데이터베이스가 사용되었습니다.

첫 번째 팬케이크가 울퉁불퉁하게 나왔어요. 문자 그대로. 중앙 데이터베이스와의 교환을 위해 v82.ComConnector를 사용했습니다. 설정에 대해서는 자세히 설명하지 않겠습니다. 이에 대한 별도의 자료가 많이 있습니다. 나는 내가 겪은 어려움만을 겪을 것이다.

1. 64비트 서버 OS에서 com 개체를 사용합니다. 문제를 해결하기 위해 구성 요소 서비스에 구성된 COM+ 응용 프로그램 래퍼를 사용했습니다.

2. 다른 서버에서 Com을 원격으로 호출합니다. 호출되는 서버에는 응용 프로그램 서버 역할이 있어야 하며 COM+ 네트워크 액세스가 구성되어 있어야 합니다. 또한 Apache 서버에는 적절한 권한이 있어야 합니다(즉, 인증된 사용자로 서비스로 실행).

Com 연결 문제로 인해 작업 데이터베이스를 웹 서비스로 이전하기로 결정했습니다.

웹 서비스 게시에 관해 많은 글이 작성되었지만 작동 방식에 대해서도 설명되어 있습니다. 어떻게 작동하지 않는지 아래에서 공유하겠습니다.

작업 기반은 플랫폼 8.2, 모바일 애플리케이션은 각각 8.3에 배포됩니다.

애플리케이션을 게시할 때 8.3을 먼저 게시한 다음 8.2를 게시합니다. 웹 클라이언트 8.3에서 "스트림 형식 오류"라는 오류가 주기적으로 발생하거나 "클라이언트와 서버 플랫폼의 버전이 다릅니다."라는 오류 메시지가 표시됩니다. 다시 게시해도 도움이 되지 않으며 Apache를 다시 시작해도 도움이 되지 않습니다. 하지만 게시를 비활성화하고 다시 연결하면 도움이 됩니다.

다음으로, 사용자에게 권한을 부여할 때(ws 정의를 생성할 때) 재미있는 오류가 발생했습니다. 컴퓨터에서 테스트할 때에는 긴 이름으로 인증하는 것이 쉽습니다. Android를 실행하는 태블릿에서 동일한 사용자를 인증하려고 하면 인증이 시작되기 전에 종료되었습니다. 실험적으로 키릴 문자에서는 로그인 길이가 22자로 제한된다는 것을 계산할 수 있었습니다. 동시에 키릴 문자와 숫자의 조합을 통해 27자 길이의 로그인으로 로그인할 수 있게 됐다. 이는 키릴 문자의 변환 때문이라는 의혹이 있습니다. 예를 들어 Firefox 브라우저에서는 Wikipedia 문자열 "ivo"가 ""로 변환됩니다.

기술적으로 8.3.3 모바일 플랫폼에는 현재 여러 가지 제한 사항이 있습니다. 제 생각에는 가장 기대되는 혁신은 쿼리 지원입니다. 하지만 모바일 플랫폼은 아직 동적 목록의 임의 쿼리를 지원하지 않기 때문에 "다른 경로를 택"해야 했습니다.

가격과 잔고가 포함된 제품 디렉토리를 표시하는 문제를 해결하기 위해 다음 접근 방식이 사용되었습니다.

1. 명명법 참고서 형태로 2개의 표를 작성하였습니다. 첫 번째는 동적 목록, 즉 디렉터리 자체입니다. 동적 목록 필터는 그룹만 표시하도록 구성됩니다. 두 번째 표는 실제 잔액과 가격입니다. 동적 목록 라인이 활성화되면 값 테이블이 서버에 채워지고 두 번째 테이블로 출력됩니다. 가격과 잔고를 얻기 위해 개체 모델이 사용되었습니다. 탬버린을 사용한 이러한 모든 춤은 "라인을 출력할 때" 또는 "데이터를 받을 때"라는 일반적인 두꺼운 클라이언트 방법이 존재하지 않고 열에 숫자를 동적으로 그리는 것이 불가능하기 때문에 수행되었습니다.

유사한 접근법이 선택의 형태로 사용되었습니다.

2. 현재 가격을 표시하는 데에는 FormattedString이 완벽했습니다.

아래는 코드 예시입니다.

&OnServerWithoutContext 함수 남은 상태WhenAactivateStringsOnServer(nom)RecordSet = InformationRegisters.ProductPrices.CreateRecordSet(); RecordSet.Selection.Product.Value = 명목상; RecordSet.Selection.Product.Use = True; 레코드세트.읽기(); ArrayFormatStrings = 새 배열; 레코드 세트의 각 세트 행에 대해 서식 있는 행 배열을 순환합니다.Add(New Formatted Row(Set Row.Price Type.Name,WebColors.Blue)); FormattedStrings.Add(New FormattedString(" " + String(SetString.Price) + " ")) 배열; 엔드사이클; 새로운 FormattedString(ArrayFormatStrings)을 반환합니다. // 핸들러의 내용을 삽입합니다. EndFunction

3. 디렉토리, 잔액 및 가격을 모바일 애플리케이션에 로드하기 위해 매개변수 구조를 입력으로 받고 값 저장소를 출력으로 반환하는 웹 서비스가 사용되었습니다. 또 다른 불쾌한 발견은 서버 측에서 처리하는 데 시간이 너무 오래 걸리면 교환이 중단된다는 것입니다. 일종의 시간 초과가 발생한 것 같습니다. 그 후에 애플리케이션은 연결이 중단된 것으로 "믿고"(실제로 ws 연결을 통해 작업 데이터베이스에서 데이터가 계속 처리되고 있음) 오류와 함께 교환을 중지합니다. .

이를 방지하기 위해 전체 교환을 모바일 애플리케이션에 다시 초점을 맞춰 여러 부분으로 나누기로 결정했습니다. 저것들. 먼저 항목을 동기화한 다음 상대방, 잔액 등을 동기화합니다.

4. 보고서를 얻으려면 1C: 주문 구성과 동일한 접근 방식이 사용됩니다. 매개변수가 있는 웹 서비스가 호출되고, 작업 데이터베이스의 서버측에서 스프레드시트 문서가 생성된 다음, 완성된 스프레드시트 문서가 모바일 애플리케이션으로 반환됩니다.

이 글에서는 모바일 애플리케이션 작업을 시작하기 전에 구성해야 하는 초기 설정을 살펴보겠습니다.
모바일 애플리케이션 "1C-Rating: Mobile Waiter"는 정기적인 데이터 교환을 통해 연결되는 "1C-Rating: Restaurant" 구성과 함께 사용됩니다. 따라서 "1C-Rating: 모바일 웨이터" 구성을 설치하기 전에 "1C-Rating: 레스토랑" 프로그램에서 적절한 설정을 지정해야 합니다.

"1C-Rating: 레스토랑" 정보 기반 설정 모바일 애플리케이션 작업에 사용되는 모든 규제 및 참조 정보는 "1C-Rating: 레스토랑" 구성 정보 기반에 입력됩니다. 모바일 애플리케이션과 "1C-Rating: 레스토랑" 구성을 활성화하고 교환을 수행하기 전에 "1C-Rating: 레스토랑" 구성에 다음 데이터를 입력해야 합니다.
  • 디렉토리 조직 ;
  • 디렉토리 창고;
  • 현금 디렉토리;
  • 디렉토리 홀;
  • 디렉토리 수정자;
  • 정보 레지스터 요리 수정자;
  • 정보 레지스터 사전 정의된 주문 위치;
  • 정보 레지스터 스탬프 인쇄 라우팅;
  • 메뉴의 디렉토리 유형;
  • 디렉토리 설정 RMK;
  • 디렉터리 사용자.
사용자 설정 모바일 애플리케이션을 사용할 사용자는 1C-Rating: 레스토랑 정보 데이터베이스에서 미리 생성되어야 합니다. 모바일 애플리케이션 사용자는 "1C-Rating: Restaurant" 구성과 관련된 기본 설정 및 역할 외에도 사용자가 모바일 애플리케이션으로 작업할 수 있도록 지정된 역할이 있어야 합니다. 스탬프 자동 인쇄 모바일 기기로 주문 후, 준비 장소(주방, 바)에서 스탬프 인쇄가 가능합니다. 스탬프는 다음 알고리즘에 따라 인쇄됩니다. 모바일 애플리케이션에서 사용자는 주문을 생성하거나 변경하며, 이 주문은 "1C-Rating: Restaurant" 구성의 중앙 정보 데이터베이스로 전송됩니다. 중앙 데이터베이스에서는 스탬프 인쇄 대기열 정보 레지스터에 축적됩니다. 회계 매개변수 설정에 지정된 빈도로 이 정보 레지스터의 스탬프를 준비 장소로 인쇄하는 절차가 시작됩니다.
이 기능을 활성화하려면 모바일 웨이터 그룹의 계정 설정에 있는 "1C-Rating: Restaurant" 구성에서 다음 설정을 지정해야 합니다.
  • 모바일 웨이터 우표 인쇄 – 이 옵션을 활성화하면 준비에 대한 정보가 포함된 우표를 인쇄할 수 있습니다.
  • 모바일 웨이터 우표 인쇄를 위한 사용자 - 대신 인쇄 절차를 수행할 사용자를 사용자 디렉터리에서 선택해야 합니다. 스탬프를 인쇄하려면 지정된 사용자를 대신하여 세션을 시작해야 합니다. 스탬프 인쇄 절차로 인해 사용자 작업 속도가 느려지지 않도록 하려면 별도의 사용자를 생성하고(예: "RMK 실행" 또는 "스탬프 인쇄") 이 사용자와 별도의 1C:Enterprise 세션을 시작하여 백그라운드를 수행하는 것이 좋습니다. 인쇄.
  • 모바일 웨이터 스탬프 인쇄 간격 – 이 설정은 인쇄 시간 간격을 초 단위로 지정합니다. 스탬프를 인쇄하려면 이 매개변수를 반드시 입력해야 합니다. 이 매개변수의 값은 특정 조직의 요구 사항에 따라 선택되며 권장 값은 10초입니다.

웹 서버에 게시 모바일 애플리케이션과 고정 정보 기반 "1C-Rating: Restaurant"을 공동 운영하려면 적절한 인프라를 구성해야 합니다.
1. 웨이터의 작업 공간에는 무선 Wi-Fi 네트워크가 구성되어 있어야 합니다.
2. 정보 베이스 “1C-Rating: Restaurant”이 게시될 컴퓨터에 웹 서버를 설치하고 구성해야 합니다(Apache 또는 IIS 웹 서버 작업이 지원됩니다).
3. 1C:Enterprise 플랫폼과 웹 서버 확장 모듈은 동일한 컴퓨터에 설치되어야 합니다. 모듈 설치는 플랫폼 설치 중에 수행됩니다.


4. 정보 기반 "1C-등급: 레스토랑"이 게시되어야 합니다.
5. 게시된 정보 베이스가 있는 컴퓨터와 모바일 장치는 동일한 로컬 네트워크에 있어야 합니다.
정보 베이스 "1C-Rating: Restaurant"을 게시하려면 구성자 모드(메뉴 관리 - 웹 서버에 게시)에서 "1C:Enterprise"를 시작해야 합니다. 열리는 창에서 다음 작업을 수행해야 합니다.
  • 이름 필드에 출판물의 이름을 수동으로 입력하십시오. 라틴어 문자로만 구성할 수 있습니다. 이 이름은 나중에 모바일 애플리케이션 설정에 입력됩니다.
  • 웹 서버 필드에서 게시하려는 웹 서버 유형을 지정합니다.
  • 디렉터리 필드에서 가상 디렉터리를 설명하는 파일이 위치할 디렉터리 경로를 지정합니다.
  • HTTP 서비스 탭으로 이동하여 기본적으로 HTTP 서비스 게시 설정을 활성화합니다. 표 섹션에서 사용 가능한 서비스 목록에 HTTP 서비스 데이터를 표시합니다.
  • 게시 버튼을 클릭하세요. 게시한 후에는 서버를 다시 시작해야 합니다.
"1C 등급: 모바일 웨이터" 구성 모바일 애플리케이션 "1C-Rating: 모바일 웨이터"는 공식 온라인 스토어인 Google Play에서 모바일 장치로 무료로 다운로드할 수 있습니다. 애플리케이션을 상업적으로 사용하려면 필요한 수의 장치 라이센스를 구입하고 각 모바일 장치에서 모바일 애플리케이션을 활성화해야 합니다. 모바일 애플리케이션의 기능을 연구하기 위해 장치 라이센스 구매가 필요 없는 데모 모드가 제공됩니다.
모바일 애플리케이션 "1C-Rating: Mobile Waiter" 설치는 자동으로 수행되며 다른 모바일 애플리케이션 설치와 다르지 않습니다. 1C-Rating 업데이트: 모바일 웨이터 애플리케이션은 1C-Rating 회사에 대한 제한 및 등록 없이 공식 Google Play 온라인 스토어에서 사용할 수 있습니다.
모바일 애플리케이션을 처음 실행하면 작동 모드를 선택하는 양식이 나타납니다. 데모 모드와 애플리케이션 활성화라는 두 가지 옵션 중에서 선택할 수 있습니다.
데모 모드는 모바일 애플리케이션을 처음 시작할 때 활성화하거나 나중에 활성화한 후 설정 양식에서 동일한 이름의 스위치를 사용하여 활성화할 수 있습니다.
이 모드가 활성화되면 모바일 애플리케이션 데이터베이스가 자동으로 데모 데이터로 채워지므로 제품 기능에 더욱 익숙해질 수 있습니다.

애플리케이션 활성화 1C-Rating: 레스토랑 구성 회계 데이터베이스와 모바일 애플리케이션 및 양방향 데이터 교환을 사용하려면 애플리케이션을 활성화해야 합니다.
모바일 애플리케이션을 활성화하는 데는 두 가지 옵션이 있습니다.
  • 인터넷 활성화.
  • 오프라인 활성화.
인터넷 활성화 인터넷 활성화를 수행하려면 다음을 수행해야 합니다.
  • 모바일 장치의 인터넷 액세스를 제공합니다.
  • 애플리케이션 활성화 창에 등록번호를 입력하고 활성화 버튼을 클릭하세요.

  • 오프라인 활성화 모바일 장치를 인터넷에 연결할 수 없는 경우 오프라인 활성화가 수행됩니다.
    오프라인 활성화를 수행하려면 다음을 수행해야 합니다.
  • 모바일 애플리케이션 등록번호를 받으세요. 이렇게 하려면 해당 지역의 1C-Rating 회사 파트너에게 연락하거나 1C-Rating 회사에 직접 문의해야 합니다.
  • 애플리케이션 활성화 창에서 오프라인 애플리케이션 활성화 링크를 클릭합니다.
  • 오프라인 애플리케이션 활성화 창에서 모바일 애플리케이션 등록번호를 입력하세요.
  • 애플리케이션 코드 받기 버튼을 클릭하세요. 애플리케이션 코드가 포함된 창이 열립니다. 이 코드는 1C 등급 회사에 제출되어야 합니다. 이에 대한 응답으로 활성화 코드가 발행됩니다.
  • 활성화 코드는 오프라인 애플리케이션 활성화 창의 해당 필드에 입력됩니다. 활성화 버튼을 클릭하면 모바일 애플리케이션이 활성화됩니다.
  • 활성화에 성공하면 모바일 애플리케이션을 사용할 수 있습니다.

  • 중요한!

    모바일 애플리케이션을 다시 설치한 후 다시 활성화해야 합니다.

    정보 기반 "1C-Rating: Restaurant"에 대한 연결 설정 위의 방법 중 하나를 사용하여 모바일 애플리케이션을 활성화하면 사용자 인증 양식이 자동으로 열립니다. 초기 승인 과정에서 양식에는 다음 필드가 포함됩니다.
    • 사용자 – "1C-Rating: Mobile Waiter"에서 작업을 수행할 사용자입니다. 모바일 장치 사용자는 "1C-Rating: Restaurant" 구성 정보 데이터베이스에서 이전에 생성되어야 합니다.
    • 비밀번호 - "1C-Rating: Restaurant" 구성의 사용자 설정에 지정된 사용자 인증용 비밀번호입니다.
    • 서버 주소 – 이 필드는 웹 서버가 실행되고 있는 컴퓨터의 IP 주소를 나타냅니다.
    • 포트 – 기본값은 80입니다. 웹 서버가 다른 포트에 구성된 경우 여기에 해당 번호를 지정해야 합니다.
    • 게시 이름 – "1C-Rating: Restaurant" 구성 정보 기반에서 HTTP 서비스를 게시할 때 지정된 이름입니다.


    연결 버튼을 클릭하면 승인이 발생합니다. 서버 주소 및 발행물 이름 필드에는 연결에 대한 기술 데이터가 포함되어 있으며 처음 연결할 때 채워집니다. 다음에 시작할 때 이러한 필드는 숨겨지고 설정 양식에서만 사용할 수 있습니다.

    중요한!

    사용자 이름과 출판물 이름은 대소문자를 구분해야 합니다. 등록정보가 일치하지 않을 경우 승인이 거부됩니다.

    사용자 재인증이나 변경 시 사용자를 지정하고 비밀번호를 입력한 후 연결 버튼을 클릭하면 됩니다.


    승인 후 주문 목록 양식이 열리고 작업을 시작할 수 있습니다. 주문을 생성하려면 새 주문 버튼을 클릭하세요.

    연결 메시지

    모바일 애플리케이션을 "1C-Rating: Restaurant" 구성에 연결하면 다음 메시지가 나타날 수 있습니다.

    1. “네트워크 오류가 발생했습니다.”

    이 메시지는 다음과 같은 경우에 나타날 수 있습니다.

    • Wi-Fi 네트워크 신호가 끊어졌습니다.
    • 웹 서버가 올바르게 구성되지 않았습니다.
    • 웹 서버가 작동을 멈췄습니다. 웹 서버를 다시 시작해야 합니다.
    • 지정된 웹 서버 주소 및/또는 포트가 올바르지 않습니다.
    2. “이 HTTP 메소드로 리소스를 사용할 수 있는 권한이 부족합니다.”

    이 메시지는 사용자에게 모바일 대기자 개체 역할에 대한 액세스 권한이 활성화되어 있지 않음을 의미합니다.
    3. "요청한 URL /REST/hs/Data/Registration을 이 서버에서 찾을 수 없습니다."
    다음과 같은 경우 승인 메시지가 나타납니다.
    출판물 이름이 올바르지 않습니다.
    모바일 웨이터의 출판물 이름이 출판물 설정 시 레스토랑 구성기에 지정된 이름과 다릅니다(출판물 이름이 일치하는지 확인해야 하며 문자 등록이 중요합니다).
    4. “1C:Enterprise 8 응용 프로그램 오류입니다. HTTP: 찾을 수 없음"
    게시를 설정할 때 HTTP 서비스를 선택하지 않은 경우 이 메시지가 나타납니다. 기본 설정으로 HTTP 서비스 게시와 데이터 라인 근처의 테이블 섹션에 플래그가 있는지 확인해야 합니다.

    • (3475)

    이 프로토타입은 Moqups를 사용하여 제작되었습니다.– 레이아웃과 컨셉 제작을 위한 간단하고 편리한 서비스입니다. 소규모 Android 애플리케이션의 신속한 프로토타이핑에 매우 적합합니다. 보다 진지한 프로젝트의 프로토타입을 제작하려면 Photoshop과 Android UI 디자인 키트를 사용하는 것이 더 좋습니다!.

    애플리케이션 설명

    애플리케이션은 3개의 화면으로 구성됩니다.

    "애플리케이션의 메인 화면" – 실행되면 작업 목록이 표시됩니다(기한, 작업 이름 및 완료 표시). 작업이 완료되면 목록에 완료로 표시됩니다.

    "데이터 교환" 버튼을 클릭하면 직원은 즉시 서버에서 새 작업을 수신하는 절차를 시작할 수 있습니다. 서버와의 데이터 교환도 설정에 지정된 일정에 따라 하루에 한 번 자동으로 수행됩니다.

    "프로그램 설정" - 여기서 인증 매개변수와 1C 서버 주소를 설정하고 이 장치의 고유 식별 번호도 표시합니다. 자동 교환 일정도 여기에서 설정할 수 있습니다.

    모바일 클라이언트와 1C 서버간에 교환되는 데이터 구조

    경로는 3개의 열을 포함하는 값 테이블(1C 용어)입니다.

    1C에서 모바일 애플리케이션 템플릿 만들기

    1C를 실행하고 "Mobile Application" 디렉토리를 선택하고 새 요소를 추가합니다.

      "식별자" 필드에서 SAMPLE_APP_TASKS를 지정합니다(또는 다른 것을 생각해 보세요). 이는 구성 내의 고유한 애플리케이션 식별자입니다. 교환 프로세스 중에 애플리케이션을 고유하게 식별하는 데 필요합니다. 동일한 직원이 하나의 모바일 장치에서 여러 애플리케이션을 사용할 수 있습니다.

      '이름' 필드에 모바일 애플리케이션 이름(예: 작업)을 입력합니다.

    쓰기 버튼을 사용하여 디렉터리 항목을 기록한 다음 새 버전을 만들고 이를 애플리케이션의 작업 버전으로 지정합니다.

    "메타데이터" 목록에서 "외부 데이터" 그룹을 선택하고 도구 모음에서 "추가" 버튼을 클릭합니다. 그림에 표시된 대로 새 테이블의 매개변수를 입력합니다.

    여기에서 열 이름과 테이블 자체는 일반적으로 러시아어로 지정되며 내장된 1C 언어를 사용하여 테이블을 데이터로 채우는 데 사용됩니다.

    모바일 애플리케이션의 각 데이터 테이블에는 문자열 유형의 기본 키(관계형 데이터베이스의 경우 PRIMARY KEY)가 있어야 합니다. 모든 개체 테이블(디렉터리 및 문서)의 경우 키는 링크의 텍스트 표현(고유 식별자)이며 자동으로 채워집니다.

    "정보 레지스터" 또는 "외부 테이블"과 같은 비객체 테이블의 경우 프로그램은 테이블을 채우는 방법을 나타내야 합니다. 한 가지 옵션은 하나 이상의 테이블 열에 대해 "인덱스" 플래그를 설정하는 것입니다. 이는 "만기일" 및 "작업" 열에 대한 예제에서 수행된 작업입니다. 이는 테이블이 동일한 날짜에 대해 두 개의 동일한 작업을 가질 수 없음을 의미합니다.

    확인을 클릭하면 테이블이 메타데이터 트리에 추가되고, 모바일 애플리케이션의 경우 이름이 자동으로 라틴어로 번역됩니다.

    [FBA 규칙 중 하나: 1C에서는 소스 코드를 러시아어로, Java로 라틴어로 작성합니다. 식별자, 변수 이름 및 클래스에 러시아어 문자가 없으면 모바일 클라이언트를 설계할 때 많은 문제를 피할 수 있습니다.]

    이름을 라틴어에서 영어로 바꿉니다. 원칙적으로는 라틴 알파벳을 그대로 두는 것이 가능했지만 이름은 이미 결정했습니다(위 표 참조).

    변경 사항을 저장하고 도구 모음에서 "모바일 애플리케이션 템플릿" 버튼을 클릭합니다.

    "템플릿 디렉터리" – 생성된 모바일 애플리케이션 템플릿 파일이 저장될 디렉터리의 경로를 지정합니다.

    "기본" 탭에서 패키지 이름을 지정합니다. 이는 고유 식별자여야 합니다. 웹사이트가 있는 경우 이를 사용하여 접두사를 생성하세요. 이 예에서는 ru.profi1c.samples.tasks입니다.

    "웹 서비스" 탭에서 서버 주소는 10.0.2.2로 표시되며, 기본적으로 이는 Android 에뮬레이터에서 액세스할 때 컴퓨터의 주소입니다.

    "웹 서비스 이름" 및 "애플리케이션 하위 디렉터리" 필드에 웹 서비스를 게시할 때 지정한 데이터를 입력합니다.

    "프로그램 정보" 탭에서 신청서에 대한 연락처 정보와 추가 정보를 입력하고 "테이블 생성기" 탭의 설정은 변경하지 않고 그대로 둡니다.

    만들기를 클릭하면 Android 프로젝트 템플릿이 생성됩니다. 템플릿 생성 마법사 창을 닫고 변경 사항을 저장한 후 "모바일 애플리케이션" 디렉터리 항목을 닫습니다.

    공유하다