스프레드시트 문서 작업. 안내 양식: 병합된 셀이 있는 레이아웃 읽기(특히 Excel에서) 1c 출력 데이터를 스프레드시트 문서로

스프레드시트 문서는 행과 열로 구성된 셀로 구성된 기본 문서와 보고서를 만드는 데 사용됩니다. 각 행과 열에는 고유한 번호가 있습니다. 이 경우 "표 - 이름" 섹션을 사용하여 원하는 영역을 강조 표시하여 개별 셀, 범위 및 그래픽 개체의 이름을 지정할 수 있습니다. 그런 다음 입력 필드에 이름을 입력하고 "할당"을 클릭합니다.

이름을 삭제하려면 목록에서 이름을 선택하고 "삭제" 버튼을 클릭하십시오. 사용자가 이름을 지정하지 않은 영역에는 프로그램이 자동으로 이름을 지정합니다. 이러한 이름은 특성 팔레트에서 볼 수 있습니다. 스프레드시트 편집기를 사용하여 새 문서를 만들고, 이전 보고서의 결과를 보고, 표 형식의 문서를 편집할 수 있습니다.

1C에서 스프레드시트 문서를 만드는 방법

새 문서를 생성하려면 "파일" - "새로 만들기" 섹션을 클릭한 다음 "표 형식 문서" 행을 선택하고 "확인" 버튼으로 확인하십시오. 이미 생성된 문서를 열어야 하는 경우 "파일" - "열기" 섹션의 목록에서 필요한 문서의 파일 이름을 선택합니다. 이 경우 "파일 형식" 필드를 클릭하여 열려 있는 문서의 형식을 선택할 수 있습니다.

표 생성 시 셀을 선택하고 데이터(텍스트, 수식, 수치 데이터)를 입력합니다. 셀의 크기를 변경해야 하는 경우 메뉴에서 "서식 - 선 - 자동 맞춤 - 열 - 자동 맞춤"을 선택합니다. 이렇게 하려면 행 또는 열 머리글의 테두리 위로 마우스를 이동하고 마우스 왼쪽 버튼을 누른 상태에서 끌어 크기를 조정합니다. 스프레드시트 문서의 행 높이와 열 너비는 1C로 수정됩니다. 머리글 테두리를 두 번 클릭하면 자동 맞춤 명령이 열립니다.


데이터베이스의 모든 작업을 안전하게 반복하거나 1C에서 스프레드시트 문서를 쉽게 만들 수 있습니다. 기성 솔루션 - 클라우드 버전 라이센스 프로그램 1C. 1C Online에서 14일 동안 무료로 서비스를 테스트하십시오.

1C에서 행 높이와 열 너비를 변경하는 방법

스프레드시트 문서의 행과 열은 수동 또는 자동으로 크기를 조정할 수 있습니다.

1C 프로그램에서 스프레드시트 문서의 행 높이가 변경됩니다. 수동으로행 머리글의 아래쪽 테두리 위로 마우스를 가져간 다음 마우스 커서가 분기된 수직 화살표로 변환될 때까지 기다리면 됩니다. 그런 다음 헤더의 테두리를 이동하여 필요한 줄 높이를 설정합니다.

헤더의 오른쪽 테두리 위에 마우스 포인터를 놓고 마우스 커서가 수평 갈래 화살표로 변환될 때까지 기다리면 열 너비를 변경할 수 있습니다. 제목의 테두리를 마우스로 이동하고 필요한 너비를 설정합니다.

최소 필수 열 너비는 머리글 테두리를 두 번 클릭하여 설정할 수 있습니다. 편집기는 텍스트가 완전히 맞는 너비를 독립적으로 설정합니다.

수동으로 변경하는 또 다른 방법이 있습니다. "Ctrl" 키를 누르고 필요한 셀 테두리 위로 마우스를 이동합니다. 커서의 모양이 변경된 후 원하는 크기로 설정합니다.

1C에서는 스프레드시트 문서의 열 너비가 변경됩니다. 자동으로, 필요한 열을 선택하고 "표" - "셀" - "열 너비" 섹션을 선택하는 경우. 표시되는 창에서 너비를 지정하고 "확인"을 클릭합니다.

새 스프레드시트 문서를 만들 때 모든 열의 너비는 기본적으로 설정됩니다. 그러나 변경될 수도 있습니다. 이렇게하려면 "표"에서 "셀"- "열 너비"를 선택하십시오. 표시되는 창에서 열 크기를 설정하고 "확인"을 클릭합니다. "자동"을 선택하면 크기가 전체 문서에 맞게 설정됩니다.

"자동 줄 높이" 확인란을 선택하면 줄 높이가 자동으로 변경됩니다. 확인란을 선택하지 않으면 "선 높이" 필드에 고정된 선 크기가 설정됩니다.

다른 줄에 대해 다른 열 너비를 설정하려면 문서의 하나 또는 여러 줄을 선택해야 합니다.

열 구분 기호 위로 마우스를 이동하고 마우스 왼쪽 버튼을 누릅니다. 버튼을 놓지 않은 상태에서 원하는 방향(예: 왼쪽)으로 열을 드래그한 후 버튼에서 손을 뗍니다. 나타나는 창에서 "확인"을 클릭하십시오.

텍스트, 배경 및 테두리의 색상을 제어할 수도 있습니다.


일반적으로 스프레드시트 문서는 인쇄 양식을 형성하기 위한 템플릿인 레이아웃을 기반으로 구성됩니다. 레이아웃 자체에 그림, 차트 및 피벗 테이블을 포함할 수 있습니다. 예는 송장 인쇄를 위한 레이아웃을 보여줍니다.


일부 셀에는 텍스트만 포함되고 다른 셀에는 "스프레드시트 문서" 개체의 "매개변수"를 통해 프로그램 모듈에서 지정해야 하는 매개변수 이름이 포함됩니다.

스프레드시트 문서에서 행 그룹화

스프레드시트 문서에서 보고서의 데이터를 분류하기 위해 행과 열을 그룹화할 수 있습니다. 오른쪽 또는 왼쪽에 배치할 수 있는 수평 그룹과 상단 또는 하단에 배치할 수 있는 수직 그룹이 있습니다.

그룹화 수준도 표시할 수 있습니다. 헤더의 숫자를 누르면 모든 그룹이 한 번에 확장됩니다. 그룹화를 적용하면 수준 들여쓰기가 자동으로 생성됩니다.


스프레드시트 문서 1C 디코딩

암호 해독 메커니즘을 사용하여 상세 보고서나 추가 보고서를 받아 보겠습니다. 이렇게 하려면 문서의 줄이나 셀을 마우스로 클릭합니다.

문서의 암호를 해독하는 데는 두 단계가 있습니다.

  • 표준 - 문서 또는 디렉토리 요소를 마우스로 클릭하면 시스템이 보기 위해 이 개체를 엽니다.
  • 비표준 - 자세한 보고서를 얻기 위한 알고리즘을 설정합니다. 이를 위해서는 추가 선택 조건("이 거래상대방에 대한 판매만 표시")을 사용하여 기존 것을 재구성해야 합니다. 또는,

암호 해독을 사용하면 완전히 새로운 보고서를 얻을 수 있습니다(예: "이 상대방의 판매량에 기여한 송장 표시").

특정 애플리케이션 솔루션에 포함된 보고서의 호출이 자동으로 수행되기 때문에 사용자의 작업이 복잡해집니다. 작업을 용이하게 하려면 암호 해독 메커니즘이 필요합니다.

스프레드시트 문서를 1C로 저장하는 방법

나중에 스프레드시트 문서를 사용하려면(열기, 보기, 인쇄) 저장해야 합니다. "파일"섹션을 선택하고 "저장"을 클릭하십시오. 그런 다음 디렉토리와 파일 이름을 나타내는 창이 화면에 나타납니다. 문서의 이름을 바꾸거나 다른 형식으로 저장해야 하는 경우 "파일" 및 "다른 이름으로 저장" 섹션을 선택합니다.

일반적으로 문서는 1C: Enterprise 시스템(* .mxl)에서 사용하는 형식으로 저장됩니다. 이 경우 스프레드시트 문서를 다른 형식으로 내보낼 수 있습니다. 데이터 저장, 에서 ODF 스프레드시트 형식(* .ods) 포함, 워드 문서(* .docx), HTML 문서(* .htm) 또는 텍스트 파일유니코드(* .txt). 또한 스프레드시트 문서를 1C에서 Excel 또는 pdf로 저장할 수 있습니다.

1C에서 스프레드시트 문서 인쇄하기

인쇄하기 전에 문서를 미리 보려면 "파일 - 미리보기" 섹션을 선택하십시오. 미리보기를 종료하려면 "닫기" 버튼을 누르십시오.

페이지 설정에서 1C에서 스프레드시트 문서의 인쇄 매개변수(크기, 크기, 테두리 등)를 설정합니다. 스프레드시트 편집기에서 행과 열을 배치하기 위한 매개변수를 설정합니다. 페이지의 위치는 페이지 매김, 행과 열의 반복 등을 적용합니다.

"파일" - "인쇄" 섹션을 클릭하여 문서를 프린터로 출력해 보겠습니다. 설정이 포함된 창이 페이지에 나타나며 여기서 인쇄 매개변수(프린터, 페이지 범위 및 복사 매수 선택)를 설정하고 "확인"을 클릭합니다.

질문있으세요? 댓글로 물어보면 우리는
우리는 확실히 대답할 것입니다.

좋은 시간입니다, 여러분!

우리가 분석할 작업의 본질은 "SpreadsheetDocument" 개체를 사용하여 스프레드시트 문서의 병합된 셀에서 데이터를 읽는 방법입니다. 또한 선택한 데이터를 반복하는 방법에 대해서도 설명합니다. 시작하겠습니다.

시트 문서 읽기

1C에서 스프레드시트 문서를 읽기 위해 이상하게도 "TabularDocument" 개체를 사용할 수 있습니다. 버전 8.3.7(메모리가 변경되지 않는 경우)부터 이 개체는 MXL 파일뿐만 아니라 XLS/XLSX/ODT 및 기타 테이블 변형도 읽을 수 있습니다(또한 쓰기도 가능).

그러나 항상 그렇듯이 작은 문제가 하나 있습니다. 개체는 서버에서만 생성됩니다. 그러나 1C는 메모리에 스트림을 생성하고 프로그래머에게 객체의 생성자에 있는 파일 경로 대신 스트림을 사용할 수 있는 기회를 제공하여 이 문제를 해결하려고 시도했지만 동시에 파일 형식을 지정해야 합니다. 읽다. 사실, 1C 8.3.10.2466이 설치된 내 Windows 7 pro x64 플랫폼에서는 이 방법으로 Excel을 읽을 수 없지만 MXL은 잘 읽으므로 Excel 파일의 경우 여전히 임시 파일을 만들어야 합니다.

따라서 파일을 읽는 코드는 다음과 같습니다.

& AtServer 프로시저 LoadFileAtServer(DD, 확장) 확장 = "xml"이면 BH = 새 ReadData(DD); Tab.Read(BH, TabularDocument Values.Value 읽기 방법, TabularDocumentFileType.MXL); 그렇지 않으면 FileName = GetTemporaryFileName(확장자); DD.Write(파일명); Tab.Read(파일명); 파일 삭제(파일 이름); EndIf; EndProcedure & OnClient 프로시저 LoadFile(명령) Dlg = 새 FileChoose 대화 상자(FileSelectDialogueMode.Opening); Long.Filter = "MXL 파일(* .mxl) | * .mxl | XLS 파일(* .xls) | * .xls | XLSX 파일(* .xlsx) | * .xlsx | ODS 파일(*. ods) | * .ods "; Long.Show(새 경고 설명("OnFileFile", EtaForm)); EndProcedure & AtClient 프로시저 OnFileFile 선택(Res, 추가) Res = 정의되지 않은 경우 내보내기 EndIf를 반환합니다. fl = 새 파일(해상도); LoadFileOnServer(새 BinaryData(Res), NReg(fl.Extension)); 절차 종료

스프레드시트 문서와 "파일 업로드" 버튼이 있는 양식을 만들고 MXL, XLS, XLSX 및 ODS 파일을 스프레드시트 문서로 읽을 수 있는 양식을 만들어 보겠습니다.

선택한 셀

사용자가 선택한 셀이 있는 위치를 알아보겠습니다. 그리고 여기서 플랫폼의 흥미로운 기이함은 이러한 선택된 셀이 해당 양식 요소의 클라이언트에서만 사용할 수 있다는 것입니다. 선택한 셀을 살펴보고 결과를 메시지 문자열로 인쇄해 보겠습니다.

& 클라이언트 프로시저 ReportSelected(명령) FROM Elements.Table.GetSelected Areas() 루프 For X = Region.Left ON Region.Right Cycle For Y = Region.Up Region.Bottom 주기 보고서(Tab.Area(Y) , X) .텍스트); 사이클 종료; 사이클 종료; 사이클 종료; 절차 종료

이제 병합된 셀이 없는 첫 번째 행을 선택하면 다음 결과를 얻습니다.

저것들. 여기에 A, B 및 C가 인쇄되었습니다. 두 번째 줄을 선택하면 다른 그림이 표시됩니다.

보시다시피, 공용체의 존재는 우리가 문자열과 결합한 문자열에서 데이터를 가져오는 것을 방해하지 않으며, 이 두 줄 모두 "A" 값을 포함합니다. 세 번째 줄을 선택하면 "A A A"라는 출력이 나옵니다.

유나이티드 셀

병합된 셀의 문제를 해결하려면 각 셀에 "왼쪽", "오른쪽", "상단" 및 "하단"이 필요합니다. 병합된 셀의 경우 동일하지 않습니다. 간단한 X축 합집합의 경우 합집합을 염두에 두고 읽는 것은 충분히 간단합니다.

각 영역에 대해 FROM Elements.Tab.GetSelected 영역 () X = Area.Left ON Area.Right Cycle For Y = Area.Top ON Area.Bottom 사이클 보고서 (Tab.Area (Y, X) .Text); X = X + 탭 영역(Y, X) 오른쪽 - 탭 영역(Y, X) 왼쪽, 사이클 종료; 사이클 종료; 사이클 종료;

X에 오른쪽을 더하고 왼쪽을 빼면 됩니다.

그리고 "Y"축의 경우 (숙제로) 스스로 알아낼 것을 제안합니다.

객체를 기반으로 한 인쇄물의 형성을 설명할 때 1C 시스템에서 프로그래밍에 대한 대부분의 교재 "표 형식 문서"완성된 양식을 화면에 표시하는 것으로 제한됩니다. 사용자의 경우 문서를 인쇄할 때 문서가 어떻게 표시되는지가 훨씬 더 중요합니다. 여기에서 잘 설계된 레이아웃 외에도 인쇄 설정도 역할을 합니다.

인쇄 설정 대화 상자에서 사용할 수 있는 거의 모든 매개변수(프린터 설정, 페이지 속성)는 스프레드시트 문서를 생성할 때 직접 지정할 수 있습니다.

인쇄 설정과 관련된 스프레드시트 문서의 속성 및 방법을 고려하십시오(제공된 예에서 "TabDoc"은 "스프레드시트 문서" 유형의 개체임).

재산 "프린터 이름"기본 인쇄 이외의 프린터를 설정할 수 있습니다. 이름은 시스템에 설정된 프린터 이름과 일치해야 합니다.

탭닥. 프린터 이름 = "HP 레이저젯 3050 시리즈 PCL 6";

문서 배치를 인쇄할 때 한 부씩 인쇄 플래그를 설정하여 시간을 절약할 수 있습니다.

탭닥. ParseCopy = 참;

복사 매수는 다음과 같이 지정할 수 있습니다.

탭닥. 사본 수= 5 ;

물론 다음 필드를 설정할 수 있습니다.

탭닥. 왼쪽 필드 = 20; // 왼쪽 여백 20mm, 기타 여백 10mm(기본값)

몇 가지 추가 페이지 속성:

탭닥. 오리엔테이션 페이지= 오리엔테이션 페이지... 풍경;
탭닥. InstancesOnPage= 2 ; // 2페이지가 시트에 배치됩니다.
탭닥. 자동 크기 조정 = true; // 페이지 너비 확대/축소 설정과 유사

필요한 경우 특정 배율 값을 백분율로 지정할 수 있습니다(속성 "인쇄 스케일").

재산 "페이지 크기"표준 페이지 크기를 설정할 수 있습니다. - " A 3 "," A4 "," A 5 "(전체 옵션 목록은 1C 도움말에서 볼 수 있음).

탭닥. 페이지 크기 = "A3"; // 문자 A는 영어여야 합니다.

사용자 정의 용지 크기(사용자 정의)의 경우 페이지 높이 및 너비 값(mm)을 지정할 수 있습니다.

탭닥. PageSize = "사용자 정의"; // 사용자 정의 크기
탭닥. 페이지 높이 = 350;
탭닥. 페이지 너비 = 350;

또한 스프레드시트 문서에서 머리글과 바닥글의 출력과 그 내용을 제어할 수 있습니다. 이것은 속성을 사용하여 수행됩니다. "페이지 헤더"그리고 "보행인".예를 들어:

탭닥. 페이지 헤더... 출력 = 참; // 헤더를 출력합니다
탭닥. 헤더 크기 상단= 7 ; // 바닥글 크기 7mm(기본값 10mm)
탭닥. 페이지 헤더. 수직 위치= 수직 위치... 맨 위;
탭닥. 페이지 헤더. 시작 페이지= 2 ; // 바닥글은 두 번째 페이지부터 표시됩니다.
폰트= 새 글꼴("Courier New", 8, True);
탭닥. 페이지 헤더... 글꼴 = 폰트; // 기울임꼴 글꼴
탭닥. 페이지 헤더... 텍스트인센터 = "페이지 헤더";
탭닥. 페이지 헤더... 텍스트 오른쪽 = "[& PagesTotal]의 페이지 [& PageNumber]"; //쪽수 매기기
탭닥. 페이지 헤더... 왼쪽 텍스트 = "[& 날짜]"; //현재 날짜

생성된 문서는 방법을 사용하여 인쇄하기 위해 전송됩니다. "유형()".두 가지 가능한 통화 옵션이 있습니다.

1) 프린터로 직접:

탭닥. 인쇄 (. 사용하지 마십시오);
탭닥. 인쇄(true);

2) 인쇄하기 전에 인쇄 대화 상자가 표시됩니다.

탭닥. 인쇄( 사용 모드인쇄 대화 상자... 사용 );
탭닥. 인쇄(거짓);

또한 문서를 제어하고 페이지를 매길 수 있습니다. 다음과 같이 현재 프린터의 설정을 기반으로 문서의 페이지 수를 추정할 수 있습니다.

탭닥. 페이지 수();

방법 사용 "체크 아웃풋()"그리고 "연결 확인()"스프레드시트 문서 또는 스프레드시트 문서 영역 배열이 현재 프린터 설정에서 높이와 너비가 페이지에 맞는지 여부를 결정할 수 있습니다.

마지막 세 가지 방법의 작업은 설치된 프린터... 메서드에서 찾을 수 없으면 예외가 발생합니다.

페이지 나누기를 강제로 삽입하기 위해 메서드는 다음을 허용합니다."DisplayVerticalPage 구분 기호()"그리고 "DisplayHorizontalPage 구분 기호()".

따라서 페이지별 인쇄를 제어하고 페이지 채우기를 제어할 수 있습니다.

TabDoc이 아닌 경우. 체크출력( ArrayOf 출력 영역) 그 다음에
탭닥. DisplayHorizontalPage 구분 기호();
EndIf;

1C: Enterprise 8.2 플랫폼의 중요한 특징은 실행 컨텍스트에 따라 속성과 메서드가 엄격하게 분리된다는 것입니다. 위의 모든 속성을 모든 컨텍스트에서 사용할 수 있는 경우 나열된 방법은 씬 클라이언트에서 사용할 수 없습니다. 예외는 "Print()" 메서드로, 그 가용성은 명백한 이유로 클라이언트 측으로 제한됩니다. 이것은 스프레드시트 문서의 형성이 서버에서 이루어져야 하고 클라이언트 프로시저에서 인쇄하기 위해 보내야 함을 의미합니다.

1C: Enterprise 시스템의 모든 출력 문서(기본 문서 및 보고서)에 대해 단일 형식(표 형식 문서 형식)이 제공됩니다. 스프레드시트 문서는 정보를 표시하는 강력한 대화형 수단이며 단독으로 사용하거나 응용 프로그램 솔루션에 사용되는 모든 형식에 포함될 수 있습니다. 기본적으로 스프레드시트 문서는 스프레드시트와 유사합니다. 데이터가 포함된 행과 열로 구성되지만 기능은 훨씬 더 광범위합니다.

세포 장식

스프레드시트 문서에는 훌륭한 디자인 가능성이 있습니다. 개발자는 스프레드시트 문서의 셀에 있는 텍스트를 표시하기 위해 글꼴의 유형과 크기를 설정할 수 있습니다.

스프레드시트 문서를 사용하면 셀을 다양한 유형의 프레임으로 장식할 수 있습니다.

또한 개발자는 텍스트, 배경 및 프레임의 색상을 제어하고 팔레트에서 색상을 선택할 수 있습니다. 운영 체제, 플랫폼에서 지원하는 웹 색상 팔레트 또는 애플리케이션 솔루션에서 사용할 스타일 팔레트에서:

그룹화

스프레드시트 문서는 행과 열을 그룹화하는 기능을 지원합니다. 이를 통해 임의의 수의 중첩 그룹을 사용하여 보고서의 데이터를 그룹화할 수 있습니다.

수평 및 수직 그룹화가 있으며 개발자는 그룹화에서 합계 배열을 제어할 수 있습니다. 수직 그룹의 경우 상단 또는 하단에 위치할 수 있고 수평 그룹의 경우 오른쪽 또는 왼쪽에 위치할 수 있습니다.

그룹화 수준의 표시가 지원되며 제목의 숫자를 누르면 주어진 수준의 모든 그룹화를 한 번에 확장하고 더 자세한 그룹화를 축소할 수 있습니다.

그룹화를 사용할 때 계층 구조 수준의 들여쓰기는 시스템에서 자동으로 생성됩니다.

복호화

시스템은 사용자가 스프레드시트 문서의 행이나 셀을 클릭하여 상세 보고서나 추가 보고서를 얻을 수 있는 암호 해독 메커니즘을 지원합니다. 플랫폼은 스프레드시트 문서의 셀에서 마우스 클릭을 처리하는 기능을 지원합니다. 이 경우 시스템은 개발자가 지정한 표준 작업과 알고리즘을 모두 수행할 수 있습니다.

예를 들어 문서 또는 참조 항목을 클릭하면 암호 해독 중 표준 작업이 수행됩니다. 이 경우 시스템은 이 개체를 보기 위해 엽니다(개발자가 달리 제공하지 않는 한).

비표준 암호 해독 처리는 기본 제공 언어를 사용하여 수행됩니다. 예를 들어 개발자는 추가 선택 조건("이 거래상대방에 대한 판매만 표시")을 사용하여 기존 보고서를 다시 구성하여 자세한 보고서를 얻기 위한 알고리즘을 설정할 수 있습니다. 또는 암호 해독을 사용하여 사용자는 완전히 새로운 보고서를 얻을 수 있습니다(예: "이 상대방의 판매량에 기여한 송장 표시").

암호 해독 메커니즘을 사용하면 특정 애플리케이션 솔루션에 포함된 특정 보고서의 호출이 자동으로 발생하고 사용자가 초기 매개변수를 설정할 필요가 없기 때문에 사용자의 작업을 크게 용이하게 할 수 있습니다. 원하는 보고서에 대한 설정은 사용자가 이 보고서를 호출하는 컨텍스트에 따라 자동으로 결정될 수 있습니다.

메모(편집)

개발자는 문서의 개별 셀 또는 셀 그룹에 대한 메모를 설정할 수 있습니다. 노트 셀의 오른쪽 상단 모서리에 작은 삼각형이 있습니다. 셀 위로 마우스를 가져가면 메모가 팝업 창에 표시됩니다. 메모를 사용하여 화면에 표시되지 않는 스프레드시트 문서에 추가(참조) 정보를 추가할 수 있습니다( 일반 모드), 하지만 원하는 셀 위에 마우스 커서를 올려놓으면 쉽게 볼 수 있습니다.

열 너비

스프레드시트 문서는 행마다 다른 열 너비를 설정하는 기능을 지원합니다. 이 기능은 규제된 보고에 매우 중요합니다. 실제로 이 경우 스프레드시트 문서는 예를 들어 회계 및 세금 보고에서 자주 볼 수 있는 여러 테이블을 나타냅니다.

피벗 테이블

스프레드시트 문서에는 피벗 테이블이 포함될 수 있습니다. 피벗 테이블은 다차원 데이터를 프로그래밍 방식으로 대화형으로 표시하기 위한 강력한 도구입니다.

피벗 테이블의 경우 사용자는 필요한 필드를 마우스로 피벗 테이블로 끌어다 놓기만 하면 행, 열 및 표시된 데이터의 구성을 독립적으로 설정할 수 있습니다. 예를 들어 이러한 테이블은 계약자 및 품목 이름의 컨텍스트에서 판매량을 표시할 수 있습니다. 측정값은 표 상단과 사이드바에 표시되며, 데이터 영역의 셀에는 측정 데이터의 교차점에 요약 정보가 포함됩니다. 사용자는 차원 및 리소스를 추가 또는 제거하고 상대적 위치를 변경할 수 있습니다.

피벗 테이블은 배치된 데이터에 따라 행, 열 및 형식의 구성을 자동으로 변경합니다. 또한 시스템은 개발자가 사용할 수 있는 몇 가지 표준 피벗 테이블 디자인 옵션을 지원합니다. 이 모든 것이 피벗 테이블을 다차원 데이터 분석을 위한 가장 쉬운 도구로 만듭니다. 개발자는 피벗 테이블을 만드는 데 최소한의 노력이 필요하기 때문입니다.

추가 정보

실시간으로 피벗 테이블의 사용법을 익힐 수 있습니다. 이를 위해 기간별 판매 분석 보고서에서 피벗 테이블을 사용하여 트레이딩 미니 시스템을 개발하는 프로세스를 보여주는 데모 비디오 "트레이딩 미니 시스템 개발의 예"를 다운로드할 수 있습니다.

스프레드시트 문서에 데이터 입력

1C: Enterprise 8.0 시스템의 표 형식 문서는 주로 이미 처리된 정보를 나타내는 데 사용되지만 "일반" 스프레드시트와 같이 표 형식 문서에 데이터를 직접 입력할 수 있습니다.

스프레드시트 문서의 셀에 데이터를 입력하는 과정에서 내장 언어의 절차에 따라 처리할 수 있으며, 이러한 처리 결과는 스프레드시트 문서의 다른 셀을 계산할 때 사용할 수 있다.

예를 들어 대차 대조표를 구성할 때 스프레드시트 문서에 데이터를 직접 입력할 수 있습니다.

보존

스프레드시트 문서는 출력 문서를 생성하는 데 가장 자주 사용되기 때문에 나중에 사용하거나 다른 컴퓨터로 전송할 수 있도록 디스크에 파일을 저장할 수 있습니다. 스프레드시트 문서는 자체 형식으로 저장하고 다음을 포함한 다른 데이터 저장 형식으로 내보낼 수 있습니다. 엑셀 시트또는 MXL7 형식(플랫폼 버전 7.7과의 호환성을 위해):

스프레드시트 문서 편집기

결과적으로 표 형식 문서가 형성되어 사용자에게 표시되는 레이아웃을 생성하기 위해 개발자는 표 형식 문서 편집기를 사용할 수 있습니다. 이 도구는 표 형식 구조의 디자인 기능과 벡터 그래픽... 매우 복잡한 라인 구조(예: 지불 주문)가 있는 작은 문서와 방대한 명세서, 잡지 등을 모두 생성할 수 있습니다.

표 형식 문서 1C: Enterprise 8은 문서 및 보고서 인쇄에만 사용되는 것이 아닙니다. 대화형 사용자 경험으로 전환하는 고급 기능이 있습니다. 이러한 기회에는 다음이 포함됩니다.
- 성적표,
- 그룹화,
- 노트.
셀에 있는 피벗 테이블과 컨트롤도 스프레드시트 문서의 대화형 기능에 기인할 수 있지만 이제는 이에 대해 자세히 설명하지 않고 위의 메커니즘을 자세히 살펴보겠습니다.

복호화

시스템 "1C: Enterprise 8"은 사용자가 보고서의 행이나 셀을 클릭하고 프로그래머가 제공한 경우 더 자세한 보고서를 받을 때 암호 해독(드릴다운, 드릴스루) 메커니즘을 지원합니다. .

암호 해독은 표준과 비표준으로 나뉩니다. 표준 성적표는 시스템에서 자동으로 처리되며 프로그래머의 추가 작업이 필요하지 않습니다. 예를 들어 문서 양식은 문서용으로 열리고 요소 양식은 디렉토리 요소용으로 열립니다. 목록에서 디렉토리를 편집하면 커서가 목록 형태로 현재 요소에 위치합니다. 비표준 복호화를 수행하기 위해 Decryption Handling 이벤트가 의도됩니다.

"DecodeProcessing" 이벤트는 이 이벤트가 "TabularDocumentField" 컨트롤에 대해서만 존재하기 때문에 스프레드시트 문서가 컨트롤로 폼에 배치되고 별도의 창에서 열리지 않는 경우에만 처리할 수 있습니다. 아래는 복호화 핸들러 프로시저가 할당된 TabularDocumentField 컨트롤의 Events 속성 카테고리입니다.

"DecryptString" 프로시저 자체는 다음과 같이 보일 수 있습니다(예:

프로시저 DecryptString(요소, 암호 해독, StandardProcessing)
If TypeZnch(설명) = Type("DocumentLink. 판매 계약") then

StandardProcessing = 거짓;
보고서 = Reports.Analysis of the Agreement.Create();
보고 동의 = 복호화 // 보고서의 세부 정보를 입력합니다.
Report.Generate(양식 Elements.Table 문서 Field1);
EndIf;
절차 종료

참고 1... 응용 프로그램 모듈(버전 7.7의 전역 모듈과 유사)에는 더 이상 ProcessCellTable 이벤트가 없습니다. 성적표의 모든 처리는 "TabularDocumentField" 컨트롤이 있는 양식 모듈에서 수행해야 합니다.

노트 2... "ProcessingDecryption" 이벤트는 암호 해독이 포함된 셀 또는 그림을 클릭할 때 발생합니다. 두 번 클릭하거나 Enter 키를 누를 때 모든 셀과 그림에 대해 발생하는 "선택" 이벤트와 혼동하지 마십시오. "선택" 이벤트가 먼저 발생한 다음 "암호 해독 처리"가 발생합니다.

그룹화

1C: Enterprise 8에서는 보고서의 데이터를 그룹화하는 것이 가능해졌습니다. 그룹화는 수평 및 수직일 수 있으며 왼쪽과 위에 특수 마커가 나타나 사용자가 그룹을 확장 및 축소할 수 있습니다.

보고서에 그룹화를 추가하는 가장 쉬운 방법은 이 작업을 시스템에 맡기는 것입니다. 그러면 프로그래머는 최소한의 노력이 필요합니다. 행 또는 열의 자동 그룹화 모드를 각각 활성화하는 StartAutoRowGrouping / StartAutoColumnGrouping 및 EndAutoRowGrouping / EndAutoColumnGrouping 메서드를 적용하기만 하면 됩니다. 이 모드에서 Output(문자열의 경우) 및 Append(열의 경우) 메서드를 호출할 때 다음을 지정합니다. 추가 옵션그룹화:

출력(<Таблица>, <Уровень>, <Имя группы>, <Открыта>)
가입하다(<Таблица>, <Уровень>, <Имя группы>, <Открыта>)

그룹화를 사용할 때 셀의 "자동 들여쓰기" 속성을 0이 아닌 값(예: 5)으로 설정하는 것이 매우 유용합니다. 그러면 시스템이 셀 텍스트 왼쪽에 지정된 수만큼 공백을 자동으로 추가합니다. 현재 그룹화 수준. 결과적으로 보고서는 편리한 모습데이터 계층을 표시합니다.

다음 예는 그룹이 있는 제품 목록을 표시합니다.


TabDoc = 새 테이블 형식 문서;

지역 = Layout.GetScope("행");

선택 = Directories.Nomenclature.SelectHierarchically ();
TabDoc.StartAutoGroupLines();
while Fetch.Next() 루프
Scope.Parameters.Nomenclature = Selection.Ref;
TabDoc.Output(영역, Selection.Ref.Level(), Selection.Name, True);
사이클 종료;

TabDoc.FinishAutoGroupingLines();
TabDoc.Show();

메모(편집)

스프레드시트 문서의 셀에 메모가 있을 수 있으며 작은 빨간색 삼각형이 셀의 오른쪽 상단 모서리에 표시됩니다. 셀 위로 마우스를 가져가면 주석이 팝업 창에 표시됩니다.

메모의 프로그래밍 방식 설정은 다음과 같이 구현됩니다.

TabDoc = 양식 요소.TableDocumentField1;
TabDoc.Clear();

레이아웃 = Directories.Nomenclature.Get 레이아웃("카탈로그");
선택 = Directories.Nomenclature.Select();
while Fetch.Next() 루프

LayoutCellsArea = Layout.Area("셀 이름");
LayoutCellsScope.Note.Text = Selection.Ref.Comment;

TabDocArea = Layout.GetArea("행");
ScopeTabDoc.Parameters.Nomenclature = Selection.Ref;
TabDoc.Withdraw(RegionTabDoc);

사이클 종료;

Layout CellSpace 개체의 Note 속성은 단순 문자열이 아니라 Picture 개체입니다. 이 개체를 통해 메모의 모양, 글꼴 및 텍스트 색상, 배경, 선 등을 편집할 수 있습니다.

요약
- 스프레드시트 문서는 문서 및 보고서를 인쇄할 뿐만 아니라 강력한 대화식 기회... 이러한 기능에는 주로 스크립트, 그룹화 및 주석(이 섹션에서 설명)과 피벗 테이블 및 컨트롤(다른 섹션에서 설명)이 포함됩니다.
- 비표준 암호 해독, 즉 프로그래머가 처리하는 것은 스프레드시트 문서만 화면에 표시되는 경우 구현될 수 있습니다("TabularDocumentField" 컨트롤).
- 그룹화를 사용하는 가장 쉬운 방법은 행에 대한 자동 그룹화 모드를 켜고 스프레드시트 문서에서 각 영역을 표시할 때 해당 영역이 속한 수준을 표시하는 것입니다. 또한 레이아웃의 필수 셀에 대해 "자동 들여쓰기" 속성을 설정하는 것이 좋습니다.
- 셀 위로 마우스를 가져가면 "부동" 메모가 표시됩니다. 내장된 언어를 사용하여 메모의 모양을 변경할 수 있습니다.



관련 기사: