구성 저장소를 원격으로 작업합니다. 구성 스토리지 서버를 설정합니다. TCP를 통해 구성 저장소로 작업하는 방법. 구성 저장소 작업 구성 저장소 설정 1s 8.3




1C 버전 7.7에서는 구성의 공동 개발 또는 수정이 정말 고통스러웠습니다. 두 사람이 있어도 하나의 구성을 유지하려면 현재 데이터베이스의 복사본 두 개를 만든 다음 변경한 후 한 복사본의 구성에서 다른 복사본의 구성으로 변경 사항을 수동으로 전송해야 했습니다. 그래야만 기본 지원 구성을 업데이트할 수 있습니다! 하위 시스템이 부족하여 상황이 더욱 악화되었습니다.

1c의 8번째 버전에서는 공동 개발에 사용됩니다. 구성 저장소. 저장소 작업은 다음과 같이 수행됩니다.

  • 저장소 만들기

"구성" -> "스토리지 구성" -> "스토리지 생성..." 메뉴에서 선택합니다.

저장소 디렉터리의 경로를 지정합니다. (디렉토리는 모든 개발자가 액세스할 수 있어야 합니다!)

저장소가 생성된 후 메뉴 항목 "구성" -> "구성 저장소" -> "관리"로 이동하여 개발자용 사용자를 생성합니다.

그리고 사용자를 생성하세요

  • 개발자 구성을 구성 저장소에 연결


선택하다 메뉴 항목 "구성" -> "저장소 구성" -> "저장소에 연결..."



당신과 나는 기본 데이터베이스의 동일한 복사본을 가지고 있기 때문에자유롭게 "예" 버튼을 클릭하고 저장소 경로, 사용자 이름 및 비밀번호를 지정하십시오.

구성이 스토리지와 비교되기를 기다리고 있습니다.

모든 것이 제대로 진행되면 개체 트리의 구성 개체 오른쪽에 자물쇠 아이콘이 나타납니다.

  • 구성 저장소 작업

기본적으로 모든 구성 개체에는 "잠금" 아이콘이 있습니다. 구성 개체를 변경하려면 해당 개체를 캡처해야 합니다. 즉, 개체의 상황에 맞는 메뉴에서 "저장소로 캡처" 항목을 선택해야 합니다.

캡처 설정 지정

구성 트리의 개체에 대한 아이콘이 나타납니다.

다른 개발자가 개체를 캡처한 경우 구성 트리의 개체는 다음과 같습니다.

필요한 변경이 이루어진 후에는 변경 사항이 적용된 객체를 다시 저장소에 배치해야 합니다. 구성 개체의 상황에 맞는 메뉴에서 "저장소에 배치..." 항목을 선택합니다.



  • 변경 사항을 취소하고 객체 캡처를 해제하려면 다음을 선택하십시오. 개체의 컨텍스트 메뉴에서 "캡처 취소"를 선택하세요.

  • 저장소에서 개체를 복원해야 하는 경우 개체의 상황에 맞는 메뉴에서 "저장소에서 검색..." 항목을 선택합니다. 이 경우 개체가 캡처되는 동안 변경된 내용은 손실됩니다.

  • 버전 기록을 보고 캡처 및 수정된 개체를 리포지토리의 개체와 비교할 수도 있습니다.

  • 복사본 작업이 완료된 후(또는 일부 중간 단계가 완료된 후) 기본 데이터베이스의 구성을 업데이트할 수 있습니다. 이를 위해서는 "구성" -> "구성 저장소" -> " 메뉴에서 항목을 선택해야 합니다. 스토리지에서 구성 업데이트" 또는 "구성" -> "저장소 구성" -> "저장소와 구성 비교/병합"

두 번째 경우에는 "더 부드러운" 구성 업데이트가 발생합니다. 즉, 초기 구성 개체와 저장소 개체 간의 차이점에 대한 보고서를 볼 수 있습니다.

당신의 발전을 즐기세요!

대부분의 경우 1C 프로그래머는 프리랜서인 경우 사무실이나 집에서 복잡한 개발을 수행한 다음 고객에게 와서 개선 사항을 업로드합니다. 일부 실수는 그 자리에서 바로 수정되는 경우가 많습니다. 그리고 사무실의 구성은 더 이상 고객의 구성과 동일하지 않습니다. 고객을 떠날 때 데이터베이스 사본을 가져가는 것은 어렵지 않지만 개발자가 여러 명 있고 친근한 군중 속에서 고객에게 가지 않고 차례대로 가면 어떨까요?

저것들. 문제는 서로 다른 로컬 네트워크에서 병렬 개발이 있을 때 발생합니다. 이 경우 드래그하면 CF파일을 주고받고 지속적으로 서로 비교하는 데는 많은 시간이 걸립니다. 로컬 네트워크 외부에서 액세스할 수 있는 구성 저장소가 필요하다는 것이 밝혀졌습니다.

이 문제를 해결하려면 다음이 필요합니다.

1. 개발이 진행되는 모든 컴퓨터의 인터넷 상태가 양호함
2. 화이트 IP를 통해 외부에서 볼 수 있는 컴퓨터

원칙적으로 화이트 IP를 사용하는 컴퓨터는 사무실에 있는 서버입니다. 구성 저장소를 설정하여 배포를 시작해야 합니다. 우선 1C 플랫폼을 설치해 보겠습니다. 설치하는 동안 구성 저장소 서버 구성 요소가 있음을 나타내야 합니다. 플랫폼 출시에 주의하세요. 사실 이 작업 방법을 사용하려면 모든 컴퓨터에 동일한 버전의 플랫폼이 필요합니다. 사무실에서도, 집에서도, 고객의 집에서도.

설치 후에는 스토리지 서버 자체가 서비스에 나타나지 않습니다. 등록되어 있어야 합니다. 서비스 파일이 호출됩니다. crserver.exe그리고 카탈로그에 있어요 큰 상자.


등록하기 전에 저장소가 어느 폴더에 위치할지 결정해야 합니다. 서버를 사용하면 여러 저장소를 동시에 작업할 수 있으므로 서버에 등록할 때 저장소가 있는 디렉터리가 이미 위치할 디렉터리를 표시합니다. 서버는 러시아어 폴더 이름에서도 잘 작동합니다. 추가 기능을 위해 이 폴더를 공유하는 것이 좋을 것입니다(필수는 아니지만). 예를 들어, "Exchange" 드라이브에 공유 폴더가 있고 여기에 "Storage" 하위 디렉터리를 만들어 보겠습니다.

이제 스토리지 서버 서비스를 등록합니다. 이렇게 하려면 "시작", "실행"을 클릭하고 "cmd"를 입력한 후 Enter 키를 누르고 명령줄에 다음을 작성하십시오.
"C:\Program Files (x86)\1cv8\8.3.4.408\bin\crserver.exe" -instsrvc -d "C:\Exchange\Storages"

오류 메시지가 나타나지 않으면 서비스 목록에 우리 메시지가 나타나야 합니다. 이를 육안으로 확인해야 합니다.

여기에서 서비스가 실행 중이고 자동 시작으로 설정되어 있는지 확인해야 합니다. 등록 시 사용자를 지정하지 않았으므로 시스템 계정으로 실행됩니다. 편리하지만 안전하지 않을 수 있으므로 필요한 경우 서비스 속성에서 수정하세요.
이제 저장소를 생성해야 합니다. 이 과정은 시간이 많이 소요되므로 당사 서버가 위치한 로컬 네트워크에서 진행하는 것을 권장합니다. 평소와 같이 경로 줄에만 네트워크 폴더가 아니라 다음 형식의 경로를 나타냅니다.
tcp://서버1C/프로젝트 스토리지1\

여기서 Server1C는 로컬 네트워크에 있는 컴퓨터의 이름입니다. 이 컴퓨터의 IP 주소를 지정할 수 있습니다. Project Storage1 – 새 저장소의 디렉터리 이름입니다. 서버에서 생성된 후 저장소는 폴더에 위치하게 됩니다. C:\Exchange\스토리지\프로젝트 스토리지1.

스토리지 서버를 사용하지만 기본적으로 파일 데이터베이스 형식은 동일합니다. 1CD연결 줄에 네트워크 디렉터리를 지정하여 이전 방식으로 연결할 수 있습니다.
\\Server1C\Exchange\Storages\Project1 저장소

여기에는 몇 가지 뉘앙스가 있습니다.
1. 데이터베이스 파일에 대해 tcp를 통해 작업할 때 파일을 기준으로 실행되는 프로세스가 로컬로 작동하므로 어느 정도 안정성이 제공됩니다. 앞서 Wi-Fi를 사용해도 저장 기반이 무너질 수 있다고 썼는데, 슬픈 경험이었습니다. 이 경우 시스템은 네트워크 오류에 대한 저항력이 더 강해집니다.
2. TCP를 통해 작업하는 경우 모든 참가자에게 동일한 버전의 플랫폼 릴리스가 필요하지만 파일과 통신하는 경우에는 그렇지 않습니다.
3. 공유 폴더 – 모든 참가자가 전체 액세스 권한을 갖는 폴더입니다. 사람들은 쉽게 실수로(혹은 실수로가 아닐 수도 있음) 쓰레기를 거기에 버리고, "불필요한" 파일 몇 개를 지우고, 일반적으로 문제를 망칠 수 있습니다.

이러한 차이를 바탕으로 경우에 따라 로컬 네트워크 내에서도 스토리지 서버를 배포하는 것이 합리적일 수 있습니다.
이제 외부에서의 액세스에 대해 설명합니다. 스토리지 서버는 포트 1542에서 실행됩니다. 외부 화이트 IP 주소가 서버를 직접 가리키는 경우 이 포트를 열도록 주의해야 합니다. 외부 IP가 라우터를 가리키는 경우 전달을 구성해야 합니다. 제 경우에는 포워딩이 있었는데 시스템 관리자가 이를 위해 무료 포트를 할당했습니다. 내 연결 문자열은 다음과 같습니다.
tcp://36.21.65.20:1501/프로젝트 저장소1\

이러한 스토리지 작업의 편안함은 전적으로 인터넷 속도에 달려 있으므로 모듈식 건물(거의 모든 쇼핑 센터)에 있는 모든 종류의 USB 모뎀은 나쁜 습관입니다. 모뎀에 안정적인 3G가 없고 지속적으로 GPRS로 전환된다면 시도조차 하지 않을 것입니다.

마지막으로 플랫폼 업데이트에 대해 말씀드리겠습니다. 왜냐하면 최신 1C 8.3은 이제 자주 출시되므로 이는 관련이 있습니다. 플랫폼은 한 번에 모든 곳에 다시 설치되어야 하며 이는 이미 분명합니다. 서버에 재설치 시 서비스가 자동으로 업데이트되지 않습니다. 모든 일을 올바른 방식으로 수행한다면, 즉 bin 폴더에서 crserver.exe 애플리케이션을 최신 플랫폼 릴리스로 등록하십시오. 서비스가 동일하게 호출되면 이전 서비스는 삭제 대상으로 표시되며 서버를 재부팅해야 합니다. 더 쉬울 수도 있습니다. 서비스에 들어가서 스토리지 서버를 중지합니다. 속성에서 실행 문자열을 보고 이를 클립보드에 복사합니다. 우리는 레지스트리 편집기로 올라갑니다 ( 등록) 레지스트리에서 이 줄을 찾으세요. 릴리스 번호를 편집합니다(폴더 이름에 있음). 서비스를 다시 시작해 보겠습니다. 모두. 엉망이 되면 서비스가 시작되지 않습니다. 시작한 후 서비스 속성으로 이동하여 새 릴리스가 있는 폴더에서 서비스가 시작되었는지 시각적으로 확인합니다.

오늘은 여기까지입니다. 관심을 가져주셔서 감사합니다

1C 회사는 많은 소프트웨어 제품을 생산하고 내부 구조를 지속적으로 개선합니다. 그러나 1C 프로그래머와 관리자가 처리해야 하는 다양한 오류의 수는 이 영역의 작업이 결코 멈추지 않을 것임을 보여줍니다. 이러한 오류 중 일부는 사소하고 드물지만 경험이 풍부한 모든 전문가에게 친숙한 "전통적인" 결함이 있습니다. 후자에는 잘 알려진 오류 "잘못된 데이터 저장 형식"이 포함되어 있으며 이를 해결할 수 있는 것이 좋습니다.


데이터 저장 형식 오류에 대한 해결 방법

이 오류가 발생하기 위해 코드에 심각한 논리적 오류를 만들거나 메인 모듈을 제거할 필요는 전혀 없습니다. 1C를 시작할 때 구성 업데이트, 처리 열기, 정전 또는 컴퓨터 다시 시작한 후에 종종 이러한 불쾌한 놀라움이 발생합니다. 재부팅해도 도움이 되지 않으면 당황하지 마세요. 도움이 될 수 있는 이 일반적인 오류에 대한 간단한 해결 방법이 있습니다. 복잡성 정도에 따라 분석하겠습니다.


구성이 시작되는 순간 외에도 외부 처리를 열 때 "잘못된 데이터 저장 형식" 오류가 나타날 수도 있습니다. 이 경우 가장 중요한 것은 1C를 시작하지 않는 것입니다. 시작 시 시스템이 TMP 디렉터리의 임시 파일을 덮어쓰기 때문입니다. 그 안에는 이름이 "v8_*"이고 확장자가 tmp인 파일인 처리 내용이 있습니다. 그러한 파일이 많으면 어떤 파일이 우리가 처리하는지 이해하려면 확장자를 epf로 변경하고 1C를 통해 열어보세요.

이미 1C를 시작했고 파일을 덮어쓴 경우 처리가 시작된 다른 컴퓨터에서 유사한 작업을 시도해 보십시오. 또는 유틸리티를 사용하여 하드 드라이브에서 삭제된 파일을 복구할 수 있습니다.

1C:Enterprise 8 시스템의 구성 그룹 개발에는 특별한 메커니즘이 사용됩니다. 구성 저장소. 구성 저장소는 구성기를 사용하여 구성이 저장되는 파일 데이터베이스로, 현재 편집 중인 개체에 대한 정보와 이러한 개체에 대한 변경 내역을 저장합니다. 구성 저장소에 대한 개발자 액세스는 로컬 네트워크 내에서 또는 웹 서버를 사용한 원격 액세스를 통해 수행됩니다. 처음에 구성은 변경을 위해 닫혀 있는 개체 집합으로 간주됩니다. 개체를 변경하려면 개체를 캡처해야 하며 개체는 한 번에 한 명의 사용자만 캡처할 수 있습니다. 캡처된 개체로 작업한 후 수정 결과가 저장소에 저장되고 그 후에 그룹 개발의 모든 참가자가 이러한 개체를 사용할 수 있게 됩니다. 이러한 방식으로 동일한 구성 개체에 대한 액세스가 제어되고 구성 수정에 대한 개발 팀 작업의 동기화가 보장됩니다.

1C 저장소 없이는 주요 산업 개발 및 대규모 수정 구성을 만들 수 없습니다. 이는 각 개발자가 메타데이터를 생성, 편집 및 디버그하는 일종의 데이터베이스입니다. 저장소에 있는 객체를 동시에 편집할 때 충돌을 피하기 위해 객체 캡처가 가능하며, 작업이 끝난 후 개발자는 이를 다시 배치하고 캡처 표시를 제거합니다. 만족스럽지 못한 부분이 있으면 프로그래머라면 누구나 이전 버전을 롤백하고 복원할 수 있습니다. 이론적으로는 모든 것이 다채롭고 아름답기 때문에 1C 스토리지 작업의 기본 설정과 원리를 살펴보겠습니다.

1C 저장소 만들기

저장소는 정보 기반에 불과하므로 생성이 매우 간단합니다. 구성 - 구성 스토리지로 이동하여 스토리지 생성을 수행합니다. 나타나는 창에 정보 보안이 위치할 경로와 관리자의 로그인 및 비밀번호(이 사용자는 데이터베이스 사용자와 연결되어 있지 않음)를 표시합니다. 확인을 클릭하면 현재 구성이 지정된 위치에 업로드됩니다.

P.S 리포지토리를 생성한 후 즉시 작업을 수행하더라도 관리 권한이 있는 다른 사용자를 생성하십시오. 이 작업이 수행되는 이유는 무엇입니까? 설명하겠습니다. 사용자가 "정지"되는 것은 드문 일이 아니며 다른 사용자가 있으므로 들어가서 자신의 정지 세션을 제거할 수 있습니다. 사용자는 스토리지 관리 섹션에서 생성됩니다.

스토리지에 연결 중

우리는 이미 실제 저장 공간을 갖고 있습니다. 이제 사용자를 연결해야 합니다. 각 개발자의 개인용 컴퓨터에서 빈 데이터베이스를 생성하거나 기본 데이터베이스에서 *.dt 파일 또는 *.cf 구성만 로드해야 합니다. 그런 다음 스토리지에 연결로 이동하여 관리자가 각 사용자에게 제공할 사용자 이름과 비밀번호를 입력해야 합니다. 연결의 결과로 로컬 구성이 저장소의 구성으로 완전히 대체됩니다.

추신: 지역 정보 기반의 모든 데이터는 그대로 유지됩니다. 즉, 현재 데이터베이스 데이터에 영향을 주지 않고 구성이 병합됩니다.

스토리지 업데이트 및 캡처

이미 로컬 데이터베이스를 편집했고 변경 사항을 전송하려면 "conf"를 *.cf 파일에 업로드해야 합니다. 그런 다음 저장소에 연결합니다. 구성을 덮어썼습니다. 이제 개체를 캡처해야 합니다. 데이터베이스에 혼자 있는 경우 재귀 캡처(모든 하위 개체가 캡처됨)를 수행하고 루트 구성 요소에서 저장소로 캡처를 마우스 오른쪽 버튼으로 클릭하거나, 함께 작업하는 경우 각 개체를 별도로 캡처합니다. 다음으로 스토리지를 파일의 구성과 비교로 이동합니다. 짜잔 - 이제 모든 변경 사항이 저장소에 있습니다.

캡처 방법은 나타나는 창에서 설정할 수 있습니다(그림 5). 재귀적으로(1) 또는 다른 사람이 캡처한 개체를 얻을 수 있도록 허용(2)

모든 작업이 완료되면 개체를 다시 배치해야 합니다. 전체 절차는 정확히 동일하게 발생합니다. 캡처한 개체를 선택하고 마우스 오른쪽 버튼을 클릭한 다음 저장소에 저장을 선택합니다.

그러나 객체를 저장소에 반복적으로 배치하고 해제하거나 캡처된 상태로 둘 수도 있습니다.

여러 사람이 프로젝트에 참여하는 경우 발생할 수 있는 문제와 데이터 손실을 방지하려면 저장소에서 새로운 구성을 가져와 매일 시작해야 합니다(다른 프로그래머가 변경했을 수 있으므로). 이렇게 하려면 스토리지에 연결하고 루트 구성 요소를 마우스 오른쪽 버튼으로 클릭한 다음 스토리지에서 검색 및 재귀 캡처를 수행을 선택합니다. 다음으로, 누가 무엇을 했는지 알아내려면 데이터베이스 구성과 비교해야 합니다. 그 후 우리는 모든 것을 저장소에 저장하고 작업을 계속합니다.

교수: - 물 저장 시설의 이름은 무엇입니까?

학생: - 콘돔요?

교수: - 맞습니다. 하지만 "p"가 없습니다.

학생: - 예약?...

구성 저장소는 애플리케이션 솔루션의 그룹 개발, 애플리케이션 솔루션 버전 관리, 개발 프로세스 중 애플리케이션 솔루션에 대한 변경 사항을 문서화하는 데 유용한 1C 8 기능입니다.
온라인에 게시된 이론적 자료를 연구한 후 이를 마스터하기 위한 첫 번째 실제 단계를 밟았습니다. 이를 여러분과 공유하고 싶습니다.

1C 플랫폼 출시: 8.1.15.14
OS: WinXP 프로 SP3

1 . 다음 명령을 사용하여 Configuration Storage Server 8.1 서비스를 설치해 보겠습니다.
"D:\Program Files\1Cv81\bin\crserver.exe" -instsrvc -d "D:\1c_repository\"
D:\1c_repository\ 디렉터리는 스토리지 구성을 수용하기 위해 이전에 생성되었습니다.

인터넷에 널리 게시된 권장 사항과 달리 "-d" 스위치와 해당 매개 변수(개별 구성 저장소가 있는 디렉터리가 저장된 루트 디렉터리 경로) 사이에는 공백이 있어야 합니다.
2. 서비스를 구성하고 시작합니다.



삼. 저장소 디렉터리 D:\1c_repository\ 에 구성을 생성해 보겠습니다.

내가 만든 구성은 깨끗하고(비어 있음) 프로그래머가 자신의 컴퓨터에서 원격으로 작업할 것이라고 가정합니다.

4 . 생성된 데이터베이스의 구성기에서 Storage를 생성합니다.

구성 파일 디렉터리의 경로를 지정합니다.

스토리지 관리자 계정을 생성합니다.

그리고 우리는 Storage에 연결합니다.

5 . 첫 번째 원격 개발자를 위한 계정을 만들어 보겠습니다.


6. 첫 번째 원격 개발자의 구성을 스토리지에 연결하려고 합니다. 이를 위해 깨끗한 구성을 생성하고 이미 생성된 계정을 사용하여 스토리지에 연결합니다.


이 예에서는 동일한 컴퓨터의 스토리지에 연결하므로 경로가 디렉터리에 직접 지정됩니다. 로컬 네트워크를 통해 스토리지에 연결하려면 tcp 프로토콜을 사용해야 합니다. 그러면 디렉터리 위치 줄은 "tcp//192.168.0.18/MDB"와 같습니다. http 프로토콜을 사용하는 것도 가능합니다(고려해 보지 않았습니다).

성공적으로 연결되면 다음이 발생합니다.

스토리지 관리에서 로그인한 관리자로 스토리지 구성으로 전환하면 해당 사용자가 스토리지에 접속한 것을 확인할 수 있습니다.

"사용자가 저장소에 연결했습니다"는 무슨 뜻인가요? 내가 이해한 바에 따르면, 이 예에서는 사용자 prada가 이를 자신의 디렉터리에 배포했습니다. 테스트저장소삭제 가능데이터베이스 복사본 IBP개발자 기반-스토리지 기반으로 상호 연결된 디렉토리. 저것들. Prada는 개발자 데이터베이스에서 구성을 개발한 다음 변경 사항을 저장소에 업로드할 수 있습니다. 모든 원격 개발자는 개발자 데이터베이스를 통해 저장소 데이터베이스로 작업하는 것으로 나타났습니다. 스토리지 작업을 시도해 봅시다.

7. 프라다 개발자는 구성 개체를 가져와 변경 사항을 추가합니다. 예시에서는 전체 구성을 캡쳐했지만, 개별 개체도 캡쳐가 가능해 매우 편리합니다.



캡처된 개체를 나타내는 아이콘이 구성 트리에 나타납니다.

관리자(및 제가 이해하는 다른 사용자)는 구성 트리에 다음 아이콘을 갖게 됩니다.

또한 관리자는 스토리지 관리 메뉴에서 개체 캡처를 취소할 수 있습니다(테스트되지 않음).

8 . 개발자 프라다는 상수와 참조를 생성합니다.

관리자는 아직 변경한 사항이 없습니다.

스토리지 작업 메뉴에는 "스토리지 구성 비교/병합"이라는 유용한 기능이 있습니다.

이 예에서 프라다는 상수와 참조를 추가했습니다.

9 . 개발자 prada는 변경 사항을 MDB 저장소에 저장합니다.

변경 사항을 게시할 때 변경 사항에 대한 설명을 표시할 수 있습니다.


Prada 개발자의 경우 구성 트리의 아이콘이 다음과 같이 변경됩니다.

관리자(및 기타)는 다음을 수행합니다.

10 . 창고의 역사. 저장소는 변경 내역을 저장합니다.

열하나 . 작업 완료 후 프라다는 보관 개체 캡처를 취소합니다.


모두. 이로써 첫 번째 실습 수업이 완료되었습니다.

  1. 1C의 애플리케이션 솔루션 그룹 개발 -