2010-04-25 1 views
3

우리는 거대한 MS Access 애플리케이션을 재 설계 할 계획입니다. 같은 응용 프로그램에서 concurently 작업 할 수있는 방법이 있습니까 아니면 동일한 파일 (데이터가 아니라 폼과 코드)의 두 개의 별도 인스턴스를 병합 할 수 있습니까? 현재 Access에는 데이터가 포함되어 있지만 향후 버전에서는 MySQL이 데이터를 호스트하며 액세스는 ODBC를 통해 프론트 엔드에만 적용됩니다.MS 액세스 그룹 개발

+0

관심 대상이 될 수 있습니다. http://stackoverflow.com/questions/777591/version-control-for-access-vba-code http://stackoverflow.com/questions/187506/how-do-you -use-version-control-with-access-development – Fionnuala

답변

2

예. 동시에 한 명 이상의 개발자가 동시에 응용 프로그램에서 작업 할 수 있습니다.

소프트웨어 업계에서는 일반적으로 소스 코드 제어 시스템을 사용하여이 작업을 수행합니다. 또는 종종 우리가 소스 코드 보관소라고 부르는 것.

소스 코드 제어 시스템은 둘 이상의 개발자가 동일한 문서 집합 또는이 경우 동일한 시간의 동일한 응용 프로그램에서 작업하는 것을 허용합니다.

이 작동 방식은 한 개발자가 몇 개의 보고서, 두 개의 모듈, fomrs 등을 "체크 아웃"할 수 있다는 것입니다. 이제 그는 그 기간 동안 해당 모듈, 코드, 양식을 소유하고 있습니다. 어느 누구도 "체크 아웃"된 부분을 체크 아웃하거나 수정할 수 없습니다. 실제로 대규모 소프트웨어 회사에서는 동일한 프로젝트를 수행하는 수백 명의 개발자가있을 수 있으며 종종 Unwritten 코드가 있으며 마스터 빌드로 다시 돌아가서 버그를 일으키는 경우 너가 고칠 때까지 집에 가라. 즉, 코드를 중단시켜야하는 응용 프로그램에 코드를 체크인하지 마십시오! 소프트웨어 업계에서 "빌드 깨기 (Build the Breaking the build)"는 일부 소프트웨어 장소에서는 NO NO입니다. 당신은 그 일을하고 싶지 않습니다!

MS 액세스가 소스 코드 컨트롤을 지원한다는 것을 명심하십시오. 이러한 추가 옵션이 표시되기 전에 액세스 할 수 있도록 개발자 확장을 설치해야합니다. 물론 Visual Studio 소스 코드 제어 시스템을 설치했다고 가정합니다.여기

액세스 2003의 총에 스크린이며, 폼의 일부 개체 옆에있는 작은 체크 박스주의 사항 : 다시 한 번 alt text http://www.members.shaw.ca/AlbertKallal/vss/Image1.gif

참고 : 여기 alt text http://www.members.shaw.ca/AlbertKallal/vss/Image2.gif

그리고 또 다른 기회입니다 체크 표시가있는 것은 내가 소유 한 양식입니다. 각 객체 옆에있는 작은 "잠김"은 객체를 수정하려고 시도하면 객체가 잠겨져 "체크 아웃"하고이 특정 객체의 소유권을 가져올 것인지 묻는 프롬프트가 나타납니다 (이 경우에는 양식).

언급 한 것처럼 소스 코드 제어 시스템은 모든 개체에 적용됩니다. 다음은 쿼리 빌더 탭의 스크린 샷입니다 :

alt text http://www.members.shaw.ca/AlbertKallal/vss/Image4.gif

는 다시 작은 추가 확인 표시 또는이 액세스 인터페이스에 추가 잠금 것을 어떻게 위에서 알 수 있습니다.

소프트웨어 업계에서는 SCC 시스템을 사용하기위한 표준 요금이며 데이터베이스 devleoper가 일부 데이터베이스 정규화 기술을 가르친다 고 기대하는 것과 다르지 않습니다.

소스 코드 파일을 소스 코드 시스템에서 가져 와서 각 사용자 또는이 경우 로컬 mdb 파일 빌드를 빌드하는 데 사용되는 사실은 실제로 볼 때와 비교할 때 실제 빌드가 아닙니다. 논리적 인 관점.

액세스는 모든 개체 (양식, 보고서, 코드)를 단일 텍스트 개체로 내보낼 수 있기 때문에 논리보기가 개별 개체이기 때문에 Access에서 단일 파일로 여러 개발자가 소스 코드 컨트롤을 사용할 수있는 이유를 설명합니다. 그것은 당신이 지역 빌드를 갖고 있다고 생각하지 않습니다. access + VSS가 각 객체를 개별적으로 볼 수있는 한, 전체 프로세스는 소스 코드 시스템에서 단일 로컬 .exe 또는 단일 mdb를 만드는 C++과 전혀 다르지 않습니다.

+0

소스 코드 시스템 (cvs, subversion, git)에 익숙하지만, MS 특정 개발 및 소스 코드 관리 도구에 대해 너무 많이 알고 있습니다. 내가 그걸 확인해야 할 것 같아. – Hubidubi

0

2 개 이상의 "프런트 엔드"에서 작업하는 개발자는 대부분 종료 될 가능성이 큽니다. 어떤 시점에서 눈물. 개인적으로 나는 적절한 소스 제어가 필요한 프로젝트에서 일한 적이 없지만 시각적 소스 세이프는 액세스와 잘 작동하므로 샷을주고 싶을 수도 있다고 들었습니다.

+0

액세스는 약 15 년간 소스 코드 컨트롤을 지원합니다. 두 명의 사용자가 동일한 프런트 엔드에서 개발하도록 제안하는 것이 바람직하지 않습니다. 해결책은 Visual source safe를 사용하는 것입니다. 따라서 두 명의 사용자가 동일한 C++ 소스 파일을 열어서 동시에 편집 할 수없는 것처럼 C++ 개발자 나 MS 액세스 개발자를위한 솔루션은 소스 코드 컨트롤을 사용하는 것입니다. 액세스 권한이있는 VSS를 사용하면 각 개발자가 자신이 작업중인 응용 프로그램의 일부를 체크인/체크 아웃 할 수 있습니다. 액세스 용 VSS 추가 기능을 사용하면 소스 코드 라이브러리를 기반으로 로컬 빌드를 가질 수 있습니다. –

+0

@Albert 같은 프런트 엔드에 두 명의 사용자가있는 것을 제안하지 않았지만, 실제로 OP를 끄고 VSS쪽으로 향하게하려했습니다. –

2

Microsoft는 액세스 개발 도구에 대한 소스 제어를 제안합니다. 나는 정확한 참고 문헌을 기억하지 못하지만 당신은 쉽게 그것을 구글로 추측 할 수있다. 양식, 쿼리 및/또는 테이블 비교와 관련하여이 소스 컨트롤이 '지능적'인 방법을 모르겠습니다. Acces 객체를 텍스트 파일 (문서화되지 않은 SaveAstext/Application 객체의 LoadFromText 메소드)로 내보내거나 가져올 수있는 기능을 기반으로 VBA에서 자체 소스 제어 시스템을 개발했습니다. 또한 파일 비교 도구 ("파일 비교 도구")를 사용하여 소스 제어 도구를 완성합니다.

우리는 클라이언트 인터페이스의 사용 가능한 모든 개체를 나열하는 "개체"테이블을 가지고 있습니다. 이 목록에서 다음을 내보낼 수 있습니다. \ compare :

  • 테이블 : Google은 다른 데이터베이스에 연결 문자열을 포함하는 테이블과 같은 클라이언트 측 테이블의 테이블 구조와 테이블 데이터를 비교하는 자체 도구를 가지고 있습니다.
  • 쿼리 : "클라이언트 측"쿼리는 "쿼리"테이블에 보관됩니다. 이전
  • 매크로를 참조하십시오 : 우리는 단지 자동 실행 매크로
  • 모듈이 : 우리가 텍스트 파일로 우리의 모듈을 비교,
  • 양식 텍스트 비교 도구를 통해 :이 개 파일에 분할 할 수 있습니다하는 '컨트롤'텍스트 파일, 및 비교를 위해 '양식 모듈'텍스트 파일로 구성됩니다.