호환성 모드를 변경하거나 비활성화합니다. 구성 확장 - 지원을 제거하지 않고 표준 구성에 기능을 추가하는 방법(20분 동영상) 어떤 확장이 필요한가요?

이 기사에서는 "구성 확장"이 무엇인지, 확장을 추가하거나 비활성화하는 방법을 고려할 것을 제안합니다. 버전 1C부터 1977년 6월 8일 새로운 메커니즘(구성 확장)이 플랫폼에 도입되었습니다. 첫째, 약간의 이론입니다.

1C의 확장은 기본 공급업체 구성과 자동으로 결합되는 병렬 구성과 유사합니다. 또한 확장에서는 기본 구성의 개체와 차용 개체를 모두 추가할 수 있습니다.

확장 기능은 무엇입니까?

우선, 프로그램을 더 쉽게 변경할 수 있도록 확장 기능이 생성됩니다. 즉, 사용자가 기능 추가를 요청하면 확장 기능이 나타나기 전에 프로그래머는 전체 지원에서 구성을 제거하고 변경해야 했습니다. 일반적인 구성.

전체 지원이 중단되면 다음과 같은 불편함이 따릅니다.

  • 기회가 사라집니다 자동 업데이트, 이는 적어도 시간의 증가로 이어집니다.
  • 프로그램을 서비스하는 우수한 전문가가 필요합니다.
  • 표준 구성의 표준 개체가 변경된 경우 업데이트 중에 해당 개체가 사라질 수 있습니다. 즉, 공급자의 표준 개체로 다시 교체될 수 있습니다.

확장을 사용할 때, 변경할 때 프로그래머는 표준 구성을 건드리지 않습니다. 모든 변경 사항은 (위에 쓴 것처럼) 구성이기도 한 확장을 사용하여 수행됩니다. 이렇게 하면 기본 구성이 완전히 지원됩니다.

기본 구성을 업데이트한 후 이전에 확장에 의해 변경된 개체에 대한 변경 사항이 새 릴리스에 있는 경우 변경 사항은 여전히 ​​확장에서 적용됩니다. 즉, 확장은 기본 구성보다 우선순위가 높습니다.

비디오 - 45분 만에 1C 확장

1C에서 267개의 비디오 강의를 무료로 받으세요:

1C에 확장을 추가하는 예

확장이 무엇인지 보여주기 위해 1C 구성기에서 생성 예를 제공하는 것이 좋습니다.

구성기에서 "구성" 메뉴로 이동하여 "구성 확장"을 선택합니다. 확장 프로그램 목록(있는 경우)이 포함된 창이 열립니다. "추가" 버튼을 클릭하고 새 확장명을 추가하세요. 이제 확장 구성을 열 수 있습니다.

보시다시피 확장 구성은 기본 구성과 구조가 완전히 동일합니다. 처음에는 물체 없이 완전히 깨끗합니다.

최근에 직접 만드는 방법에 대한 기사를 썼습니다. 그녀의 예를 사용하여 확장 기능을 사용하여 내장으로 만들고 싶습니다.

처리 중에 "조직" 디렉터리에 대한 링크가 있는 필드가 있습니다. 그렇기 때문에 이 가이드가 필요합니다. 그러나 우리는 새로운 "조직" 디렉토리를 생성하지 않을 것입니다. 특히 플랫폼이 이를 허용하지 않기 때문입니다. 확장 구성에는 기본 구성의 개체와 동일한 이름의 개체가 포함될 수 없습니다.

따라서 기본 구성에서 참고서를 빌릴 것입니다.

이제 "처리"를 마우스 오른쪽 버튼으로 클릭하고 "삽입"을 선택하십시오. 외부 처리, 보고..." 따라서 확장 구성에 새로운 처리를 추가해 보겠습니다. 내 처리를 사용하는 경우 기본 구성에 이미 동일한 이름의 처리가 있으므로 즉시 이름을 바꾸십시오.

글쎄, 마지막 손길. 내 처리 내용이 관리 메뉴에 반영되기를 원합니다. 이를 위해 기본 구성에서 동일한 이름의 하위 시스템을 차용합니다. 이 하위 시스템에 속한다는 것을 처리 과정에서 표시하는 것을 잊지 마세요.

제가 생각해낸 구조는 이렇습니다.

우리가 무엇을 얻었는지 봅시다. 데이터베이스 구성을 업데이트하고 1C: 엔터프라이즈 모드에서 프로그램을 시작한 다음 "관리" 메뉴로 이동합니다. 예, 잊어버릴 뻔했습니다. 확장 구성을 닫아야 합니다. 그렇지 않으면 프로그램이 시작되지 않습니다.

확장을 통해 메타데이터 개체를 추가하고 변경할 수 있는 플랫폼 8.3.11의 새 릴리스가 릴리스되었습니다. 이제 지원에서 구성을 제거하지 않고도 개선 사항을 구현할 수 있습니까? 어떠한 결과도 없이 고객에게 산더미 같은 금을 약속하는 것이 가치가 있습니까?

우선, 확장 프로그램의 한계를 알아야 합니다.

생성된 객체에 대한 제한

~에 이 순간다음을 생성할 수 있습니다:

  • 디렉토리
  • 선적 서류 비치
  • 정보 레지스터
  • 교류 계획

다음에 세부정보를 추가할 수 있습니다.

  • 디렉토리
  • 선적 서류 비치

우리는 결국 무엇으로 끝나나요? 모든 유형의 메타데이터 개체를 추가할 수 있는 것은 아닙니다. 가장 일반적이고 인기가 있지만 여전히 전부는 아닙니다. 또한 정보 레지스터에 새로운 차원과 리소스를 추가할 수 없습니다. 완전히 새로운 레지스터만 생성할 수 있습니다.

확장 기능은 확장이 적용되는 구성의 호환성 모드에 따라 달라집니다.

호환성 모드 8.3.8- 개체 및 해당 모듈의 형태만 변경할 수 있으며, 자신만의 보고서 및 처리를 추가할 수 있습니다.

호환성 모드 8.3.10- 일반 모듈, 개체 및 관리자 모듈, 역할을 변경할 수 있으며 모든 모듈에 대해 "이전", "이후", "대신" 지시어를 사용할 수 있습니다.

호환 모드 "사용하지 않음"- 새 개체 추가를 포함하여 확장의 모든 기능을 사용할 수 있습니다.

현재 표준 UT 11.3에는 호환 모드 8.3.8이 있습니다. UT 11.4에서 호환성 모드는 8.3.10입니다. 즉, 예를 들어 UT의 경우 메타데이터 개체 생성을 포함하여 대부분의 확장 기능을 사용할 수 없습니다.

이는 다음과 같은 질문을 던지는 것 같습니다. 루트 지원을 해제하고 호환성 모드를 "사용하지 않음"으로 설정한 다음 조용히 확장 기능을 사용하면 어떨까요? 호환성 모드를 변경하면 양식 및 쿼리 결과의 동작이 변경될 수 있습니다. 시스템 전체의 동작. 먼저 테스트하지 않고 호환성 모드를 변경하지 않는 것이 좋습니다. 그러나 전체 애플리케이션 솔루션을 완전히 테스트(또는 사용된 문서를 적어도 부분적으로 테스트)하는 것이 가능해 보인다는 것은 분명합니다. 따라서 이 옵션을 사용하면 안 됩니다.

확장을 표준 구성에 연결하고 표준 개체를 차용할 때 확장은 기본 구성의 호환성 모드와 차용 개체 유형 및 세부 정보를 제어합니다. 모니터링되는 속성이 일치하지 않으면 확장이 비활성화되고 원인이 제거될 때까지 작동하지 않습니다. 즉, 대규모 업데이트를 수행하면 제어되는 속성 중 하나 이상을 변경하여 확장 프로그램의 기능이 상실될 가능성이 높습니다.


또한 수정 사항이 상당하고 표준 구성의 많은 절차와 기능이 대체되는 경우 이를 주의 깊게 모니터링하고 필요한 경우 이전 변경 사항을 유지하면서 표준 구성에 맞게 조정해야 합니다.


위의 경우에는 여전히 프로그래머의 도움이 필요하며 아마도 수정에 상당한 시간이 필요할 수 있습니다(그러나 지원에서 제거된 구성을 업데이트할 때보다는 적습니다).

결론

  • 플랫폼의 새로운 릴리스는 확장 기능을 사용할 수 있는 새로운 기회를 제공했으며 메타데이터 개체를 추가하는 것이 가능해졌지만 그럼에도 불구하고 기능에는 특정 제한이 있습니다.
  • 확장이 적용되는 구성의 호환성 모드는 확장의 기능을 크게 제한하므로 호환성 모드를 변경하지 않는 것이 좋습니다.
  • 대규모 업데이트에는 제어된 속성이 변경될 가능성이 높기 때문에 여전히 개발자의 주의가 필요합니다.

테마는 "깔끔" 표준에 대한 수정구성은 항상 최신 상태입니다.

확장 기능을 사용하면 구성을 종료하지 않고도 수정이 가능해집니다. 변경 없이(그건 자물쇠를 제거하지 않고).

예를 들어 우리는 표준 기능을 확장하자"1C: 회계 8" – 문서 세부 사항의 완전성에 대한 검사를 추가합니다. 결과적으로 세부 정보가 "잘못된" 값으로 채워지면 시스템은 진단을 발행합니다.

문자 그대로 15분 안에다양한 문제를 해결하는 데 사용할 수 있는 기술을 배우게 됩니다.

게다가 두 번째 영상에서는 보여드리겠습니다. 범용 메커니즘, 확장자를 기반으로 합니다. 그리고 그러한 메커니즘을 개발한 결과 한 번, 다음에 연결될 수 있습니다. 모든 표준 구성.

꿈을 꾸다 자신의 불멸의현실이 될 수 있어요 :)

그럼 시작해 보겠습니다.

비디오 1. 확장 작업 기술 - "1C: Accounting 8"의 예 사용

비디오를 공부한 후에는 다음 내용을 배우게 됩니다.

  • 생성 및 연결구성 확장
  • 다하다 디버깅확장
  • 표준 양식 개선확장 기능을 사용한 처리/문서
  • 이벤트 차단표준 구성 양식
  • 데이터 저장정보 보안 테이블(설정 저장소)에 없음
  • 트리트먼트를 다음과 같이 사용하세요. 알고리즘 저장소

우리는 또한 살펴볼 것입니다 최적화확장 개체의 구성 및 확장 제한현재 플랫폼 릴리스에서는.

동영상 2. 확장을 사용하여 범용 메커니즘 만들기

이 비디오에서는 다음을 보여줍니다.

  • 사용자 모드에서 확장 연결( 구성자 없이)
  • 보편적 검증 충전재
  • 확장 구현의 특징 - 임의 선택으로 양식 생성 및 확장 프로그램에 데이터 저장

동료 여러분, 안녕하세요.

얼마 전 플랫폼 8.3.6에 대한 호환성 모드가 비활성화된 테스트 Enterprise Accounting이 출시되었습니다.
이는 이 버전이 새로운 방식으로 양식을 렌더링하는 새로운 엔진을 사용한다는 것을 의미합니다.
이에 대해서는 거울을 통해(Through the Looking Glass)에서 읽을 수 있습니다.

표준 확장과 함께 자신의 확장도 새 플랫폼으로 변환해야 합니다.
번역 과정에서 나는 해야 할 일에 대한 작은 체크리스트나 알림을 만들었습니다.

메모:


1. 확장 기능을 새로운 플랫폼으로 이전

이렇게 하려면 확장 호환성 모드를 구성 호환성 모드로 변경하세요.
Enterprise Accounting 버전에는 다음과 같은 속성이 있습니다.

확장에서는 정확히 동일한 속성을 설정하거나 모든 확인란을 선택 취소할 수 있습니다.
확인란이 없다는 것은 연결 시 확장 프로그램이 이러한 속성을 확인하지 않는다는 의미입니다.
그런 다음 기본 구성에서 이러한 속성이 변경되면 확장은 계속 실행됩니다.


2. 연결 문제 해결

이를 위해 엔터프라이즈 모드에서 구성을 실행하고 실행 여부를 확인합니다.
확장 프로그램을 연결할 수 없는 오류는 로그에서 볼 수 있습니다.
(관리 - 지원 및 유지 관리 - 로그북)
우리는 이벤트에 관심이 있습니다 – “Session. 구성 확장을 적용하는 동안 오류가 발생했습니다.":

대부분의 경우 연결 문제는 불필요한 세부 사항이나 개체를 제거하여 해결됩니다.

가장 큰 어려움은 확장 프로그램이 모든 오류를 한 번에 표시하지 않는다는 것입니다(그런데 이 문제는 8.3.9에서 해결되었습니다).
따라서 각 오류를 수정한 후 순차적으로 구성을 실행해야 합니다.
로그북을 편리하게 시작하려면 즐겨찾기에 추가하세요.



3. 확장 프로그램의 양식 업데이트

이렇게 하려면 변경된 각 양식에서 "양식 확장 업데이트"를 클릭하세요.
이 명령을 사용하여 기본 구성 양식을 확장에 다시 로드합니다.

원칙적으로는 이것이 없어도 작동하지만 확장에서 양식이 기본 구성과 동일하게 보이도록 하려면 이것이 필요합니다.
3.0.44 버전에서는 거의 모든 양식이 변경되었으므로 이러한 변경 사항을 확장 프로그램에 포함시키는 것이 좋습니다.


4. 새로운 엔진의 규칙에 맞게 형식을 조정합니다.

8.3.7에 양식을 적용하기 위한 권장 사항 기사를 읽어 보시기 바랍니다.
새 엔진의 기능을 검토하고 새 플랫폼에서 모든 것이 제대로 작동하는지 확인하는 방법에 대한 구체적인 권장 사항을 제공합니다.

나는 다음 절차를 생각해 냈습니다.

  • 우리는 모든 장식을 제거합니다, 들여쓰기에 사용되었습니다.
    이제 그룹이 대신 사용됩니다.
  • 모든 것이 좋아 보이는지 봅시다.
    문제가 있으면 기사를보십시오.
    모든 것이 좋으면 계속 진행합니다.
  • 새 플랫폼 속성 확인"결합", "AutomaximumWidth" 및 "AutomaximumHeight".
    이러한 속성이 플랫폼 기본값으로 설정되어 있고 이로 인해 양식이 분리되지 않는지 확인하세요.