Статьи

모듈 구조

1C : 엔터프라이즈 8.2 /
개발자 용 /
코드 규칙

목차

1.1. 프로그램 모듈 (일반 모듈, 객체 모듈, 객체 관리자 모듈, 양식 모듈, 명령 등)에서 일반적인 경우 다음 절이 다음에 나타날 수 있습니다 시퀀스들 :

일부 섹션은 특정 유형의 모듈에만 제공 될 수 있습니다. 예를 들어 양식 요소에 대한 이벤트 핸들러는 양식 모듈에만 표시 할 수 있으며 변수 설명 섹션 및 초기화 섹션은 비전 역 일반 모듈, 개체 관리자 모듈, 레코드 세트, 상수 값 및 세션 모듈에서 정의 할 수 없습니다.

모듈 코드를 섹션으로 나누는 요구 사항은 코드의 가독성을 높이고 다른 작성자가 코드에 변경 사항을 적용하는 것을 단순화하기위한 것입니다 ( 개발자 별 ), 특정 구현을위한 애플리케이션 솔루션의 개선 등이 포함된다.

1.2. 공통 모듈에 대한 템플릿 (복사 용 빈 부분) :

///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// ////////////// ///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// //////////////////////////////////////////////// 서비스 절차 및 기능

  • "프로그램 인터페이스" 섹션에는 다른 구성 개체 또는 다른 프로그램 (예 : 외부 연결을 통한)에서 사용하기위한 내보내기 절차 및 기능이 포함되어 있습니다.
  • "유틸리티 절차 및 기능" 섹션에는 공통 모듈의 내부 구현을 구성하는 절차 및 기능이 포함되어 있습니다. 공통 모듈이 일부 모듈 인 경우 기능적 여러 메타 데이터 오브젝트를 포함하는 서브 시스템 인 경우,이 섹션에는이 서브 시스템의 다른 오브젝트에서만 호출 할 수있는 서비스 익스포트 프로 시저 및 함수가 포함될 수도 있습니다.
    벌크 공통 모듈의 경우 기능적 속성에 따라이 섹션을 하위 섹션으로 나누는 것이 좋습니다. 하위 섹션에는 논평이 선행되며 이는 비슷한 방식으로 발행하는 것이 좋습니다. 예 :

///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////// 정보베이스 업데이트

1.3. 객체 모듈, 관리자, 레코드 세트, 트리 트먼트, 보고서 등을위한 섹션 디자인을위한 템플릿 :

///////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////// // 소프트웨어 인터페이스 ////////////// // ///////////////////////////////////////////////////////////////////// ////////////// / EVENTS의 프로세서 /////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////// 서비스 절차 및 기능

  • "프로그램 인터페이스" 섹션에는 다른 구성 모듈이나 다른 프로그램 (예 : 외부 연결을 통해)에서 사용하기위한 내보내기 절차 및 기능이 포함되어 있습니다. 이 절에서는 객체 자체의 모듈, 형식 및 명령에 의해서만 호출되도록 의도 된 함수와 프로 시저를 가져올 필요는 없습니다. 예를 들어, 오브젝트 모듈의 채우기 처리와 양식 명령 핸들러의 문서 양식에서 호출 된 문서의 테이블 부분을 채우는 프로시 저는 오브젝트 모듈의 프로그램 인터페이스가 아닙니다. 모듈 자체와 동일한 객체의 형식에서만 호출됩니다. 그들은 배치되어야한다. 섹션 "유틸리티 절차 및 기능."
  • "이벤트 처리기"섹션 에는 개체 모듈 ( Prizavisi , PRO 등)에 대한 이벤트 처리기가 포함되어 있습니다.
  • "유틸리티 절차 및 기능" 절은 일반 모듈과 동일한 목적을 가지고 있습니다.

1.4. 폼 모듈을위한 섹션 디자인 템플릿 :

///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////. ///////////////////////////////////////////////////////////////////// // // 이벤트 프로시져 테이블의 프로세서 ///////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// ////////////////////// 서비스 절차 및 기능

  • "Form event handler" 섹션에는 다음과 같은 양식 이벤트 처리기 절차가 포함되어 있습니다 . 서버 작성 , 열기
  • "폼 요소 처리기" 섹션에는 의 주요 부분에있는 요소를 처리하는 절차가 포함되어 있습니다 (폼의 테이블과 관련이없는 모든 항목).
  • "양식 테이블 <form table name> 이벤트 처리기" 절에는 양식 테이블 및 테이블 요소의 처리기에 대한 절차가 있습니다. 핸들러 프로 시저의 경우, 각 테이블마다 고유 한 파티션이 있어야합니다.
  • "서식 명령 처리기" 섹션에는 양식 명령 처리기 (양식 명령의 조치 특성에 지정된 이름)에 대한 절차가 들어 있습니다.
  • "유틸리티 절차 및 기능" 절은 일반 모듈과 동일한 목적을 가지고 있습니다.

참고 항목 : 양식 모듈 작성 규칙

2. 소프트웨어 모듈의 섹션에 대한 일반 요구 사항.

2.1. 모듈 헤더모듈 시작 부분의 주석입니다. 모듈 제목은 간단한 설명과 응용 조건을 제공합니다.
예 :

///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // - 로그 작업; // - 액션을 처리하기 위해 사용자 진행 중 편집 // multiline 텍스트 , 예를 들어 문서의 주석; // - 기타. // /////////////////////////////////////////////////////////////////////////// /////////////////////////////////

폼 모듈의 경우 폼 매개 변수에 대한 설명을 헤더에 두는 것이 좋습니다.

2.2. 변수 설명 섹션 . 변수 이름은 일반적으로 할당됩니다. 변수 이름 규칙 , 그리고 그 사용법은이 기사에 기술되어있다. 소프트웨어 모듈에서 전역 변수 사용 .

모든 모듈 변수에는 해당 목적을 이해하기에 충분한 설명이 제공되어야합니다. 주석은 변수가 선언 된 행과 동일한 행에 배치하는 것이 좋습니다.
예 :

Pem CurrencyAccounting 내보내기; // 회계가 보관되는 통화 Perem Address Exports; // 오류 메시지를 보내는 이메일 주소

2.3. 소프트웨어 인터페이스 프로그래밍 인터페이스를 구성하는 내보내기 절차 및 기능은 변수 설명 바로 뒤에 배치됩니다. 이러한 절차 및 기능은 다른 구성 객체 또는 다른 프로그램 (예 : 외부 연결을 통해)에서 사용하기위한 것이므로 모듈의 "보이는 위치"에 있어야합니다.

참조 : 절차 및 기능 설명.

2.4.1 양식 이벤트 핸들러, 명령 및 양식 요소 . 양식 모듈의 서비스 프로 시저와 함수를 사용하기 전에 양식의 이벤트 핸들러와 명령 및 양식 요소에 대한 이벤트 핸들러가 있습니다.

체계적인 추천 (유용한 조언)

하나의 양식 요소의 핸들러를 함께 배치하고 양식 편집기의 특성 패널에서 그 순서에 따라 처리하는 것이 좋습니다. 컨 피규 레이터에서 .

2.4.2. 각 이벤트에는 고유 한 핸들러 프로 시저가 있어야합니다. 이벤트가 양식의 다른 요소에서 발생할 때 동일한 조치가 수행되어야하는 경우 :

  • 필요한 조치를 수행하는 별도의 프로 시저 (함수) 작성

  • 각 폼 요소에 대해 기본 이름을 사용하여 별도의 처리기를 만듭니다.

  • 각 처리기에서 필요한 절차 (함수)를 호출하십시오.

예를 들어, 잘못되었습니다.

ExecutingApplication (Element) 선택을위한 OnClient 프로 시저 Selection Parameters = New Compliance (); 옵션 선택 붙여 넣기 ( "작성자 별", 저자 작성); 옵션 선택. 붙이기 ( "Executive", Executive); 목록 선택 설정 (목록, 선택 옵션); 최종 절차 변경에 의한 경영진에게 (요소) 변경에 의한 저작 절차 (Undefined); 최종 절차

올바른 :

& OnClient 프로 시저를 실행하는 절차 (항목) SetSelection (); 끝 절차 및 클라이언트 절차 작성자 변경 (요소) 설치 선택 (); EndProcedures & OnServer 프로 시저 SetSelection () 선택 매개 변수 = 새 준수 (); 옵션 선택 붙여 넣기 ( "작성자 별", 저자 작성); 옵션 선택. 붙이기 ( "Executive", Executive); 목록 선택 설정 (목록, 선택 옵션); 최종 절차

이 요구 사항은 이벤트 처리기 프로 시저의 논리가 모듈 코드에서 사용하기위한 것이 아니며 플랫폼에서 직접 호출하기 때문에 발생합니다. 이러한 두 시나리오를 하나의 절차로 혼합하면 논리가 복잡해지고 견고성이 줄어 듭니다 (단 하나의 지정된 호출 시나리오 대신 플랫폼의 이벤트에 따라 프로 시저 코드는 코드의 다른 직접 호출을 고려해야합니다).

2.5. 개체 모듈 및 개체 관리자에 대한 이벤트 처리기 는 내보내기 후에 있지만 유틸리티 프로 시저 및 모듈 함수 앞에 배치됩니다.

체계적인 추천 (유용한 조언)

임베디드 언어에 대한 설명에 따라 다음 순서에 따라 처리기를 배치하는 것이 좋습니다.

2.6. 이벤트 처리기가 아니고 모듈 의 내부 구현을 구성하는 유틸리티 프로 시저 및 모듈 함수 는 이벤트 핸들러 옆의 모듈에 배치됩니다.

공통 모듈이 여러 메타 데이터 오브젝트를 포함하는 기능적 서브 시스템의 일부인 경우,이 섹션에는이 서브 시스템의 다른 오브젝트에서만 호출 할 수있는 서비스 익스포트 프로 시저와 함수가 포함될 수 있습니다.

본질 또는 업무 논리로 서로 관련된 절차 및 기능을 함께 배치하는 것이 좋습니다. 이러한 "기술적 인"순서는 모듈의 로직에 대한 이해를 복잡하게하고 개발자의주의를 구현의 세부 사항으로 전환하기 때문에 명시 적으로 모듈의 프로 시저와 기능을 서버, 클라이언트 및 함수로 그룹화하지 않는 것이 좋습니다.

2.7. 초기화 섹션 에는 모듈 또는 객체 (폼)의 변수를 초기화하는 명령문이 있습니다. 예 :

지원 주소 = "[email protected]"; // 기술 지원부에 문의 할 주소 초기화 수행 ();

주제에 대한 기타 자료 :
데이터베이스 업데이트 , 이벤트 핸들러 , 소프트웨어 인터페이스 , 핸들러 , 절차 , 패턴 , 광고 제목 , 절차 끝 , 기능들 , 인터페이스 , 설명 , 클립 보드 , 복사 , 섹션 , 교환하다 , 형태 , 사물 , 요소 , 구성 , 구성 , 문서

섹션의 자료 : 1C : 코드 작성시 엔터프라이즈 8.2 / 개발자 / 계약

주제에 대한 기타 자료 :

절차 및 기능 설명

선택한 객체의 크기 조정 기능

1C : Enterprise 8.2 플랫폼의 구성을 버전 8.2와 호환되지 않는 1C : Enterprise 8.3 플랫폼으로 이전

절차 및 기능의 이름

권한 모드 사용


우리는 다음과 같은 것을 발견했다 : 모듈 1c구조 , 서비스 프로 시저와 함수 , 모듈, 관리자 모듈 호출 프로 시저 1c 8 2, 다른 모듈에서 프로 시저를 호출하는 방법 1c, 영어 모듈 헤더, 1c 처리 양식 호출 모듈 프로 시저에서 1c 8 2 관리자 모듈에서 프로 시저 호출 1


1C : 엔터프라이즈 8

2011.11.19
Карта