PwsFolder

Overview


This structure represents the fields associated with a document folder including a list of the folder contents. Documents represent physical document uploaded to Projector and links to externally housed documents. Documents are organized into folders according to the document type (workspace document, receipt, etc) and the particular Projector entity (project, expense document, etc.) that they are associated with.  It is usually included in response for PwsGetFolderContents

Format


PwsFolder
  • PwsFolder
    • FolderId: Int32
    • FolderUid: Int64
    • CreatedByUserIdentity: PwsUserRef
    • CreatedTimestamp: DateTime
    • DeletedByUserIdentity: PwsUserRef
    • DeletedTimestamp: DateTime
    • Documents: PwsDocument
    • FolderName: String
    • FolderTypeCode: String
    • ModifiedByUserIdentity: PwsUserRef
    • ModifiedTimestamp: DateTime
    • AttachmentNotes: PwsAttachmentNote
    • AssociatedEntityDescription: String
    • CanAddAssociationsFlag: Boolean
    • CanAddDocumentsFlag: Boolean
    • CanAddLinksFlag: Boolean
    • CanAddNotesFlag: Boolean
    • CanAddVersionsFlag: Boolean
    • CanDeleteDocumentsFlag: Boolean
    • CanSearchDocumentsFlag: Boolean
    • RequireDocumentDataFlag: Boolean
    • RequireUniqueFilenamesFlag: Boolean
    • UploadFolderIdentity: PwsFolderRef
    • AssociatedEntityDescription: String
    • CanDeleteDocumentsFlag: Boolean

Elements


Element

Data Type

Description

Sample Data

FolderId

Int32

The folder Id is a unique identifier for a folder. For internal use only.


FolderUid

Int64

The folder Uid is a unique and immutable identifier for a folder.

1152921504607349085

CreatedByUserIdentity

PwsUserRef

The user who created the folder.


CreatedTimestamp

DateTime

The date and time (in UTC format) this folder was created.

2018-03-16T16:07:37.2Z 

DeletedByUserIdentity

PwsUserRef

The user who deleted the folder.


DeletedTimestamp

DateTime

The date and time (in UTC format) this folder was deleted.


Documents

PwsDocument

The details of the document(s) within the folder.


FolderName

String

The folder name.

Expense report created 27 Feb 2018 - A

FolderTypeCode

String

The folder type code:

'ProjectWorkspaceFolder' for Project Workspace Folder. Project workspace documents are placed in a folder associated with the project.

'ResourceResumeFolder' for Resource Resume Folder. Resource resumes are placed in a folder associated with the resource.

'InvoiceFolder' for Invoice Folder. Invoices uploaded to the workspace are placed in an invoice folder associated with the Projector Invoice.

'ProjectIssueFolder' for Project Issue Folder. Attachments to a project issue are placed in a folder associated with the project issue.

'ExpenseReportFolder' for Expense Document Folder. Receipts attached to expense documents or cost cards are placed in a folder associated with the expense document (for cost card receipts, this is the expense document that contains the cost card).

'UserReceiptPoolFolder' for a User's Receipt Folder (see below)

'UserIssueAttachmentPoolFolder' for User's Issue Attachment Pool Folder (see below)

'PaymentVoucherFolder' for Payment Voucher Folder. Payment voucher attachments are placed in a folder associated with the payment voucher.

ExpenseReportFolder

ModifiedByUserIdentity

PwsUserRef

The user who last modified the folder.


ModifiedTimestamp

DateTime

The date and time (in UTC format) this folder was last modified.

2018-03-16T16:07:37.2Z

AttachmentNotes

PwsAttachmentNote

The receipt notes that are contained in this folder. Notes associated with uploaded receipts are returned along with the information about the receipt (in the Documents list). This list only contains receipt notes that do not have an accompanying receipt document.


AssociatedEntityDescriptionString

CanAddAssociationsFlag

Boolean

If set to 'true', the document folder allows for associations.

true

CanAddDocumentsFlag

Boolean

If set to 'true', documents can be added to the folder.

true 

CanAddLinksFlag

Boolean

If set to 'true', URL links can be added to the folder.

false

CanAddNotesFlag

Boolean

If set to 'true', notes can be added to the folder.

true 

CanAddVersionsFlag

Boolean

If set to 'true', document versions can be added to the folder.

false
CanDeleteDocumentsFlagBooleanIf set to 'true', document can be deleted from this folder.true

CanSearchDocumentsFlag

Boolean

If set to 'true', document searches can be executed within the folder.

false 

RequireDocumentDataFlag

Boolean

If set to 'true', this folder type required Document Data for each of the contained documents.

true 

RequireUniqueFilenamesFlag

Boolean

If set to 'true', file names within the folder must be unique

false 

UploadFolderIdentity

PwsFolderRef

For internal use.


AssociatedEntityDescriptionString

If folder type is:

  • Project Workspace Folder: project code
  • Resource Resume Folder: display name
  • Invoice Folder: invoice number/draft Invoice number)
  • Expense Report Folder: document number
  • Payment Voucher Folder: payment voucher number

CanDeleteDocumentsFlagBooleanIf set to 'true', document can be deleted from the folder.false

UserReceiptPoolFolder and UserIssueAttachmentPoolFolder

These folder types are used as bins for temporary storage of receipts or issue attachments respectively, so that they may, at a later point in time, be transferred from the pool folder to the expense document or project issue that they actually belong with. This allows these documents to be uploaded before the actual cost card, expense document or project issue are created (i.e. you can upload an issue attachment for an new issue that has not been saved to the database. As soon as the issue is saved, the attachment is moved from the user's issue attachment pool to the issue itself. You need not interact with these folder types as you will normally be able to create the expense document/cost card or project issue prior to uploading attachments.

Usage Example(s)


Example 01
            <a:Folder>
               <FolderId i:nil="true" xmlns="http://projectorpsa.com/DataContracts/Shared/Common/"/>
               <FolderUid xmlns="http://projectorpsa.com/DataContracts/Shared/Common/">1152921504607260531</FolderUid>
               <a:CreatedByUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
                  <b:UserDisplayName>PPSA Support User</b:UserDisplayName>
                  <b:UserId i:nil="true"/>
                  <b:UserReferenceSystemId>000</b:UserReferenceSystemId>
                  <b:UserUid>1152921504606944261</b:UserUid>
               </a:CreatedByUserIdentity>
               <a:CreatedTimestamp>2016-09-21T15:39:56.103Z</a:CreatedTimestamp>
               <a:DeletedByUserIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
               <a:DeletedTimestamp i:nil="true"/>
               <a:Documents>
                  <a:PwsDocument>
                     <DocumentRefId i:nil="true" xmlns="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                     <DocumentRefUid xmlns="http://projectorpsa.com/DataContracts/Shared/Common/">1152921504607439801</DocumentRefUid>
                     <a:CreatedByUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
                        <b:UserDisplayName>PPSA Support User</b:UserDisplayName>
                        <b:UserId i:nil="true"/>
                        <b:UserReferenceSystemId>000</b:UserReferenceSystemId>
                        <b:UserUid>1152921504606944261</b:UserUid>
                     </a:CreatedByUserIdentity>
                     <a:CreatedTimestamp>2016-09-21T15:42:05.347Z</a:CreatedTimestamp>
                     <a:CurrentVersion>
                        <DocumentVersionId i:nil="true" xmlns="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                        <DocumentVersionUid xmlns="http://projectorpsa.com/DataContracts/Shared/Common/">1152921504607432361</DocumentVersionUid>
                        <a:Comments i:nil="true"/>
                        <a:CreatedByUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
                           <b:UserDisplayName>PPSA Support User</b:UserDisplayName>
                           <b:UserId i:nil="true"/>
                           <b:UserReferenceSystemId>000</b:UserReferenceSystemId>
                           <b:UserUid>1152921504606944261</b:UserUid>
                        </a:CreatedByUserIdentity>
                        <a:CreatedTimestamp>2016-09-21T15:42:05.347Z</a:CreatedTimestamp>
                        <a:DocumentArchiveIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                        <a:VersionNumber>1</a:VersionNumber>
                     </a:CurrentVersion>
                     <a:DeletedByUserIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                     <a:DeletedTimestamp i:nil="true"/>
                     <a:DocumentName>INV00096.pdf</a:DocumentName>
                     <a:DocumentSize>51356</a:DocumentSize>
                     <a:DocumentUri i:nil="true"/>
                     <a:LockedByUserIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                     <a:LockedTimestamp i:nil="true"/>
                     <a:MimeType>application/pdf</a:MimeType>
                     <a:ModifiedByUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
                        <b:UserDisplayName>PPSA Support User</b:UserDisplayName>
                        <b:UserId i:nil="true"/>
                        <b:UserReferenceSystemId>000</b:UserReferenceSystemId>
                        <b:UserUid>1152921504606944261</b:UserUid>
                     </a:ModifiedByUserIdentity>
                     <a:ModifiedTimestamp>2016-09-21T15:42:05.347Z</a:ModifiedTimestamp>
                     <a:SupportPreviewFlag>true</a:SupportPreviewFlag>
                     <a:SupportThumbnailFlag>true</a:SupportThumbnailFlag>
                     <a:DocumentData>
                        <a:DataItems/>
                        <a:DocumentDataDetail>
                           <a:AssociatedItemIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
                              <b:ItemId i:nil="true"/>
                              <b:ItemType>I</b:ItemType>
                              <b:ItemUid>1152921504607528491</b:ItemUid>
                              <b:ReferenceType i:nil="true"/>
                           </a:AssociatedItemIdentity>
                           <a:Associations/>
                           <a:Notes i:nil="true"/>
                           <a:AssociatedItemDescription>DRAFT00120</a:AssociatedItemDescription>
                        </a:DocumentDataDetail>
                     </a:DocumentData>
                     <a:EditDeleteFlag>true</a:EditDeleteFlag>
                     <a:NumberPages>2</a:NumberPages>
                     <a:ArchiveIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                     <a:EditDeletePermissionFlag>true</a:EditDeletePermissionFlag>
                     <a:ReceiptLockedFlag>false</a:ReceiptLockedFlag>
                  </a:PwsDocument>
               </a:Documents>
               <a:FolderName>INV00096</a:FolderName>
               <a:FolderTypeCode>InvoiceFolder</a:FolderTypeCode>
               <a:ModifiedByUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
                  <b:UserDisplayName>PPSA Support User</b:UserDisplayName>
                  <b:UserId i:nil="true"/>
                  <b:UserReferenceSystemId>000</b:UserReferenceSystemId>
                  <b:UserUid>1152921504606944261</b:UserUid>
               </a:ModifiedByUserIdentity>
               <a:ModifiedTimestamp>2016-09-21T15:39:56.103Z</a:ModifiedTimestamp>
               <a:AttachmentNotes/>
               <a:CanAddAssociationsFlag>false</a:CanAddAssociationsFlag>
               <a:CanAddDocumentsFlag>true</a:CanAddDocumentsFlag>
               <a:CanAddLinksFlag>true</a:CanAddLinksFlag>
               <a:CanAddNotesFlag>false</a:CanAddNotesFlag>
               <a:CanAddVersionsFlag>true</a:CanAddVersionsFlag>
               <a:CanSearchDocumentsFlag>false</a:CanSearchDocumentsFlag>
               <a:RequireDocumentDataFlag>false</a:RequireDocumentDataFlag>
               <a:RequireUniqueFilenamesFlag>true</a:RequireUniqueFilenamesFlag>
               <a:UploadFolderIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
               <a:AssociatedEntityDescription>DRAFT00120</a:AssociatedEntityDescription>
               <a:CanDeleteDocumentsFlag>true</a:CanDeleteDocumentsFlag>
            </a:Folder>