비주기적 독립정보등록 기록변경

1C에는 여러 유형의 레지스터가 있습니다.

  • 잔액이나 매출액을 숫자 형식으로 저장하는 누적입니다.
  • 계산 유형과 계산 자체를 저장하는 계산은 일반적으로 급여 계산에 사용됩니다.
  • Dt-Kt 형식의 회계 계산 데이터가 포함된 회계 기록
  • 정보 레지스터.

측정 섹션별로 데이터베이스에서 데이터를 컴파일할 수 있으므로 후자에 대해 더 자세히 설명하겠습니다. 예를 들어, "가격 명명법"은 특정 품목에 대한 데이터와 특정 가격 유형에 대한 특성을 저장합니다.

그림 1 “가격 명명법” 레지스터

형질

레지스터는 변경 순서를 저장할 필요가 없는 경우 주기적이거나 비주기적일 수 있습니다. 그러나 여전히 저장해야 하는 경우 프로그램이 레코드의 고유성에 대한 제어를 설정하는 기간(초당, 일별, 월별, 분기별 및 연간)이 결정됩니다.


그림 2 주파수 및 기록 모드

동일한 기간 내에 두 개의 레코드를 생성하려고 하면 프로그램에서 "해당 키 필드가 있는 레코드가 존재합니다!"라는 오류가 생성됩니다. 데이터베이스에 쓸 수 없습니다.

녹화 모드를 지정할 수도 있습니다. 첫 번째는 "등록 기관에 제출"로, 기록은 문서로 기록되고 각 문서에는 등록 기관 문서가 표시됩니다. 두 번째 독립 모드를 선택하면 데이터가 레코더에 의해 기록되지 않지만 예를 들어 목록에서 직접 또는 처리로 추가됩니다.


그림 3 녹화 모드

주기 레지스터의 특징은 마지막 또는 첫 번째 레지스터의 조각을 사용하여 특정 날짜의 마지막/첫 번째 설정 값에 대해 데이터베이스에서 미리 만들어진 값을 얻을 수 있다는 것입니다.

1C 정보 레지스터에 입력

마침표가 있는 레지스터의 행과 차원 측면에서 리소스에 대한 정보가 포함된 레코더를 레코드라고 합니다.

레지스터에 레코드를 추가하려면 레코드 관리자나 레코드세트가 사용됩니다. 레지스트리 항목에 공통 키가 있으면 RecordSet을 사용해야 합니다. 그리고 단일 레코드를 기록하려면 등록부의 모든 레코드가 고유한 경우 레코드 관리자를 사용해야 합니다.

Information RegisterRecordSet 개체를 사용할 때의 레코드 예입니다.

녹음 관리자 사용:

NewRecord = 정보 Registers.Currency Rates.CreateRecordManager(); NewRecord.Currency = Directories.Currency.FindByName("USD"); NewRecord.Period = 날짜(31,12,2016); NewRecord.Course = 100; NewRecord.Multiplicity = 1; NewRecord.Write();

레코드 집합과 Write 메서드를 사용하면 레코드가 레코드 집합의 정보 레지스터에 기록됩니다. 이 경우 단순히 라인을 추가하거나 레지스터의 기존 라인을 교체할 수 있습니다. 독립 레지스터의 경우 설정 선택이 없으면 레지스터의 모든 항목이 삭제되고 추가된 항목으로 대체됩니다.

하위 레지스터를 선택하지 않고 데이터를 쓰면 오류가 발생합니다.

레지스트라에 종속된 가격 명칭 정보 등록부의 항목 세트를 사용하는 항목의 예:

NewRecordSet = 정보 Registers.Nomenclature 가격.CreateRecordSet(); NewRecordSet.Selection.Register.Set(링크); NewRecordSet = NewRecordSet.Add(); NewDialRecord.Period = 링크.날짜; NewSetRecord.Nomenclature = 링크.명명법; NewSetRecord.Price = 링크.가격; NewRecordSet.Write();

녹음 관리자를 통한 녹음의 예:

레코드 = 정보 Registers.Currency Rates.CreateRecordManager(); 기록.기간 = 날짜; Entry.Course = 코스; Record.Currency = 통화; 쓰기.쓰기();

정보등록 검색 및 읽기

정보 등록부에서 항목을 찾아 읽으려면 쿼리의 도움이 필요합니다. 예를 들어, 특정 등록기관이 입력한 가격을 가져와야 합니다.

SELECT 명명법 가격. 명명법, 명명법 가격. 가격 FROM 등록 정보. 명명법 가격 HOW 명명법 가격 WHERE 명명법 가격.Registrar = &Registrar

항목 변경 및 삭제

모든 EUR 환율과 같은 정보 등록 항목을 삭제하려면 다음 코드를 사용하십시오.

선택 구조 = new Structure("통화", Directories.Currities.FindByName("EUR")); 선택 = 정보 Registers.Currency Rates.Select(,선택 구조); 동안 Select.Next() LoopRecordManager = Select.GetRecordManager(); Select.GetRecordManager().Delete(); 엔드사이클;

레지스터를 빠르고 완전하게 지우려면 다음 코드를 사용할 수 있습니다.

NewRecord = InformationRegisters.TestRegister.CreateRecordSet(); NewRecord.Write();

레지스터를 조정 및 변경하고 레지스터를 데이터로 빠르게 채우려면 범용 처리를 작성할 수 있습니다.

1C 8 정보 레지스터는 개발자가 정의한 차원의 컨텍스트에서 참조 정보를 저장하도록 설계된 메타데이터 개체입니다.

정보 레지스터를 활용하는 대표적인 예는 통화별, 기간별 환율 정보를 저장하는 것이다.

정보 레지스터의 속성과 설정을 자세히 살펴보겠습니다.

수렴 레지스터의 두 가지 주요 속성은 다음과 같습니다. 주기성그리고 녹화 모드.

이는 다른 메타데이터 개체에는 없는 정보 레지스터의 고유한 속성입니다. 좀 더 자세히 살펴보겠습니다.

이 속성을 사용하면 차원 목록에 추가 차원을 추가할 수 있습니다. 기간. 도움을 받으면 특정 날짜의 관련성을 고려하여 데이터베이스에 정보를 저장하는 등 많은 문제를 해결할 수 있습니다. 기간을 활용하는 응용 사례는 다양합니다. 일자별 통화 가치 저장, 품목 가격 저장 등이 있습니다.

빈도는 다음 값을 사용할 수 있습니다.

  • 비주기적
  • 1초 안에
  • 하루 이내
  • 한 달 이내
  • 블록 내
  • 1년 이내

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

비주기적 옵션 이외의 주기성을 선택하면 시스템은 지정된 기간 내에서 레코드의 고유성을 제어합니다. 레코드가 고유하지 않으면 1C 시스템에 메시지가 표시되고 데이터베이스에 쓸 수 없습니다.

그리고 주기적 정보 레지스터의 주요 특징 중 하나는 "첫 번째 컷"과 "마지막 컷"의 기성 값을 얻을 수 있는 기능입니다. 이 정보를 사용하면 특정 날짜의 마지막(첫 번째) 설정 값에 대한 데이터베이스 정보를 매우 빠르게 얻을 수 있습니다.

정보 레지스터 쓰기 모드

1C 8.2 및 8.3에서 이 속성은 "독립" 또는 "등록 기관에 제출"일 수 있습니다. 첫 번째 경우에는 프로그래밍 방식과 정보 레지스터의 목록 형식 모두에서 항목을 작성할 수 있습니다. 두 번째 경우에는 해당 항목을 기록한 문서를 표시해야 합니다. 이는 특정 제한을 부과하지만 동시에 새로운 기회를 열어줍니다.

세부 정보 등록 차원 속성

또한 정보 레지스터 1C 8.3의 측정 속성 팔레트에도 주의를 기울여야 합니다. 특히 Leading 및 Main Selection 플래그의 경우:

  • 증여자— 이 측정 값이 없으면 레지스터 항목이 의미가 없다는 정보를 암시하는 측정 속성입니다. 실제로 이는 시스템이 차원에서 값을 삭제할 때 "선행" 차원이 있는 레지스터 항목도 삭제함을 의미합니다. 하나의 측정만 설정할 수 있습니다.
  • 주요 선택— 등록이 독립적인 경우 이러한 측정은 교환 계획에 대한 변경 등록을 결정하는 데 사용됩니다. 유사한 사용법 기간별 주요선정주기적 레지스터의 기간에 대한 주요 선택이 포함됩니다.

1C 정보 레지스터에 프로그램 입력

정보 레지스터에 새 레코드를 추가하는 방법에는 레코드 관리자를 사용하는 것과 레코드세트를 사용하는 두 가지 방법이 있습니다. 첫 번째 경우는 단일 레코드에 적합하고 두 번째 경우는 두 개 이상의 레코드에 적합합니다.

녹음 관리자 사용:

NewRecord = 정보 Registers.Currency Rates.CreateRecordManager();
NewRecord.Currency = Directories.Currency.FindByName("USD");
NewRecord.Period = 날짜(31,12,2016);
NewRecord.Course = 100;
NewRecord.Multiplicity = 1;
NewRecord.Write();

1C 정보 등록 레코드 세트 사용:

NewRecordSet = 정보 Registers.Currency Rates.CreateRecordSet();
//선택을 설정하지 않으면 정보 레지스터의 모든 항목이 삭제됩니다.
NewRecordSet.Selection.Currency.Set(달러, True);
NewRecordSet.Selection.Period.Set(날짜(2016-12-31), True);
//설정된 레코드를 직접 형성합니다.
NewRecordSet = NewRecordSet.Add();
NewSetRecord.Currency = Directories.Currency.FindByName("USD");
NewDialRecord.Period = 날짜(2016년 12월 31일);
NewSetRecord.Course = 100;
NewSetRecord.Multiplicity = 1;
NewRecordSet.Write();

이 기사에서 우리는 매우 흥미로운 1C 구성 메타데이터 개체인 정보 레지스터에 대해 알게 될 것입니다. 정보 레지스터는 애플리케이션 작업에서 사용할 수 있는 다양한 정보를 저장하는 데 사용됩니다. 정보 레지스터의 정보는 차원이라는 특정 섹션에 저장되며 시간이 지남에 따라 변경될 수도 있습니다.

정보 레지스터,시간이 지남에 따라 변화하는 정보를 정보라고 합니다. 주기적, 그렇지 않으면 이 레지스터가 호출됩니다. 비주기적. 주기성은 다를 수 있으며, 초당, 분, 시간 등의 주기성이 될 수 있습니다. 최대 - 1년.

비주기적 정보 레지스터 1C

정보 레지스터의 주요 목적은 분석 지표를 저장하는 것입니다. 예를 들어, 연료 유형(AI-92, AI-95 등)을 저장하는 작업과 이러한 유형의 연료에 대한 가격도 저장하는 작업이 있습니다. 이것을 편리하게 정리하는 방법. 확실히, 연료 유형 자체는 일종의 디렉토리에 저장되어야 합니다. 이것이 바로 우리가 연료라고 부를 것입니다. 일종의 연료입니다. 하지만 이런 종류의 연료에 대한 가격은 어디에 저장해야 할까요? 참고서의 첫 번째 솔루션입니다.

분명히, 우리의 가격이 결코 변하지 않는다면 그러한 결정이 내려질 것입니다. 그러나 이것은 인생에서 거의 발생하지 않으므로 이렇게 하면 가격이 변경될 때마다 디렉토리 요소를 변경해야 합니다. 원칙적으로는 그렇지 않습니다. 그러나 새로운 가격 섹션(연료 공급업체)도 추가하면 동일한 유형의 연료라도 공급업체마다 가격이 다를 수 있으므로 디렉터리 세부정보에 가격을 저장하는 것은 근본적으로 불가능합니다. 이 가격이 어느 공급업체와 관련되어 있는지 알 수 없습니다. .

이러한 문제를 해결하기 위해 정보 레지스터라는 특수 구성 개체가 사용됩니다. 이 정보 레지스터에서 특정 유형의 연료, 공급업체, 가격이 설정되어 있음을 나타내는 기록을 생성할 수 있습니다.

이제 이 작은 적용 문제를 해결하겠습니다. 구성에는 "연료 유형"과 "연료 공급업체"라는 두 개의 디렉터리가 있습니다.

공급업체를 고려하여 각 연료 유형에 대한 가격 저장 가능성을 구성할 필요가 있습니다. 이를 위해 우리는 연료 가격 정보에 대한 새로운 등록을 생성할 것입니다.

북마크에 기초적인이름과 동의어를 설정해 보겠습니다. 다른 모든 것은 그대로 두자.

이제 데이터 탭에서 연료 유형과 연료 공급업체라는 두 가지 차원을 생성합니다. 이 차원의 유형은 해당 디렉토리에 대한 링크입니다.

두 차원 모두에 플래그를 설정해 보겠습니다. 증여자. 이는 일부 정보 등록 항목에 나열된 디렉토리 요소를 삭제하면 이 항목이 자동으로 삭제된다는 의미입니다. 이 플래그에는 하나의 인터페이스 결과도 있습니다. 플래그가 설정된 경우 디렉토리 요소의 형태로 이 요소에 대한 이 레지스터의 항목을 볼 수 있습니다.

각 측정에 대해 이 플래그를 설정해 보겠습니다.

우리는 비주기적등록하고 두 가지 차원을 갖습니다. 연료의 종류그리고 연료 공급업체이는 동일한 필드 값으로 두 개의 레코드를 생성할 수 없음을 의미합니다. 연료의 종류그리고 연료 공급업체. 프로그램에서 오류가 발생합니다. 이는 합리적입니다. 동일한 공급자가 제공하는 동일한 유형의 연료에 대해 두 가지 다른 가격이 있을 수 없습니다. 가능하다면 이는 다른 섹션(예: 공급자 기반)을 추가해야 함을 의미합니다.

측정 외에도 정보 레지스터에는 자원그리고 필수조건. 자원정보 레지스터의 기본 정보를 저장해야 합니다. 생성된 데이터 및 소품항목에 대한 추가 배경 정보가 포함되어 있습니다.

우리는 리소스를 만들 것입니다 - 가격(유형 번호 10.2).

그게 다야. 구성을 저장하고 이 정보 레지스터를 열고 일종의 기록을 생성해 보겠습니다.

이제 정확히 동일한 차원 집합을 사용하여 레코드를 생성하려고 하면 "이 키 필드가 있는 레코드가 있습니다."라는 오류가 표시됩니다.

그리고 마지막 요점: 우리는 차원에 있기 때문에 연료의 종류"Leader" 플래그를 설정한 다음 디렉터리 요소를 설정합니다. 연료의 종류"연료 가격"정보 레지스터를 열라는 명령이 나타났습니다

초보 개발자와 숙련된 프로그래머 모두를 위한 관리형 1C 애플리케이션 개발에 대한 훌륭한 가이드입니다.

  1. 매우 접근하기 쉽고 이해하기 쉬운 프레젠테이션 언어
  2. 책은 PDF 형식으로 이메일로 전송됩니다. 모든 기기에서 열 수 있습니다!
  3. 관리되는 1C 애플리케이션의 이념 이해
  4. 관리형 애플리케이션을 개발하는 방법을 알아보세요.
  5. 관리되는 1C 양식을 개발하는 방법을 배우십시오.
  6. 관리되는 양식의 기본적이고 필요한 요소를 사용하여 작업할 수 있습니다.
  7. 관리되는 애플리케이션에서의 프로그래밍이 명확해질 것입니다.

15% 할인 프로모션 코드 - 48PVX헤유


이 강의가 문제 해결에 도움이 되었거나, 마음에 들었거나, 유용하다고 생각했다면, 얼마든지 기부하여 내 프로젝트를 지원할 수 있습니다.

수동으로 결제할 수 있습니다.

Yandex.Money - 410012882996301
웹머니 - R955262494655

내 그룹에 가입하세요.

1C 정보 레지스터이는 차원과 리소스가 포함된 구조화된 데이터 세트입니다. 주기적인 정보를 저장하도록 설계되었습니다.

주기성

정보는 차원과 기간별로 저장됩니다. 정보 레지스터의 빈도를 설정할 수 있습니다.

  • 비주기적
  • 등록기관별
  • 두번째
  • 일주일
  • 4분의 1

특정 기간 동안 레지스터에서 정보를 선택하려면 빈도가 필요합니다. 빈도를 지정하면 등록된 항목은 항목이 작성된 기간으로 작성됩니다. "품목 가격" 레지스터를 보면 가격 변동 내역, 측정 항목, 항목이 작성된 기간을 볼 수 있다고 가정해 보겠습니다.

정보 레지스터의 주기성은 시간이 지남에 따라 변경되는 정보(예: 환율, 제품 가격, 제품 할인 및 가격 인상 등)에 필요합니다.

등록기관

문서를 사용하여 정보 등록부에 항목을 입력하는 경우 입력 모드를 "등록 기관에 제출"로 설정하고 등록부에 항목을 입력할 문서를 선택해야 합니다. 그러면 "등록 기관" 필드가 등록부에 나타나며, 여기에는 항목이 작성된 문서에 대한 정보가 저장됩니다. 레코더를 마침표로 사용할 수도 있는데, 이렇게 하려면 "주파수" 필드에 "레코더별"을 표시하십시오. 등록 기관에 대한 종속은 등록을 문서에 엄격하게 연결해야 하고 등록의 항목을 수동으로 변경할 수 없는 경우 수행됩니다.

등록기관 역할을 하는 문서가 여러 개 있을 수 있습니다. 레지스트라를 추가하려면 원하는 정보 레지스터의 속성으로 이동하여 "레지스트라" 탭으로 이동하여 레지스트라 역할을 할 문서 옆의 확인란을 선택해야 합니다.

문서에서 레코더의 움직임을 볼 수 있습니다. 이렇게 하려면 관심 있는 문서로 이동하여 다음을 클릭해야 합니다. 이동 – 등록기관의 문서 이동.

레지스트리 속성에 권한을 추가하는 것을 잊지 마세요. "권한" 탭에서 할당할 수 있습니다. 그런 다음 역할 목록에서 레지스터에 권한을 추가하려는 역할을 선택하고 권한 목록에서 선택한 역할에 대한 권한을 설정해야 합니다.

기록의 고유성

기록의 고유성은 기간과 측정에 따라 달라집니다. 예를 들어, 같은 날 "품목 가격" 기록부에 동일한 치수로 기록을 기록하려는 경우 기록기의 주기가 다음과 같기 때문에 이 작업을 수행할 수 없으며 프로그램에서 오류가 발생합니다. 하루 안에.

등록자가 빈도를 설정하면 기록의 고유성에도 참여합니다.

비주기적이고 독립적인 레지스터의 경우 고유성은 차원의 조합에 따라 달라집니다.

양식

기록을 보려면 목록 양식을 사용하십시오. 관심 있는 필드에 따라 선택을 설정하고, 기록 내역을 보고, 기록 양식을 통해 변경할 수 있습니다. 다음과 같이 레지스터 항목을 볼 수 있습니다. 상단 메뉴에서 "작업" - "정보 레지스터" 버튼을 클릭합니다. 열리는 창에서 필요한 레지스터를 선택하십시오. 그 후, 각 항목이 고유한 항목인 테이블 형식의 목록 양식이 열립니다.

편집/생성하려면 레코드 양식을 사용하십시오. 레코드가 등록기관에 종속된 경우 해당 필드를 사용할 수 없으며 양식을 생성할 수 없습니다.

정보 레지스터의 "양식" 탭으로 이동하여 원하는 양식 유형 옆에 있는 "돋보기"를 클릭하여 구성기에 양식을 추가해야 합니다. 다음으로, 향후 양식의 필드(위치, 이름 및 기능 지정)를 구성할 수 있는 창이 열립니다.


차원, 리소스 및 세부정보

차원은 레코드의 고유성을 형성하기 위한 것이며 나중에 이를 선택하고 특정 차원을 기반으로 잘라낼 수 있습니다. 측정값의 조합이 기록 키를 형성합니다. 테이블이 커지지 않고 작업하는 동안 속도가 느려지지 않도록 많은 수의 차원을 생성하지 않는 것이 좋습니다.

차원에는 "선행" 확인란이 있습니다. 이 확인란을 선택하면 이 차원이 존재하는 한 레코드가 데이터베이스에 저장됩니다. 여러 주요 측정을 수행할 수 있습니다. 예를 들어, "품목 가격" 정보 등록에서 선행 차원은 품목이며, 기록에 포함된 품목을 삭제하면 해당 품목에 대한 정보 등록의 항목이 자동으로 삭제됩니다.

리소스는 수량, 가격 등의 요약 정보를 저장하도록 설계되었습니다. 미래에는 측정에 따라 특정 기간(레지스터가 주기적인 경우) 동안 리소스를 받게 됩니다.

대부분의 경우 세부정보는 추가 정보를 저장하기 위한 것이며 레코드의 고유성에 참여하지 않습니다. 예를 들어 작성자, 댓글 등의 정보를 세부정보에 입력할 수 있습니다.

정보 레지스터를 사용하여 다음 작업을 수행할 수 있습니다.

  • 1C 정보 레지스터에서 항목 삭제

특징

— 일련의 차원을 기반으로 한 레코드의 고유성: 정보 레지스터의 각 레코드는 새로운 자원 값입니다.

— 정보 레지스터의 항목은 주기적일 수도 있고 그렇지 않을 수도 있습니다.

— 정보 레지스터는 레지스트라에 종속되거나 독립적일 수 있습니다.

— 원하는 날짜의 첫 번째 기록과 마지막 기록의 단면을 만드는 것이 가능합니다. 이는 가상 테이블인 "Slice of the First" 및 "Slice of the Last"에 의해 구현됩니다. 이러한 테이블을 사용하려면 선택과 쿼리를 모두 사용할 수 있습니다. 쿼리 디자이너에서 이러한 가상 테이블을 선택하고 이에 대한 쿼리를 만들 수 있습니다. 이 테이블은 정보 레지스터가 주기적일 경우 사용할 수 있습니다.

"품목 가격" 등록부는 정기적인 정보 등록부이며 등록 기관에 따라 항목이 작성됩니다.

이미지에서는 빈도가 하루 이내로 설정되어 있음을 보여줍니다. 이는 하루 동안의 고유한 측정값을 기준으로 가격이 하루에 한 번 변경될 수 있음을 의미합니다.

기록부는 "품목 가격 설정" 문서에 종속됩니다. 이는 등록부에 대한 항목이 이 문서에서 나온다는 것을 의미합니다. 특정 문서의 움직임은 “아이템 가격 설정” 문서 양식에서 확인할 수 있습니다.

레지스터는 "가격 유형", "품목" 및 "품목 특성" 차원을 사용하여 품목 가격에 대한 정보를 저장하도록 설계되었습니다. 선행 차원은 세 가지 차원 필드가 모두 포함되므로 샘플링 시 이를 기반으로 선택할 수 있습니다.

결론:기사를 읽은 후에는 1C 정보 레지스터를 생성하고, 차원 및 리소스를 추가하고, 편집 및 목록 양식을 구성할 수 있습니다. 레코드를 생성하고 기존 레코드를 선택합니다. 궁금한 점이 있으시면 기사의 댓글을 활용해 주시면 신속하게 답변해 드리겠습니다.