Graphisoft®

API Development KitVersion: 18

팀워크 제어


ArchiCAD 13에서 도입된 이 함수들은 당신의 애드온이 새로운 팀워크 환경에서 작동할 수 있게 해줍니다.

함수

프로젝트 상태 및 온라인-오프라인 모드를 확인함:

ACAPI_TeamworkControl_HasConnection
ACAPI_TeamworkControl_IsOnline

잠금 가능한 객체 집합들의 사용자 권한을 확인함:

ACAPI_TeamworkControl_HasCreateRight
ACAPI_TeamworkControl_HasDeleteModifyRight

잠금 가능한 객체 집합 예약:

ACAPI_TeamworkControl_GetLockableStatus
ACAPI_TeamworkControl_FindLockableObjectSet
ACAPI_TeamworkControl_ReserveLockable
ACAPI_TeamworkControl_ReleaseLockable

요소 예약:

ACAPI_TeamworkControl_ReserveElements
ACAPI_TeamworkControl_ReleaseElements

Hotlink/XRef 관리의 예약

ACAPI_TeamworkControl_ReserveHotlinkCacheManagement  Featuring API 18
ACAPI_TeamworkControl_ReleaseHotlinkCacheManagement  Featuring API 18
ACAPI_TeamworkControl_GetHotlinkCacheManagementOwner  Featuring API 18

예약 변경 모니터링:

ACAPI_Notify_CatchElementReservationChange  Featuring API 15
ACAPI_Notify_CatchLockableReservationChange  Featuring API 15

주어진 라이브러리 파트가 BIM 서버에서 로드되었는지 여부를 확인함:

ACAPI_TeamworkControl_IsServerLibPart  Featuring API 15

팀 프로젝트, 실제 작업공간 및 팀원의 실질적인 권한에 대한 정보를 수집함:

APIEnv_ProjectSharingID
APIEnv_UserWorkspaceID
APIEnv_GetTWAccessRightID  Featuring API 14

 

잠금 가능한 객체 집합들

잠금 가능한 객체 집합들은 팀워크 프로젝트의 다른 부분과 별도로 변경될 수 있는 객체들의 그룹들입니다. (단일 객체로 구성되어 있을 수도 있음) 일반적으로 속성 컨테이너들은 잠금 가능한 객체 집합들입니다. 이 집합들은 프로젝트의 특정 부분에 대한 배타 잠금(exclusive lock)을 제어하기 위한 팀워크 모드의 설정 다이얼로그에 특수 예약 패널을 가지고 있습니다.

API 인터페이스에서 잠금 가능한 객체 집합들은 각각의 객체 guid로 참조됩니다. 이 guid들은 미리 정의되어 있으며 모든 프로젝트에서 동일합니다.

경우에 따라 2개 이상의 잠금 가능한 객체 집합들을 동시에 처리할 필요가 있습니다. 예를 들어, Layer Settings 다이얼로그의 Layer and Layer Combination 속성과 같이 동일한 사용자 인터페이스에서만 동시에 잠길 수 있습니다. 이 집합들은 컴파운드 잠금 가능한 객체 집합이라고 불리는 특수 잠금 가능한 객체 집합 하에 그룹화됩니다. 컴파운드들은 미리 정의된 이름으로 참조되며, 그것들의 guid는 ACAPI_TeamworkControl_FindLockableObjectSet 함수로 가져올 수 있습니다.

현재 이용 가능한 잠금 가능한 객체 집합들은 다음과 같습니다:

객체 집합 Guid 또는 컴파운드 이름
Cities 5D8068E2-7430-4871-9D67-E06001F256A1
Composites A36401CC-77B1-4410-BCEB-A7684706A17F
Favorites F97013BD-662E-42a1-A749-9C73CD2D0790
Fill Types 4C036A66-C2FF-4c3b-9FF4-F45A810B5F84
Layers, Layer Combinations "LayerSettingsDialog"
Line Types 702A8569-EA8F-4de8-900C-696980FB13D6
Markup Styles 156BCF98-CFA6-4be0-BC2C-8252D640A9FB
Materials 5B6A4F99-C72D-4811-90A5-6D696E1AB51F
MEP Systems 258B2630-3098-48ea-8923-F712214FBDAE
Model View Options 13E263C8-692B-494b-84E3-2B4BD0A77332
Operation Profiles Featuring API 15 0E6DC7E2-5AFC-4309-AB31-2A790CF57A53
Pen Tables 08B4B9BB-3DD6-4ea1-A084-80D80B8B7742
Profiles 4779D92D-ACFB-429d-91E5-1D585B9D2CE5
Project Info D13F8A89-2AEC-4c32-B04E-85A5393F9C47
Project Preferences, Dimension Standards "PreferencesDialog"
Zone Categories B83F2FD1-0AD4-4c41-A8EB-6D7558B0A120

 

예제

APIDevKit의 Teamwork_Control 예제 프로젝트는 이 함수들을 어떻게 사용하는지 보여줍니다.