NAV Navbar
c

Hansoft PM SDK

The Hansoft PM SDK can be used to integrate the Hansoft Project Server with other systems. It gives access to most things in the server database and allows hooking into document management checkins to allow changes to metadata and file contents on all checkins. Please check out Release Notes for changes since the last version of the SDK.

Hansoft SDK Overview

The current version of the SDK allows reading and writing to the server database. This is accomplished by loading a dll that exposes various functions for reading and manipulating the project database. The Hansoft SDK tries to be backwards compatible where possible. This accomplished by downloading an implementation of the SDK from the server when it's upgraded. This allows you to update your server without rebuilding the applications that uses the SDK. To use new functionality it is required to update to a new version of the SDK interface that exposes the new functionality. The SDK is implemented by impersonating a client with special privileges. This allows for some sanity checks, but it is still possible to destroy the project database, so you should develop and test your application on a separate development server. For details see Developing with Hansoft SDK. Because the is SDK implemented purely by communicating with the server it is not currently possible to extend functionality in the Hansoft Client application.

Developing with Hansoft SDK

Development Environment Connecting to a Database

Development Environment

To use the SDK you need to include HPMSdk.h header file in the code that you want to use the SDK in. You should also add HPMSdk.c to your application or module. You should put the HPMSdk.dll in the same directory as your application or set the directory where the DLL is stored with the HPMInit._pLibraryPath parameter. When a session is connected the SDK will create the directory "VersionsSDK" in the directory of the process the SDK is running from or in the directory specified by the SessionOpen._pWorkingDirectory parameter. You should make sure the process has write permissions to this directory. In this directory the SDK will download the SDK Implementation dll that implements the SDK functions for a particular version of Hansoft Project Server. This setup allows you to upgrade the server without rebuilding the integration components that use the SDK unless you want new functionality. There are also a Java, a .NET and a C++ wrapper for the SDK. No separate documentation is available for these, but they are automatically generated from the C headers so the C documentation still applies, but with some mechanism beeing different. Check out the samples to see a basic Java, .NET and C++ implementation.

Connecting to a Database

To connect to a server with the SDK you need to create a special SDK user in the database. This user can only be created by the "Administrator" user. You need one user for every session you want to connect to the server. If you connect with the same user as another session that session will be dropped from the server.
To be able to create SDK users in the database you need to have a license that has SDK support enabled. If you need SDK support on your license or need a development license contact SessionOpen, but not beforce you have initialized the SDK with HPMInit. If you develop a solution that requires more than one SDK session, e.g. a web integration, you should use SessionOpenVirtual to use the SDK's builtin session pool.

See Also

HPMInit, SessionOpen

HPM SDK Basic Types

Basic types used in the SDK.

Type Description
HPMUInt8 Unsigned 8 bit integer type.
HPMInt8 Signed 8 bit integer type.
HPMUInt16 Unsigned 16 bit integer type.
HPMInt16 Signed 16 bit integer type.
HPMUInt32 Unsigned 32 bit integer type.
HPMInt32 Signed 32 bit integer type.
HPMUInt64 Unsigned 64 bit integer type.
HPMInt64 Signed 64 bit Integer type.
HPMFP32 32 bit floating point type.
HPMFP64 64 bit floating point type.
HPMUniqueID Used to specify a unique database identifier. Resources, projects, tasks and other items are specified with this type.
HPMError Used as a return type for values. Signed 32 bit integer type.
HPMAsciChar This is the character type that some basic strings use. 8 bit wide.
HPMChar This is the character type that most strings use. It is. 16 bit wide.
HPMString Pointer to a HPMChar string that is used to specify strings to the SDK. All strings in the SDK is encoded with UTF-16 encoding.
HPMUserContext A user context used for specifying context by the SDK user.

Comments

These are the basic types that are used to communicate with the SDK.

ManagedComplexTypes

HPMBoolean

JavaNativeTypeMap

"HPMString=String,jstring,L" "HPMInt32=int,jint,I" "HPMUInt32=int,jint,I" "HPMInt64=long,jlong,J" "HPMUInt64=long,jlong,J" "HPMUInt8=byte,jbyte,B" "HPMInt8=byte,jbyte,B" "HPMUInt16=short,jshort,S" "HPMInt16=short,jshort,S" "HPMFP32=float,jfloat,F" "HPMFP64=double,jdouble,D"

EHPMSDK

Misc SDK enums.

enum EHPMSDK {
    EHPMSDK_Version = 65793,
};

Values

EHPMSDK_Version

The version of the SDK.

EHPMError

One of these values will always be returned when calling a function in the SDK.

enum EHPMError {
    EHPMError_NoError = 0,
    EHPMError_DllNotFound = 1,
    EHPMError_DllInvalid = 2,
    EHPMError_NewVersionOfSDKRequired = 3,
    EHPMError_CouldNotConnectToHost = 4,
    EHPMError_GeneralLoginError = 5,
    EHPMError_FailedToConnectToDatabase = 6,
    EHPMError_DatabaseDoesNotExist = 7,
    EHPMError_DatabaseNotOnline = 8,
    EHPMError_PasswordOrResourceInvalid = 9,
    EHPMError_LicenseInvalid = 10,
    EHPMError_SyncError = 11,
    EHPMError_OtherError = 12,
    EHPMError_ConnectionLost = 13,
    EHPMError_InvalidID = 14,
    EHPMError_PasswordRequired = 15,
    EHPMError_CallbackAlreadyExists = 16,
    EHPMError_CallbackDoesNotExist = 17,
    EHPMError_BlockTimeout = 18,
    EHPMError_ResourceNotMemberOfProject = 19,
    EHPMError_DataNotYetAvailable = 20,
    EHPMError_ConversionNotSupported = 21,
    EHPMError_IndexOutOfRange = 22,
    EHPMError_FunctionalityNotInitialized = 23,
    EHPMError_AlreadyInitialized = 24,
    EHPMError_OperationAlreadyInProgress = 25,
    EHPMError_AccessDenied = 26,
    EHPMError_FileDoesNotExist = 27,
    EHPMError_LicenseViolation = 28,
    EHPMError_ParseError = 29,
    EHPMError_InvalidCustomSettingsType = 30,
    EHPMError_NotAvailableInClientSDK = 31,
    EHPMError_OnlyAvailableInClientSDK = 32,
    EHPMError_Deprecated = 33,
    EHPMError_OnlyAvailableInQAProject = 34,
    EHPMError_InvalidSessionKeySize = 35,
    EHPMError_InvalidIdentifier = 36,
    EHPMError_SessionPoolNotInitialized = 37,
    EHPMError_SessionPoolSessionNotAvailable = 38,
    EHPMError_SessionPoolNotAllowed = 39,
    EHPMError_SessionPoolNotAvailableInClientSDK = 40,
    EHPMError_LoginDisabled = 41,
    EHPMError_Partitioned = 42,
    EHPMError_WorkingDirectoryNotAvailableInClientSDK = 43,
    EHPMError_NewVersionOfServerRequired = 44,
    EHPMError_IDNoLongerExists = 45,
    EHPMError_NotValidOnTaskWithProxy = 46,
    EHPMError_FullIdentifierNotAvailaibleInTranslation = 47,
    EHPMError_IdentifierNotAvailaibleInTranslation = 48,
    EHPMError_SDKNotAllowedToSetAuthOrCredential = 49,
    EHPMError_ImageFormatNotSupported = 50,
    EHPMError_CropAreaOutOfBounds = 51,
    EHPMError_NoVersionControlHistory = 52,
    EHPMError_TimeZoneOrder = 53,
    EHPMError_ServerTimedOut = 54,
    EHPMError_CouldNotLoadImpDll = 55,
    EHPMError_SecureConnectionRefused = 56,
    EHPMError_SecureConnectionNotTrusted = 57,
    EHPMError_Certificate = 58,
    EHPMError_ServerDoesNotSupportSecureConnection = 59,
    EHPMError_CertificateSettingsNotApplicableInClientSDK = 60,
    EHPMError_DateTimeOutOfRange = 61,
    EHPMError_CouldNotCreateSDKInterface = 62,
    EHPMError_ServerVersionMismatch = 63,
    EHPMError_ServerDoesNotSupportPlatform = 64,
    EHPMError_ServerTimeMismatch = 65,
    EHPMError_InvalidDashboardPageLayout = 66,
    EHPMError_InvalidDashboardConfiguration = 67,
    EHPMError_UserNotMemberOfProject = 68,
    EHPMError_DefaultQAWorkflowCannotBeDeleted = 69,
    EHPMError_DefaultQAWorkflowMustBeVisibleInQA = 70,
    EHPMError_NotAvailableInQAProject = 71,
    EHPMError_BoardTemplateInvalid = 72,
    EHPMError_ReadLockNotAvailableOnVirtualSession = 73,
    EHPMError_ReadLockSet = 74,
    EHPMError_InvalidHansoftURL = 75,
    EHPMError_NoHansoftTaskFoundInURL = 76,
    EHPMError_GUIDInURLNotValidForThisDatabase = 77,
    EHPMError_InvalidImpersonateID = 78,
    EHPMError_InvalidMilestones = 79,
};

Values

EHPMError_NoError

Indicates that the function was successful.

EHPMError_DllNotFound

The SDK dll could not be found in the current path.

EHPMError_DllInvalid

The SDK dll did not contain the expected functions. This could be due to an old dll being used with a new SDK header file.

EHPMError_NewVersionOfSDKRequired

This operation cannot be performed with this version of the SDK, you need to recompile your program with the newest version of the SDK.

EHPMError_CouldNotConnectToHost

The connection to the server was unsuccessful.

EHPMError_GeneralLoginError

Unspecified login error.

EHPMError_FailedToConnectToDatabase

Internal error occurred when trying to login to the database on the server.

EHPMError_DatabaseDoesNotExist

The database specified does not exist on the server.

EHPMError_DatabaseNotOnline

The database specified is not online and cannot be connected to.

EHPMError_PasswordOrResourceInvalid

The resource was not found or the password was incorrect when logging in.

EHPMError_LicenseInvalid

The license has expired, too many resources have been created on the server or the SDK module is not enabled in the license.

EHPMError_SyncError

An error occurred when the client was downloading the database.

EHPMError_OtherError

Unspecified error.

EHPMError_ConnectionLost

The connection to the server has been lost, it's up to the user of the SDK to try to connect again.

EHPMError_InvalidID

The unique identifier specified to the function is not valid.

EHPMError_PasswordRequired

A password must be specified at least one character long.

EHPMError_CallbackAlreadyExists

The callback with the same function pointer and context has already been registered.

EHPMError_CallbackDoesNotExist

The specified callback does not exist.

EHPMError_BlockTimeout

A blocking operation timed out. This usually happens if the connection to the server was lost, it could also happen if an operation takes longer that 120 seconds to process on the server. When this happens you should not assume that the function finished or did not finish.

EHPMError_ResourceNotMemberOfProject

The resource specified was not a member of the project where the operation was performed. This usually happens when you try to set a resource to some task property and the resource isn't a member of that project.

EHPMError_DataNotYetAvailable

The data requested was not yet available. You should wait for a callback signifying that the data is available or poll the function until the requested data is returned.

EHPMError_ConversionNotSupported

The data cannot be retrieved in the requested format because the conversion isn't supported.

EHPMError_IndexOutOfRange

The index supplied to the function was out of range.

EHPMError_FunctionalityNotInitialized

The function called needs to have its functionality initialized before this function can be called.

EHPMError_AlreadyInitialized

The functionality has already been initialized.

EHPMError_OperationAlreadyInProgress

An operation is already in progress and you must wait until it is finished before calling this function.

EHPMError_AccessDenied

Access was denied by the server.

EHPMError_FileDoesNotExist

The file does not exist.

EHPMError_LicenseViolation

The command would have caused a license violation and was aborted.

EHPMError_ParseError

Failed to parse the string that was sent into the function. Additional information might be available through UtilGetLastErrorDescription.

EHPMError_InvalidCustomSettingsType

The custom settings type specified was not valid for this function.

EHPMError_NotAvailableInClientSDK

The called functions is not available in the client SDK.

EHPMError_OnlyAvailableInClientSDK

The called functions is only available in the client SDK.

EHPMError_Deprecated

The function called has been deprecated in this version of the SDK. Check SDK release notes for more information.

EHPMError_OnlyAvailableInQAProject

The called function is only available for items residing in a QA project.

EHPMError_InvalidSessionKeySize

The session key provided is too large or too small.

EHPMError_InvalidIdentifier

The authentication method identifier provided is invalid (empty or too long).

EHPMError_SessionPoolNotInitialized

The session pool could not be initialized.

EHPMError_SessionPoolSessionNotAvailable

No available sessions in the session pool.

EHPMError_SessionPoolNotAllowed

This operation is not allowed on a virtual session.

EHPMError_SessionPoolNotAvailableInClientSDK

The session pool is not available in the client SDK.

EHPMError_LoginDisabled

The login for the resource has been disabled.

EHPMError_Partitioned

Unable to complete authentication due to network problems

EHPMError_WorkingDirectoryNotAvailableInClientSDK

The working directory is not available in the client SDK.

EHPMError_NewVersionOfServerRequired

The application was developed with a version of the SDK, that requires that the server is updated to a newer version.

EHPMError_IDNoLongerExists

The identifier specified in the command never existed or has been deleted since the command was sent to server.

EHPMError_NotValidOnTaskWithProxy

The operation cannot be performed on a task that has a proxy.

EHPMError_FullIdentifierNotAvailaibleInTranslation

The full translation identifier is not available in the translation.

EHPMError_IdentifierNotAvailaibleInTranslation

The translation identifier is not available in the translation.

EHPMError_SDKNotAllowedToSetAuthOrCredential

The SDK is not allowed to set authentication provider or credential check provider

EHPMError_ImageFormatNotSupported

Image format not supported by SDK.

EHPMError_CropAreaOutOfBounds

The specified crop area is larger than the original image.

EHPMError_NoVersionControlHistory

No version control history exist.

EHPMError_TimeZoneOrder

Not possible to set timezone start before or equal to previous timezone end or to set timezone end before timezone start.

EHPMError_ServerTimedOut

Connection to server timed out.

EHPMError_CouldNotLoadImpDll

Could not load downloaded SDK implementation dll.

EHPMError_SecureConnectionRefused

Secure connection refused.

EHPMError_SecureConnectionNotTrusted

Secure connection not trusted.

EHPMError_Certificate

Certificate error. A more detailed description can be found with UtilGetLastErrorDescription.

EHPMError_ServerDoesNotSupportSecureConnection

Server does not support SSL.

EHPMError_CertificateSettingsNotApplicableInClientSDK

The certificate settings are not applicable in the client SDK.

EHPMError_DateTimeOutOfRange

The provided date time parameter is out of range.

EHPMError_CouldNotCreateSDKInterface

Could not create the SDK interface from the downloaded SDK implementation dll.

EHPMError_ServerVersionMismatch

A version mismatch was found in the SDK implementation dll.

EHPMError_ServerDoesNotSupportPlatform

The server does not support your SDK platform or architecture.

EHPMError_ServerTimeMismatch

The server time differs a lot from time the time on this computer. Connection is not allowed.

EHPMError_InvalidDashboardPageLayout

The dashboard page layout was invalid. Ensure the number of columns matches the layout type.

EHPMError_InvalidDashboardConfiguration

The dashboard configuration was invalid. Additional information might be available through UtilGetLastErrorDescription.

EHPMError_UserNotMemberOfProject

The SDK user running the command is not member of the project that the command requested. See also HPMResourceProperties::m_SDKSyncMethod.

EHPMError_DefaultQAWorkflowCannotBeDeleted

The default QA workflow cannot be deleted.

EHPMError_DefaultQAWorkflowMustBeVisibleInQA

The default QA workflow must be visible in the QA section.

EHPMError_NotAvailableInQAProject

The called function is not available for QA projects.

EHPMError_BoardTemplateInvalid

The template is invalid or does not exist.

EHPMError_ReadLockNotAvailableOnVirtualSession

Read lock not available on virtual sessions.

EHPMError_ReadLockSet

A read lock is already set.

EHPMError_InvalidHansoftURL

The URL provided is not a valid Hansoft URL.

EHPMError_NoHansoftTaskFoundInURL

No Hansoft task was found in the URL.

EHPMError_GUIDInURLNotValidForThisDatabase

The database GUID found the Hansoft URL is not valid for this database.

EHPMError_InvalidImpersonateID

The ID set with ResourceImpersonate is no longer valid.

EHPMError_InvalidMilestones

The milestones are invalid.

EHPMDateFormat

Date formats. Currently only used for HPMResourceGlobalSettings::m_DateFormat

enum EHPMDateFormat {
    EHPMDateFormat_NewVersionOfSDKRequired = 0,
    EHPMDateFormat_YYYY_MM_DD_ISO8601 = 1,
    EHPMDateFormat_MM_DD_YYYY = 2,
    EHPMDateFormat_DD_MM_YYYY = 3,
    EHPMDateFormat_YYYY_MMM_DD = 4,
    EHPMDateFormat_MMM_DD_YYYY = 5,
    EHPMDateFormat_DD_MMM_YYYY = 6,
    EHPMDateFormat_WEEKDAY_YY_MM_DD = 7,
    EHPMDateFormat_WEEKDAY_MM_DD_YY = 8,
    EHPMDateFormat_WEEKDAY_DD_MM_YY = 9,
    EHPMDateFormat_FromLanguage = 10,
};

Values

EHPMDateFormat_NewVersionOfSDKRequired

The date format did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this format.

EHPMDateFormat_YYYY_MM_DD_ISO8601

ISO 8601 format

EHPMDateFormat_MM_DD_YYYY

MM-DD-YYYY format

EHPMDateFormat_DD_MM_YYYY

DD-MM-YYYY format

EHPMDateFormat_YYYY_MMM_DD

YYYY-MMM-DD format

EHPMDateFormat_MMM_DD_YYYY

MMM-DD-YYYY format

EHPMDateFormat_DD_MMM_YYYY

DD-MMM-YYYY format

EHPMDateFormat_WEEKDAY_YY_MM_DD

Weekday-YY-MM-YY format

EHPMDateFormat_WEEKDAY_MM_DD_YY

Weekday-MM-DD-YY format

EHPMDateFormat_WEEKDAY_DD_MM_YY

Weekday-DD-MM-YY format

EHPMDateFormat_FromLanguage

The date format is taken from the current set language

See Also

HPMResourceGlobalSettings, EHPMResourceGlobalSettingsFlag

EHPMPeriodicityType

Periodicity type. This enum specifies different types of periodicity. Used by HPMProjectHistoryAutoSaveSettings and HPMProjectEmailSettings.

enum EHPMPeriodicityType {
    EHPMPeriodicityType_NewVersionOfSDKRequired = 0,
    EHPMPeriodicityType_Never = 1,
    EHPMPeriodicityType_Daily = 2,
    EHPMPeriodicityType_Weekly = 3,
};

Values

EHPMPeriodicityType_NewVersionOfSDKRequired

The periodicity type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this type.

EHPMPeriodicityType_Never

Disabled.

EHPMPeriodicityType_Daily

Daily periodicity.

EHPMPeriodicityType_Weekly

Weekly periodicity.

See Also

HPMProjectHistoryAutoSaveSettings, HPMProjectEmailSettings

EHPMWallGroupingType

Wall grouping mode. Used by HPMTaskWallPosition.

enum EHPMWallGroupingType {
    EHPMWallGroupingType_NewVersionOfSDKRequired = 0,
    EHPMWallGroupingType_DefaultColumn = 1,
    EHPMWallGroupingType_CustomColumn = 2,
    EHPMWallGroupingType_CustomGroups = 3,
};

Values

EHPMWallGroupingType_NewVersionOfSDKRequired

The grouping type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this grouping type.

EHPMWallGroupingType_DefaultColumn

The specified grouping is one of the EHPMProjectDefaultColumn enum.

EHPMWallGroupingType_CustomColumn

The specified grouping is the hash of a custom column.

EHPMWallGroupingType_CustomGroups

The specified grouping is a custom grouping.

See Also

HPMTaskWallPosition

EHPMResourceGroupingType

Resource grouping type type used for HPMResourceDefinition::m_Type, HPMResourceReference::m_ResourceType

enum EHPMResourceGroupingType {
    EHPMResourceGroupingType_NewVersionOfSDKRequired = 0,
    EHPMResourceGroupingType_Resource = 1,
    EHPMResourceGroupingType_ResourceGroup = 2,
    EHPMResourceGroupingType_AllProjectMembers = 3,
};

Values

EHPMResourceGroupingType_NewVersionOfSDKRequired

The resource grouping type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this grouping type.

EHPMResourceGroupingType_Resource

The resource grouping is a resource.

EHPMResourceGroupingType_ResourceGroup

The resource grouping is a resource group.

EHPMResourceGroupingType_AllProjectMembers

The resource grouping is all members of the project.

See Also

HPMResourceDefinition, HPMProjectDetailedAccessRule, HPMProjectWorkflowObject

EHPMCustomSettingsType

Custom settings type used for GlobalGetCustomSettingsValue, ProjectGetCustomSettingsValue, ResourceGetCustomSettingsValue, ProjectResourceGetCustomSettingsValue, GlobalSetCustomSettingsValue, ProjectSetCustomSettingsValue, ResourceSetCustomSettingsValue and ProjectResourceSetCustomSettingsValue

enum EHPMCustomSettingsType {
    EHPMCustomSettingsType_NewVersionOfSDKRequired = 0,
    EHPMCustomSettingsType_Admin = 1,
    EHPMCustomSettingsType_Normal = 2,
    EHPMCustomSettingsType_Custom = 3,
};

Values

EHPMCustomSettingsType_NewVersionOfSDKRequired

The setting type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this settings type.

EHPMCustomSettingsType_Admin

The setting refers to the administrative settings.

EHPMCustomSettingsType_Normal

The setting refers to the normal settings. For a resource this is personal options. For a project this is the settings that main project managers can set from the project view.

EHPMCustomSettingsType_Custom

The setting refers to a custom dialog initiated directly from a client dll.

See Also

GlobalGetCustomSettingsValue, ProjectGetCustomSettingsValue, ResourceGetCustomSettingsValue, ProjectResourceGetCustomSettingsValue, GlobalSetCustomSettingsValue, ProjectSetCustomSettingsValue, ResourceSetCustomSettingsValue, ProjectResourceSetCustomSettingsValue

EHPMReportViewType

Report view type used for HPMReport::m_ViewType

enum EHPMReportViewType {
    EHPMReportViewType_NewVersionOfSDKRequired = 0,
    EHPMReportViewType_BugsReportedByMe = 1,
    EHPMReportViewType_AllBugsInProject = 2,
    EHPMReportViewType_MyWork = 3,
    EHPMReportViewType_ScheduleMainProject = 4,
    EHPMReportViewType_GlobalResourceAllocation = 5,
    EHPMReportViewType_GlobalFind = 6,
    EHPMReportViewType_ProjectHistory = 7,
    EHPMReportViewType_AgileMainProject = 8,
    EHPMReportViewType_AgileBacklog = 9,
};

Values

EHPMReportViewType_NewVersionOfSDKRequired

The view type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this view type.

EHPMReportViewType_BugsReportedByMe

View bugs reported by me.

EHPMReportViewType_AllBugsInProject

View all bugs in project.

EHPMReportViewType_MyWork

View my work.

EHPMReportViewType_ScheduleMainProject

View project as task scheduling.

EHPMReportViewType_GlobalResourceAllocation

View resource allocation.

EHPMReportViewType_GlobalFind

View global find in all projects.

EHPMReportViewType_ProjectHistory

View project history.

EHPMReportViewType_AgileMainProject

View project as agile.

EHPMReportViewType_AgileBacklog

View agile backlog.

See Also

HPMReport

EHPMReportFlag

Report flags used for HPMReport::m_Flags

enum EHPMReportFlag {
    EHPMReportFlag_None = 0,
    EHPMReportFlag_ContinueToFindWhileInReportMode = 8,
};

Values

EHPMReportFlag_None

TBD

EHPMReportFlag_ContinueToFindWhileInReportMode

When the report is active users can continue to use Find.

See Also

HPMReport

EHPMColumnType

Column type used for HPMColumn::m_ColumnType

enum EHPMColumnType {
    EHPMColumnType_NewVersionOfSDKRequired = 0,
    EHPMColumnType_DefaultColumn = 1,
    EHPMColumnType_CustomColumn = 2,
};

Values

EHPMColumnType_NewVersionOfSDKRequired

The column type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this column type.

EHPMColumnType_DefaultColumn

The specified column is one of the EHPMProjectDefaultColumn enum.

EHPMColumnType_CustomColumn

The specified column is the hash of a custom column.

See Also

EHPMProjectDefaultColumn, HPMColumn

EHPMFindSelectionType

Selection type used for HPMFindCondition::m_Type

enum EHPMFindSelectionType {
    EHPMFindSelectionType_NewVersionOfSDKRequired = 0,
    EHPMFindSelectionType_Column = 1,
    EHPMFindSelectionType_Fixed = 2,
};

Values

EHPMFindSelectionType_NewVersionOfSDKRequired

The selection type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this selection type.

EHPMFindSelectionType_Column

The specified column is the hash of a custom column.

EHPMFindSelectionType_Fixed

The specified column us one of EHPMFilterType enum.

See Also

HPMFindCondition

EHPMFilterType

Filter type used for HPMFindCondition::m_SelectionID

enum EHPMFilterType {
    EHPMFilterType_NewVersionOfSDKRequired = 0,
    EHPMFilterType_None = 1,
    EHPMFilterType_Incompleted = 2,
    EHPMFilterType_Completed = 3,
    EHPMFilterType_InProgress = 4,
    EHPMFilterType_Overdue = 5,
    EHPMFilterType_NotStartedYet = 6,
    EHPMFilterType_ResourcesOverallocation = 7,
    EHPMFilterType_ResourcesUnderallocation = 8,
    EHPMFilterType_ResourcesGaps = 9,
    EHPMFilterType_ResourcesWorkingNow = 10,
    EHPMFilterType_ResourcesFreeNow = 11,
    EHPMFilterType_OutOfOffice = 12,
    EHPMFilterType_NotAssigned = 13,
    EHPMFilterType_MilestoneOverdue = 14,
    EHPMFilterType_AreMilestone = 15,
    EHPMFilterType_AreMilestonePast = 16,
    EHPMFilterType_AreMilestoneFuture = 17,
    EHPMFilterType_AreSprints = 18,
    EHPMFilterType_AreBacklogItems = 19,
    EHPMFilterType_HaveAgileStatusNotDone = 20,
    EHPMFilterType_HaveAgileStatusInProgress = 21,
    EHPMFilterType_HaveAgileStatusCompleted = 22,
    EHPMFilterType_HaveAgileStatusBlocked = 23,
    EHPMFilterType_HaveAgileStatusDeleted = 24,
    EHPMFilterType_VacationTasks = 25,
    EHPMFilterType_UserStories = 26,
    EHPMFilterType_AssignedToMe = 27,
    EHPMFilterType_CanStartNow = 28,
    EHPMFilterType_IsOngoingWork = 29,
    EHPMFilterType_IsArchived = 30,
    EHPMFilterType_IsDeleted = 31,
    EHPMFilterType_IsLeaf = 32,
    EHPMFilterType_AreBoards = 33,
};

Values

EHPMFilterType_NewVersionOfSDKRequired

The filter type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this filter type.

EHPMFilterType_None

No filter.

EHPMFilterType_Incompleted

Scheduled tasks with status 'Incomplete'

EHPMFilterType_Completed

Scheduled tasks with status 'Completed'.

EHPMFilterType_InProgress

Scheduled tasks with status 'In progress'.

EHPMFilterType_Overdue

Scheduled tasks with status 'Overdue'.

EHPMFilterType_NotStartedYet

Scheduled tasks with status 'Not started yet'.

EHPMFilterType_ResourcesOverallocation

Resource allocation zones that are over allocated.

EHPMFilterType_ResourcesUnderallocation

Resource allocation zones that are under allocated.

EHPMFilterType_ResourcesGaps

Resource allocation zones that have planning gaps.

EHPMFilterType_ResourcesWorkingNow

Resource allocation zones that are allocated now.

EHPMFilterType_ResourcesFreeNow

Resource allocation zones that are not allocated now.

EHPMFilterType_OutOfOffice

Resource allocation zones that are out of office.

EHPMFilterType_NotAssigned

Tasks/items that are not assigned.

EHPMFilterType_MilestoneOverdue

Tasks/items that are milestone overdue.

EHPMFilterType_AreMilestone

All milestones.

EHPMFilterType_AreMilestonePast

Past milestones.

EHPMFilterType_AreMilestoneFuture

Future milestones.

EHPMFilterType_AreSprints

All sprints.

EHPMFilterType_AreBacklogItems

All backlog items.

EHPMFilterType_HaveAgileStatusNotDone

Agile items with status 'Not done'.

EHPMFilterType_HaveAgileStatusInProgress

Agile items with status 'In progress'.

EHPMFilterType_HaveAgileStatusCompleted

Agile items with status 'Completed'.

EHPMFilterType_HaveAgileStatusBlocked

Agile items with status 'Blocked'.

EHPMFilterType_HaveAgileStatusDeleted

Agile items with status 'Deleted'.

EHPMFilterType_VacationTasks

Vacation tasks.

EHPMFilterType_UserStories

Items with status user stories.

EHPMFilterType_AssignedToMe

Bugs assigned to me.

EHPMFilterType_CanStartNow

Tasks that can start now.

EHPMFilterType_IsOngoingWork

Tasks that are ongoing.

EHPMFilterType_IsArchived

Tasks that are archived.

EHPMFilterType_IsDeleted

Tasks that are deleted.

EHPMFilterType_IsLeaf

Tasks that don't have children

EHPMFilterType_AreBoards

All boards.

See Also

HPMFindCondition

EHPMListIcon

Icons used in lists.

enum EHPMListIcon {
    EHPMListIcon_NewVersionOfSDKRequired = 0,
    EHPMListIcon_Default = 1,
    EHPMListIcon_WhiteBox = 2,
    EHPMListIcon_GreenBox = 3,
    EHPMListIcon_YellowBox = 4,
    EHPMListIcon_RedBox = 5,
    EHPMListIcon_BlueBox = 6,
    EHPMListIcon_MagentaBox = 7,
    EHPMListIcon_OrangeBox = 8,
    EHPMListIcon_Check = 9,
    EHPMListIcon_RedDot = 10,
    EHPMListIcon_BlueFace = 11,
    EHPMListIcon_GreyFace = 12,
    EHPMListIcon_OrangeFace = 13,
    EHPMListIcon_GoldFace = 14,
    EHPMListIcon_Locked = 15,
    EHPMListIcon_Unlocked = 16,
    EHPMListIcon_ReOpenBug = 17,
    EHPMListIcon_NewBug = 18,
    EHPMListIcon_AssignedBug = 19,
    EHPMListIcon_FixedBug = 20,
    EHPMListIcon_VerifiedBug = 21,
    EHPMListIcon_ClosedBug = 22,
    EHPMListIcon_Group = 23,
    EHPMListIcon_GreyGroup = 24,
    EHPMListIcon_LightGreyGroup = 25,
    EHPMListIcon_GreenCircle = 26,
    EHPMListIcon_YellowCircle = 27,
    EHPMListIcon_RedCircle = 28,
    EHPMListIcon_BlueCircle = 29,
    EHPMListIcon_MagentaCircle = 30,
    EHPMListIcon_OrangeCircle = 31,
    EHPMListIcon_YesBox = 32,
    EHPMListIcon_NoBox = 33,
    EHPMListIcon_QuestionBox = 34,
    EHPMListIcon_Project = 35,
    EHPMListIcon_DeletedResource = 36,
    EHPMListIcon_Workflow = 37,
    EHPMListIcon_Progress = 38,
    EHPMListIcon_Step = 39,
    EHPMListIcon_Pipeline = 40,
    EHPMListIcon_Report = 41,
    EHPMListIcon_VeryHighPriorityBox = 42,
    EHPMListIcon_HighPriorityBox = 43,
    EHPMListIcon_MediumPriorityBox = 44,
    EHPMListIcon_LowPriorityBox = 45,
    EHPMListIcon_VeryLowPriorityBox = 46,
    EHPMListIcon_DisabledBox = 47,
    EHPMListIcon_Plus = 48,
    EHPMListIcon_NoIcon = 49,
    EHPMListIcon_WarningTriangleRed = 50,
    EHPMListIcon_WarningTriangleYellow = 51,
    EHPMListIcon_ExclamationMark = 52,
    EHPMListIcon_Information = 53,
    EHPMListIcon_Pause = 54,
    EHPMListIcon_Stop = 55,
};

Values

EHPMListIcon_NewVersionOfSDKRequired

The bug status icon did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this status icon.

EHPMListIcon_Default

Default icon. Currently resolves to EHPMListIcon_RedDot.

EHPMListIcon_WhiteBox

White box icon.

EHPMListIcon_GreenBox

Green box icon.

EHPMListIcon_YellowBox

Yellow box icon.

EHPMListIcon_RedBox

Red box icon.

EHPMListIcon_BlueBox

Blue box icon.

EHPMListIcon_MagentaBox

Magenta box icon.

EHPMListIcon_OrangeBox

Orange box icon.

EHPMListIcon_Check

Check mark icon.

EHPMListIcon_RedDot

Red dot icon.

EHPMListIcon_BlueFace

Blue face icon.

EHPMListIcon_GreyFace

Grey face icon.

EHPMListIcon_OrangeFace

Orange face icon.

EHPMListIcon_GoldFace

Gold face icon.

EHPMListIcon_Locked

Locked icon.

EHPMListIcon_Unlocked

Unlocked icon.

EHPMListIcon_ReOpenBug

Re-open bug icon.

EHPMListIcon_NewBug

New bug icon.

EHPMListIcon_AssignedBug

Assigned bug icon.

EHPMListIcon_FixedBug

Fixed bug icon.

EHPMListIcon_VerifiedBug

Verified bug icon.

EHPMListIcon_ClosedBug

Closed bug icon.

EHPMListIcon_Group

Group icon.

EHPMListIcon_GreyGroup

Grey group icon.

EHPMListIcon_LightGreyGroup

Light grey icon.

EHPMListIcon_GreenCircle

Green circle icon.

EHPMListIcon_YellowCircle

Yellow circle icon.

EHPMListIcon_RedCircle

Red circle icon.

EHPMListIcon_BlueCircle

Blue circle icon.

EHPMListIcon_MagentaCircle

Magenta circle icon.

EHPMListIcon_OrangeCircle

Orange circle icon.

EHPMListIcon_YesBox

Yes box icon.

EHPMListIcon_NoBox

No box icon.

EHPMListIcon_QuestionBox

Question box icon.

EHPMListIcon_Project

Project icon.

EHPMListIcon_DeletedResource

Deleted resource icon.

EHPMListIcon_Workflow

Workflow icon.

EHPMListIcon_Progress

Progress icon.

EHPMListIcon_Step

Step icon.

EHPMListIcon_Pipeline

Pipeline icon.

EHPMListIcon_Report

Report icon.

EHPMListIcon_VeryHighPriorityBox

Very high priority box icon.

EHPMListIcon_HighPriorityBox

High priority box icon.

EHPMListIcon_MediumPriorityBox

Medium priority box icon.

EHPMListIcon_LowPriorityBox

Low priority box icon.

EHPMListIcon_VeryLowPriorityBox

Very low priority icon.

EHPMListIcon_DisabledBox

Disabled box icon.

EHPMListIcon_Plus

Plus icon.

EHPMListIcon_NoIcon

No icon.

EHPMListIcon_WarningTriangleRed

Red warning triangle icon.

EHPMListIcon_WarningTriangleYellow

Yellow warning triangle icon.

EHPMListIcon_ExclamationMark

Exclamation mark icon.

EHPMListIcon_Information

Information icon.

EHPMListIcon_Pause

Pause icon.

EHPMListIcon_Stop

Stop icon.

See Also

HPMReport, HPMProjectWorkflowObject, HPMProjectWorkflowProperties, HPMProjectCustomColumnsColumnDropListItem

EHPMReportSortGroupOrderType

Sort group order used for HPMReportSortGroupProperties::m_OrderType

enum EHPMReportSortGroupOrderType {
    EHPMReportSortGroupOrderType_NewVersionOfSDKRequired = 0,
    EHPMReportSortGroupOrderType_None = 1,
    EHPMReportSortGroupOrderType_Primary = 2,
    EHPMReportSortGroupOrderType_Secondary = 3,
};

Values

EHPMReportSortGroupOrderType_NewVersionOfSDKRequired

The sort/group order type did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this type.

EHPMReportSortGroupOrderType_None

Use if HPMReportSortGroupProperties has no sort group/criteria.

EHPMReportSortGroupOrderType_Primary

Use if HPMReportSortGroupProperties is the primary sort/group criteria.

EHPMReportSortGroupOrderType_Secondary

Use if HPMReportSortGroupProperties is the secondary sort/group criteria.

See Also

HPMReportSortGroupProperties

EHPMTimesheetField

The timesheet field type.

enum EHPMTimesheetField {
    EHPMTimesheetField_NewVersionOfSDKRequired = 0,
    EHPMTimesheetField_DayID = 1,
    EHPMTimesheetField_HighestRowID = 2,
    EHPMTimesheetField_ActivityTypeID = 3,
    EHPMTimesheetField_ProjectID = 4,
    EHPMTimesheetField_TaskID = 5,
    EHPMTimesheetField_StartedTime = 6,
    EHPMTimesheetField_FinishedTime = 7,
    EHPMTimesheetField_DurationTime = 8,
    EHPMTimesheetField_Comment = 9,
    EHPMTimesheetField_Deleted = 10,
};

Values

EHPMTimesheetField_NewVersionOfSDKRequired

The field did not exist when this SDK was created. Upgrade to a newer version of the SDK to be able to use this type.

EHPMTimesheetField_DayID

Day id field.

EHPMTimesheetField_HighestRowID

Highest row id field.

EHPMTimesheetField_ActivityTypeID

Activity type id field.

EHPMTimesheetField_ProjectID

Project id field.

EHPMTimesheetField_TaskID

Task id field.

EHPMTimesheetField_StartedTime

Started time field.

EHPMTimesheetField_FinishedTime

Finished time field.

EHPMTimesheetField_DurationTime

Duration time field.

EHPMTimesheetField_Comment

Comment field.

EHPMTimesheetField_Deleted

Is deleted field.

See Also

HPMChangeCallbackData_TimesheetRowChange

EHPMOptionalBoolean

Used to specify optional parameters.

enum EHPMOptionalBoolean {
    EHPMOptionalBoolean_NotSet = 0,
    EHPMOptionalBoolean_On = 1,
    EHPMOptionalBoolean_Off = 2,
};

Values

EHPMOptionalBoolean_NotSet

The value is not set.

EHPMOptionalBoolean_On

The value is true/on/set.

EHPMOptionalBoolean_Off

The value is false/off/not set.

HPMUntranslatedString

Used to define an untranslated string.

struct HPMUntranslatedString {
     HPMInt32 m_Dummy;
} HPMUntranslatedString;

Members

m_Dummy

Dummy variable. Not used

HPMBinaryBuffer

Stores binary data.

struct HPMBinaryBuffer {
     HPMUInt32 m_nBytes;
     const HPMUInt8 * m_pBytes;
} HPMBinaryBuffer;

Members

m_nBytes

The number of bytes of data.

m_pBytes

The binary data.

See Also

CommunicationChannelRegister, CommunicationChannelEnum

HPMResourceDefinition

Used to define lists of resources.

struct HPMResourceDefinition {
     HPMInt32 m_GroupingType;
     HPMUniqueID m_ID;
} HPMResourceDefinition;

Members

m_GroupingType

The grouping type. Can be one of EHPMResourceGroupingType.

m_ID

The unique identifier of the resource or resource group.

See Also

EHPMResourceGroupingType

HPMResourceDefinitionList

Used to specify a list of resources.

struct HPMResourceDefinitionList {
     HPMUInt32 m_nResources;
     const HPMResourceDefinition * m_pResources;
} HPMResourceDefinitionList;

Members

m_nResources

The number of resources defined.

m_pResources

Pointer to a list of resources to define. See HPMResourceDefinition.

See Also

HPMResourceDefinition

HPMWorkPass

Defines a work pass.

struct HPMWorkPass {
     HPMUInt32 m_Start;
     HPMUInt32 m_End;
} HPMWorkPass;

Members

m_Start

The start of the pass.

m_End

The end of the pass.

Comments

Times are defined as 1 + Half hours since midnight. To disable the pass set both start and end to 0.

See Also

HPMWorkDay, HPMCustomWorkHoursDay

HPMWorkDay

Defines a work Day.

struct HPMWorkDay {
     HPMWorkPass m_WorkPasses[3];
} HPMWorkDay;

Members

m_WorkPasses

You can set up to three work passes for a day. See HPMWorkPass for details on work passes.

Comments

A work day is defined as three work passes.

See Also

HPMWorkPass, HPMTaskVacationOptions, HPMWorkingHours

HPMWorkingDays

Working days used in in ProjectCalendarGetWorkingDays, ProjectCalendarSetWorkingDays

struct HPMWorkingDays {
     HPMInt32 m_bWorkDay[7];
} HPMWorkingDays;

Members

m_bWorkDay

The working week. m_bWorkDay[0] is Monday. A day is a working day if set to 1, a non working day if set to 0.

See Also

ProjectCalendarGetWorkingDays, ProjectCalendarSetWorkingDays

HPMCustomWorkDay

Work day status for a specific date.

struct HPMCustomWorkDay {
     HPMUInt64 m_Date;
     HPMInt32 m_bWorkDay;
} HPMCustomWorkDay;

Members

m_Date

The specific date for the working day status. Expressed as the number of micro seconds since 1970 UTC.

m_bWorkDay

Set to 1 if this day is a working day, 0 otherwise.

See Also

HPMCustomWorkingDays

HPMCustomWorkingDays

Changed working days used in in ProjectCalendarGetCustomWorkingDays, ProjectCalendarSetCustomWorkingDays

struct HPMCustomWorkingDays {
     HPMUInt32 m_nChangedDays;
     const HPMCustomWorkDay * m_pChangedDays;
} HPMCustomWorkingDays;

Members

m_nChangedDays

The number of days to specify changed working day status for.

m_pChangedDays

Pointer to a list of HPMCustomWorkDay to specify changed working day status for.

See Also

ProjectCalendarGetCustomWorkingDays, ProjectCalendarSetCustomWorkingDays

HPMCustomWorkHoursDay

Changed working hours for a specific date.

struct HPMCustomWorkHoursDay {
     HPMUInt64 m_Date;
     HPMWorkPass m_WorkPasses[3];
} HPMCustomWorkHoursDay;

Members

m_Date

The specific date for the working hours. Expressed as the number of micro seconds since 1970 UTC.

m_WorkPasses

You can set up to three work passes for a day. See HPMWorkPass for details on work passes.

See Also

HPMCustomWorkingHours

HPMCustomWorkingHours

Specific days to set working hours for used in ProjectCalendarGetCustomWorkingHours, ProjectCalendarSetCustomWorkingHours

struct HPMCustomWorkingHours {
     HPMUInt32 m_nChangedDays;
     const HPMCustomWorkHoursDay * m_pChangedDays;
} HPMCustomWorkingHours;

Members

m_nChangedDays

The number of days with changed working hours.

m_pChangedDays

Pointer to a list of HPMCustomWorkHoursDay to specify changed working hours for.

See Also

ProjectCalendarGetCustomWorkingHours, ProjectCalendarSetCustomWorkingHours

HPMWorkingHours

Working days used in ProjectCalendarGetWorkingDays, ProjectCalendarSetWorkingDays

struct HPMWorkingHours {
     HPMWorkDay m_WorkDays[7];
} HPMWorkingHours;

Members

m_WorkDays

Used to specify work passes for the days of the week. See HPMWorkDay.

See Also

ProjectCalendarGetWorkingDays, ProjectCalendarSetWorkingDays

HPMHoliday

Holiday definition.

struct HPMHoliday {
     HPMUInt64 m_Date;
     const HPMUntranslatedString * m_pName;
} HPMHoliday;

Members

m_Date

The date to set a holiday for. Expressed as the number of micro seconds since 1970 UTC.

m_pName

The name of the holiday.

See Also

HPMHolidayYear

HPMHolidayYear

Year that has number of holidays defined.

struct HPMHolidayYear {
     HPMInt32 m_Year;
     HPMUInt32 m_nDays;
     const HPMHoliday * m_pDays;
} HPMHolidayYear;

Members

m_Year

The year to set holidays for.

m_nDays

The number of holidays.

m_pDays

Pointer to a list of HPMHoliday to set as holidays.

See Also

HPMHolidays

HPMHolidays

Holidays used in ProjectCalendarGetHolidays, ProjectCalendarSetHolidays

struct HPMHolidays {
     const HPMUntranslatedString * m_pCountry;
     HPMUInt32 m_nYears;
     const HPMHolidayYear * m_pYears;
} HPMHolidays;

Members

m_pCountry

The name of the country where the holidays are celebrated.

m_nYears

The number of years that holidays are defined for.

m_pYears

Pointer to a list of HPMHolidayYear to holidays for.

See Also

ProjectCalendarGetHolidays, ProjectCalendarSetHolidays

HPMCalendarDayInfo

Calendar information used in ProjectGetCalendarDayInfo

struct HPMCalendarDayInfo {
     HPMInt32 m_bWorkingDay;
     HPMInt32 m_bHoliday;
     HPMInt32 m_bCompensatedHoliday;
     HPMInt32 m_WorkingHours;
     HPMInt32 m_bOriginatesFromVacationTask;
} HPMCalendarDayInfo;

Members

m_bWorkingDay

Set to 1 if day is a working day, 0 otherwise.

m_bHoliday

Set to 1 if day is a holiday, 0 otherwise.

m_bCompensatedHoliday

Set to 1 if day is a compensated, 0 otherwise.

m_WorkingHours

The number of working hours, expressed as half hours.

m_bOriginatesFromVacationTask

If a vacation task has affected the calendar in any way for this day this will be set to 1, 0 otherwise.

See Also

ProjectGetCalendarDayInfo

HPMMD5Checksum

Defines a MD5 checksum.

struct HPMMD5Checksum {
     HPMUInt8 m_Checksum[16];
} HPMMD5Checksum;

Members

m_Checksum

The MD5 checksum data

See Also

HPMVersionControlFile

HPMCustomSettingValue

Defines the value of a custom setting.

struct HPMCustomSettingValue {
     HPMInt32 m_bIsDefault;
     HPMInt32 m_bSecretValue;
     const HPMChar * m_pValue;
} HPMCustomSettingValue;

Members

m_bIsDefault

Set to true when the requested value is the default value. If set to false when setting a value, the value is removed.

m_bSecretValue

If set the value will only be sent to the server and other SDK clients, not to normal clients. Not valid when getting values.

m_pValue

The value of the custom setting to get or set.

See Also

GlobalGetCustomSettingsValue, GlobalSetCustomSettingsValue ResourceGetCustomSettingsValue, ResourceSetCustomSettingsValue ProjectGetCustomSettingsValue, ProjectSetCustomSettingsValue ProjectResourceGetCustomSettingsValue, ProjectResourceSetCustomSettingsValue

HPMSDKInternalData

Defines SDK internal data.

struct HPMSDKInternalData {
     HPMInt32 m_bSecret;
     HPMUInt32 m_nData;
     const HPMUInt8 * m_pData;
} HPMSDKInternalData;

Members

m_bSecret

If set the data will only be sent to the server and other SDK clients, not to normal clients. Not valid when getting data.

m_nData

The number of bytes of data defined.

m_pData

The data defined.

See Also

GlobalGetSDKInternalData, GlobalSetSDKInternalData ResourceGetSDKInternalData, ResourceSetSDKInternalData ProjectGetSDKInternalData, ProjectSetSDKInternalData ProjectResourceGetSDKInternalData, ProjectResourceSetSDKInternalData, TaskGetSDKInternalData, TaskSetSDKInternalData TaskGetCommentSDKInternalData, TaskSetCommentSDKInternalData TaskRefGetSDKInternalData, TaskRefSetSDKInternalData

HPMCustomStatisticsField

Used to define a statistics field.

struct HPMCustomStatisticsField {
     HPMInt32 m_FieldID;
     HPMUInt32 m_FieldData;
} HPMCustomStatisticsField;

Members

m_FieldID

The field ID. Can be one of EHPMStatisticsField. EHPMStatisticsField_CustomStatisticsSampler is not valid for this member.

m_FieldData

Extra data to identify the field. If m_FieldID is EHPMStatisticsField_CustomColumn this parameter should be the column hash for the custom column.

See Also

HPMProjectCustomStatisticsSampler, HPMProjectCustomStatisticsSampler, EHPMStatisticsField, HPMStatisticsCustomStatisticsFrequency

HPMVariantData

Used to represent variant data.

struct HPMVariantData {
     HPMInt32 m_Dummy;
} HPMVariantData;

Members

m_Dummy

Dummy variable. Not used

HPMTaskField

Used to define a task field.

struct HPMTaskField {
     HPMInt32 m_FieldID;
     HPMUInt32 m_FieldData;
} HPMTaskField;

Members

m_FieldID

The field to specify data for. Can be one of EHPMTaskField.

m_FieldData

The field data to specify data for. If m_FieldID is EHPMTaskField_CustomColumnData this member is the column hash of the custom column data.

See Also

HPMVariantData

HPMTaskFieldData

Used to define the data for a task field.

struct HPMTaskFieldData {
     HPMTaskField m_TaskField;
     const HPMVariantData * m_pVariantData;
} HPMTaskFieldData;

Members

m_TaskField

The task field type.

m_pVariantData

A variant to specify the data. Use the VariantDecode_* and VariantEncode_* functions to manipulate this member.

See Also

HPMVariantData

HPMColumn

Used to define a column.

struct HPMColumn {
     HPMInt32 m_ColumnType;
     HPMUInt32 m_ColumnID;
} HPMColumn;

Members

m_ColumnType

Column identification type. Cane be one of EHPMColumnType.

m_ColumnID

If m_ColumnType is EHPMColumnType_DefaultColumn this value can be one of EHPMProjectDefaultColumn, otherwise if m_ColumnType is EHPMColumnType_CustomColumn it's the hash of the custom column. This together with m_ColumnType defines the order of the columns.

See Also

EHPMColumnType, HPMFindCriteriaDataHeader HPMReportSortGroupProperties

HPMColumnData

Used to hold the data items returned from UtilGetColumnData.

struct HPMColumnData {
     HPMUInt32 m_nDataItems;
     const HPMUInt32 * m_pDataItems;
     HPMInt32 m_bFirstItemIsNotSet;
} HPMColumnData;

Members

m_nDataItems

The number of data items.

m_pDataItems

Pointer to a list of data items.

m_bFirstItemIsNotSet

Set to true when the first item in the list is the 'Not set' item

See Also

UtilGetColumnData

HPMColumnDescription

Used to hold the data items returned from UtilGetColumnDescription.

struct HPMColumnDescription {
     HPMInt32 m_Type;
     HPMInt32 m_CriteriaDataType;
     HPMInt32 m_bFloatingPoint;
     HPMInt32 m_bReadOnly;
     HPMInt32 m_TaskFieldID;
     HPMInt64 m_MinValue;
     HPMInt64 m_MaxValue;
     HPMInt32 m_MaxDecimals;
} HPMColumnDescription;

Members

m_Type

The type of the column. Will be one of EHPMValueType.

m_CriteriaDataType

The criteria data type of the column. Will be one of EHPMFindCriteriaDataType.

m_bFloatingPoint

Set to 1 if this is a floating point column, 0 otherwise.

m_bReadOnly

Set to 1 if this is read only, 0 otherwise.

m_TaskFieldID

The corresponding task field in EHPMTaskField.

m_MinValue

The min value of this column. Both m_MinValue and m_MaxValue set to 0 if not applicable.

m_MaxValue

The max value of this column. Both m_MinValue and m_MaxValue set to 0 if not applicable.

m_MaxDecimals

The max number of decimals for this column. Set to 0 for integers and for floating point columns that has infinite decimals.

See Also

UtilGetColumnDescription

HPMColumnTextOptions

Column text options used in TaskRefGetColumnText.

struct HPMColumnTextOptions {
     HPMInt32 m_bForDisplay;
     HPMInt32 m_bMyWork;
     HPMInt32 m_bDisplayUnits;
     HPMInt32 m_bExpandResources;
     HPMInt32 m_bOnlyFirstResource;
     HPMInt32 m_bNeedFullProjectPath;
     HPMInt32 m_bNeedSprintInSubProjectPath;
     HPMInt32 m_bSeparateSubProjectPath;
     HPMUniqueID m_ForResource;
} HPMColumnTextOptions;

Members

m_bForDisplay

Set to 1 if this text is for display, 0 if intended for search.

m_bMyWork

Set to 1 if this is intended for my work.

m_bDisplayUnits

Set to 1 to display units where applicable.

m_bExpandResources

Set to 1 to expand resource groups to resources in Resource, Resource tag, Originally created by and CC comments to columns.

m_bOnlyFirstResource

Set to 1 to only show first resource in Resource, Resource tag, Originally created by and CC comments to columns.

m_bNeedFullProjectPath

Set to 1 to display full project path.

m_bNeedSprintInSubProjectPath

If set to 1 subproject path ends with the first encountered sprint.

m_bSeparateSubProjectPath

If set to 1 subproject path is displayed with description.

m_ForResource

Set to resource that this text will be displayed for.

See Also

TaskRefGetColumnText

HPMCustomColumnInfo

Used to define a column.

struct HPMCustomColumnInfo {
     HPMInt32 m_ColumnType;
     HPMInt32 m_ColumnID;
} HPMCustomColumnInfo;

Members

m_ColumnType

Column identification type. Cane be one of EHPMColumnType.

m_ColumnID

If m_ColumnType is EHPMColumnType_DefaultColumn this value can be one of EHPMProjectDefaultColumn, otherwise if m_ColumnType is EHPMColumnType_CustomColumn it's the hash of the custom column. This together with m_ColumnType defines the order of the columns.

See Also

EHPMColumnType, HPMFindCriteriaDataHeader HPMReportSortGroupProperties

HPMFindCondition

Holds filter conditions in HPMFindContext.

struct HPMFindCondition {
     HPMInt32 m_SelectionType;
     HPMInt32 m_SelectionID;
     HPMColumn m_Column;
} HPMFindCondition;

Members

m_SelectionType

Can be one of EHPMFindSelectionType.

m_SelectionID

If m_SelctionType is EHPMFindSelectionType_Fixed this value can be one of EHPMFilterType, otherwise if m_SelctionType is EHPMFindSelectionType_Column it is the hash of the custom column.

m_Column

Column type.

HPMFindContextData

Used to store a compiled find context.

struct HPMFindContextData {
     HPMInt32 m_Dummy;
} HPMFindContextData;

Members

m_Dummy

Dummy variable. Not used

HPMFindContext

Find context used in UtilPrepareFindContext.

struct HPMFindContext {
     HPMUInt32 m_nConditions;
     const HPMFindCondition * m_pConditions;
     HPMUInt32 m_nMilestones;
     const HPMUniqueID * m_pMilestones;
     HPMUInt32 m_nPipelinesAndWorkflows;
     const HPMUniqueID * m_pPipelinesAndWorkflows;
     HPMInt32 m_bSeparateSubProjectPath;
} HPMFindContext;

Members

m_nConditions

Number of find conditions.

m_pConditions

Pointer to a list of find conditions. See HPMFindCondition.

m_nMilestones

The number of milestones that the find results should be tagged to.

m_pMilestones

Pointer to a list of unique identifiers pointing to the milestones that the find results should be tagged to.

m_nPipelinesAndWorkflows

The number of pipelines and workflows that the find results should be tagged to.

m_pPipelinesAndWorkflows

Pointer to a list of unique identifiers pointing to the pipelines and workflows that the find results should be tagged to.

m_bSeparateSubProjectPath

If set to 1 subproject path is included in find.

See Also

UtilPrepareFindContext

HPMWorkflowObjectIdentifier

Used to specify a workflow id together with an workflow object id to identify an workflow and a workflow object together.

struct HPMWorkflowObjectIdentifier {
     HPMUInt32 m_WorkflowID;
     HPMUInt32 m_WorkflowObjectID;
} HPMWorkflowObjectIdentifier;

Members

m_WorkflowID

The workflow identifier.

m_WorkflowObjectID

The workflow object identifier.

See Also

TaskGetCreatedFromWorkflowObject

HPMWorkflowStatusTransitInfo

Holds information about the last enter or exit from a workflow status.

struct HPMWorkflowStatusTransitInfo {
     HPMUniqueID m_ResourceID;
     HPMUInt64 m_Time;
} HPMWorkflowStatusTransitInfo;

Members

m_ResourceID

The unique identifier of the resource that last exited the status.

m_Time

The time when the status was last exited or entered. Expressed as the number of micro seconds since 1970 UTC.

See Also

TaskGetLastExitWorkflowStatus, TaskGetLastEnterWorkflowStatus

HPMFindCriteriaDataListItem

Used to define an item in a find criteria item list.

struct HPMFindCriteriaDataListItem {
     HPMInt32 m_ID;
     HPMUInt32 m_Data;
} HPMFindCriteriaDataListItem;

Members

m_ID

The ID for the item. The type of id is dependent on the column type set in HPMFindCriteriaDataHeader::m_ColumnID.

m_Data

Optional data field for the list item. Currently set to 0 for all types except when HPMFindCriteriaDataHeader::m_ColumnID is set to EHPMProjectDefaultColumn_PipelineAndWorkflow. It is then set to HPMProjectWorkflowObject::m_ObjectID;

See Also

HPMFindCriteriaTypeDroplist, HPMFindCriteriaTypeMultiSelectDroplist

HPMFindCriteriaData

Used to represent criteria data. Use the CriteriaDataEncode_* and CriteriaDataDecode_* to manipulate it.

struct HPMFindCriteriaData {
     HPMInt32 m_Dummy;
} HPMFindCriteriaData;

Members

m_Dummy

Dummy variable. Not used

See Also

HPMFindCriteria.

Comments

Use UtilGetFindCriteriaDataTypeFromData to determine which CriteriaDataDecode_* function to use.

HPMFindCriteriaConnection

Used to define a connection between find criteria.

struct HPMFindCriteriaConnection {
     HPMUInt32 m_ID;
     HPMInt32 m_ConnectFrom;
     HPMInt32 m_ConnectTo;
} HPMFindCriteriaConnection;

Members

m_ID

The unique identifier of the find criteria this find criteria is connected to.

m_ConnectFrom

The site on the start object that the connection is made from. See EHPMFindCriteriaConnectionSite.

m_ConnectTo

The site on the end object that the connection is made to. See EHPMFindCriteriaConnectionSite.

See Also

HPMFindCriteria.

HPMFindCriteria

Defines a find criteria.

struct HPMFindCriteria {
     HPMUInt32 m_ID;
     HPMInt32 m_PositionX;
     HPMInt32 m_PositionY;
     HPMInt32 m_Type;
     HPMUInt32 m_Flags;
     const HPMChar * m_CriteriaString;
     const HPMFindCriteriaData * m_pCriteriaData;
     HPMUInt32 m_nConnectedToCriterias;
     const HPMFindCriteriaConnection * m_pConnectedToCriterias;
} HPMFindCriteria;

Members

m_ID

The unique id of the find criteria.

m_PositionX

The X position this object is displayed on when editing the find criteria.

m_PositionY

The Y position this object is displayed on when editing the find criteria.

m_Type

Type of find criteria. See EHPMFindCriteriaType

m_Flags

Flags for find criteria options. See EHPMFindCriteriaFlag.

m_CriteriaString

The string that defines the criteria, e.g. Resources: "John Smith".

m_pCriteriaData

The criteria data. Use the CriteriaDataDecode_* and CriteriaDataEncode_* functions to manipulate this member.

m_nConnectedToCriterias

Number of find criteria this find criteria is connected to.

m_pConnectedToCriterias

Pointer to a list of find criteria for this find criteria is connected to. See HPMFindCriteriaConnection.

See Also

HPMFindCriteriaConnection, HPMFindCriteriaData, UtilGetFindCriteriaDataTypeFromData, UtilGetFindCriteriaDataTypeFromColumn

HPMFindCriteriaDataHeader

The header for the different criteria types.

struct HPMFindCriteriaDataHeader {
     HPMColumn m_Column;
     HPMInt32 m_Operator;
} HPMFindCriteriaDataHeader;

Members

m_Column

The column used in the find criteria.

m_Operator

The operator for the find criteria. Can be one of EHPMFindCriteriaOperator.

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaTypeText, HPMFindCriteriaTypeInteger, HPMFindCriteriaTypeFloat, HPMFindCriteriaTypeGeneralCondition, HPMFindCriteriaTypeDate, HPMFindCriteriaTypeDroplist, HPMFindCriteriaTypeMultiSelectDroplist, HPMFindCriteriaDataListItem

HPMFindCriteriaTypeText

Used if the find criteria is of a text type.

struct HPMFindCriteriaTypeText {
     HPMFindCriteriaDataHeader m_Header;
     const HPMChar * m_Text;
} HPMFindCriteriaTypeText;

Members

The find criteria data header.

m_Text

The text to use for the condition.

See Also

HPMFindCriteria, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeText, CriteriaDataDecode_HPMTaskFindCriteriaTypeText |

HPMFindCriteriaTypeInteger

Used if the find criteria is of an integer type.

struct HPMFindCriteriaTypeInteger {
     HPMFindCriteriaDataHeader m_Header;
     HPMInt64 m_Number;
     HPMInt64 m_ToNumber;
} HPMFindCriteriaTypeInteger;

Members

m_Header

The find criteria data header.

m_Number

The number to use in the condition.

m_ToNumber

The number to use as the end if the condition is a range. m_Number will be used as the starting point.

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeInteger, CriteriaDataDecode_HPMTaskFindCriteriaTypeInteger |

HPMFindCriteriaTypeFloat

Used if the find criteria is of a float type.

struct HPMFindCriteriaTypeFloat {
     HPMFindCriteriaDataHeader m_Header;
     HPMFP64 m_Number;
     HPMFP64 m_ToNumber;
} HPMFindCriteriaTypeFloat;

Members

m_Header

The find criteria data header.

m_Number

The number to use in the condition.

m_ToNumber

The number to use as the end if the condition is a range. m_Number will be used as the starting point.

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeFloat, CriteriaDataDecode_HPMTaskFindCriteriaTypeFloat

HPMFindCriteriaTypeGeneralCondition

Used if the find criteria is of a general condition type.

struct HPMFindCriteriaTypeGeneralCondition {
     HPMFindCriteriaDataHeader m_Header;
} HPMFindCriteriaTypeGeneralCondition;

Members

m_Header

The find criteria data header.

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeGeneralCondition, CriteriaDataDecode_HPMTaskFindCriteriaTypeGeneralCondition |

HPMFindCriteriaTypeDate

Used if the find criteria is of a date type.

struct HPMFindCriteriaTypeDate {
     HPMFindCriteriaDataHeader m_Header;
     HPMUInt64 m_Date;
     HPMUInt64 m_ToDate;
     HPMInt32 m_Range;
     const HPMChar * m_Text;
} HPMFindCriteriaTypeDate;

Members

m_Header

The find criteria data header.

m_Date

The date to use in the condition.

m_ToDate

The date to use as the end if the condition is a range. m_Date will be used as the starting point.

m_Range

If HPMFindCriteriaDataHeader::m_Operator is one of the operators containing a condition with X days, weeks, months or years, this will be set to the X number.

m_Text

If HPMFindCriteriaDataHeader::m_Operator is EHPMFindCriteriaOperator::_Contains this is set to the free text to use in the condition

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeDate, CriteriaDataDecode_HPMTaskFindCriteriaTypeDate |

HPMFindCriteriaTypeDroplist

Used if the find criteria is a of a droplist type

struct HPMFindCriteriaTypeDroplist {
     HPMFindCriteriaDataHeader m_Header;
     HPMUInt32 m_nListItems;
     const HPMFindCriteriaDataListItem * m_pListItems;
} HPMFindCriteriaTypeDroplist;

Members

m_Header

The find criteria data header.

m_nListItems

The number of list items.

m_pListItems

Pointer to a list of list items for this criteria. See HPMFindCriteriaDataListItem.

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeDroplist, CriteriaDataDecode_HPMTaskFindCriteriaTypeDroplist |

HPMFindCriteriaTypeMultiSelectDroplist

Used if the find criteria is of a multi select droplist type. The items together with the HPMFindCriteriaDataHeader::m_Operator sets the condition.

struct HPMFindCriteriaTypeMultiSelectDroplist {
     HPMFindCriteriaDataHeader m_Header;
     HPMUInt32 m_nListItems;
     const HPMFindCriteriaDataListItem * m_pListItems;
} HPMFindCriteriaTypeMultiSelectDroplist;

Members

m_Header

The find criteria data header.

m_nListItems

The number of list items.

m_pListItems

Pointer to a list of list items for this criteria. See HPMFindCriteriaDataListItem.

See Also

HPMFindCriteria, HPMFindCriteriaData, HPMFindCriteriaDataHeader, CriteriaDataEncode_HPMTaskFindCriteriaTypeMultiSelectDroplist, CriteriaDataDecode_HPMTaskFindCriteriaTypeMultiSelectDroplist

HPMReportEmailProperties

Defines email properties in HPMReport.

struct HPMReportEmailProperties {
     HPMInt32 m_PeriodicityType;
     HPMInt32 m_DayOfWeek;
     HPMInt32 m_HourOfDay;
     HPMResourceDefinitionList m_RecipientList;
} HPMReportEmailProperties;

Members

m_PeriodicityType

The periodicity of when to send project reports. Can be one of EHPMPeriodicityType.

m_DayOfWeek

The weekday to send the project report. 0 -> 6 = Mon -> Sunday. Only valid if HPMReportEmailProperties::m_PeriodicityType is set to EHPMPeriodicityType_Weekly.

m_HourOfDay

The number of half hours past midnight to send project reports. 0 -> 47 (number of half hours from midnight).

m_RecipientList

List of resources that will receive the email. See HPMResourceDefinitionList.

HPMReportSortGroupProperties

Defines sorting and grouping properties in HPMReport.

struct HPMReportSortGroupProperties {
     HPMColumn m_Column;
     HPMInt32 m_OrderType;
     HPMInt32 m_bDescending;
} HPMReportSortGroupProperties;

Members

m_Column

The column used for sorting.

m_OrderType

The order type of the sorting or grouping. Can be one of EHPMReportSortGroupOrderType.

m_bDescending

Set if the report should be sorted in descending order, otherwise it will be sorted in ascending order. Not used for grouping.

HPMReport

Used to define a report in HPMReports.

struct HPMReport {
     HPMUniqueID m_ReportID;
     HPMUInt64 m_ReportGUID;
     const HPMChar * m_pName;
     HPMUniqueID m_ProjectID;
     HPMUniqueID m_ResourceID;
     HPMUInt32 m_Flags;
     HPMUInt32 m_Icon;
     HPMUInt32 m_nColumnsShowing;
     const HPMColumn * m_pColumnsShowing;
     HPMUInt32 m_nColumnsOrdering;
     const HPMColumn * m_pColumnsOrdering;
     HPMReportEmailProperties m_EmailProperties;
     HPMResourceDefinitionList m_ShareResourceList;
     HPMUInt32 m_nSortColumns;
     const HPMReportSortGroupProperties * m_pSortColumns;
     HPMReportSortGroupProperties m_GroupByColumnMain;
     HPMReportSortGroupProperties m_GroupByColumnSub;
     HPMUInt32 m_nFindCriterias;
     const HPMFindCriteria * m_pFindCriterias;
} HPMReport;

Members

m_ReportID

The unique identifier of this report.

m_ReportGUID

A GUID that is unique across all resources and projects. Set to zero to generate a new GUID automatically when creating a new report.

m_pName

The name of the report.

m_ProjectID

The project this report was created in.

m_ResourceID

Resource ID of user that created report.

m_Flags

Flags for different view options. See EHPMReportFlag.

m_Icon

Icon for the reports. Can be one of EHPMListIcon.

m_nColumnsShowing

Number of columns showing for this report.

m_pColumnsShowing

Pointer to a list of columns showing for this report. See HPMColumn.

m_nColumnsOrdering

Number of columns in the order they should be shown for this report.

m_pColumnsOrdering

Pointer to a list of columns in the order they should be shown for this report. See HPMColumn.

m_EmailProperties

Email properties for this report. See HPMReportEmailProperties.

m_ShareResourceList

List of resources that this report is shared with. See HPMResourceDefinitionList.

m_nSortColumns

Number of sort columns.

m_pSortColumns

Pointer to a list of sort columns. See HPMReportSortGroupProperties.

m_GroupByColumnMain

The main column used for grouping. The column criteria data type has to be EHPMFindCriteriaDataType_List or EHPMFindCriteriaDataType_ConditionalList. See UtilGetFindCriteriaDataTypeFromColumn.

m_GroupByColumnSub

The sub column used for grouping. The column criteria data type has to be EHPMFindCriteriaDataType_List or EHPMFindCriteriaDataType_ConditionalList. See UtilGetFindCriteriaDataTypeFromColumn.

m_nFindCriterias

Number of find criterias for this report.

m_pFindCriterias

Pointer to a list of find criterias for this report. See HPMFindCriteria.

See Also

HPMReportEmailProperties, HPMResourceDefinitionList, HPMReportSortGroupProperties, HPMColumn, HPMFindCriteria

HPMReports

Used to define the reports for a project.

struct HPMReports {
     HPMUInt32 m_nReports;
     const HPMReport * m_pReports;
} HPMReports;

Members

m_nReports

The number of reports for this project.

m_pReports

Pointer to a list of reports for this project. See HPMReport.

See Also

HPMReport, ProjectGetReports, ProjectSetReports, GlobalGetReports, GlobalSetReports

HPMEnabledAction

Used to define enabled actions on a state.

struct HPMEnabledAction {
     HPMInt32 m_FunctionType;
} HPMEnabledAction;

Members

m_FunctionType

The enabled action. Can currently only be EHPMProjectDetailedAccessRuleFunctionType_DeleteTask.

See Also

HPMWorkflowProgressionState

HPMWorkflowProgressionState

Used for defining requirements to reach a workflow state.

struct HPMWorkflowProgressionState {
     HPMUInt32 m_StatusID;
     HPMUInt32 m_nRequiredFields;
     HPMTaskField const * m_pRequiredFields;
     HPMUInt32 m_TransitionFlags;
     HPMUInt32 m_nEnabledActions;
     HPMEnabledAction const * m_pEnabledActions;
} HPMWorkflowProgressionState;

Members

m_StatusID

The status ID of the state.

m_nRequiredFields

The number of required fields that need to be filled in to reach this state.

m_pRequiredFields

Pointer to a list of the required fields that need to be set to reach this state.

m_TransitionFlags

The transition flags required for progressing to this state. Can be EHPMProjectWorkflowObjectFlag_Transition_ResourcesCanEditAllFieldsThatMustBeSetForThisTransition or EHPMProjectWorkflowObjectFlag_WorkflowStatus_ActionsAreEnabledOnPreviousStatus.

m_nEnabledActions

The number of required fields that need to be filled in to reach this state.

m_pEnabledActions

Pointer to a list of the enabled actions on this state.

See Also

HPMProjectWorkflowStructure

HPMWorkflowProgressionStructure

Used for defining a workflow progression structure obtained from a workflow, status and resource.

struct HPMWorkflowProgressionStructure {
     HPMUInt32 m_nProgressionStates;
     const HPMWorkflowProgressionState * m_pProgressionStates;
} HPMWorkflowProgressionStructure;

Members

m_nProgressionStates

The number of reachable states the workflow progression structure.

m_pProgressionStates

Pointer to a list of states defining the workflow progression. See HPMWorkflowProgressionState.

See Also

HPMWorkflowProgressionState, ProjectUtilGetWorkflowProgression

HPMCommunicationChannelPacket

Used to store SDK named communication channel packets

struct HPMCommunicationChannelPacket {
     HPMUInt32 m_nBytes;
     const HPMUInt8 * m_pBytes;
     HPMUInt32 m_Flags;
} HPMCommunicationChannelPacket;

Members

m_nBytes

The number of bytes of data to send or receive.

m_pBytes

The data to send or receive.

m_Flags

Settings for the packet. Can be any combination of EHPMPacketFlag.

See Also

CommunicationChannelSendPacket, EHPMChangeCallbackOperation_CommunicationChannelPacketReceived

HPMTimesheetConfigRow

Definition of a non project time row for timesheets.

struct HPMTimesheetConfigRow