0% found this document useful (0 votes)
31 views174 pages

Ariba Services Procurement Implementation Guide 9r2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views174 pages

Ariba Services Procurement Implementation Guide 9r2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Ariba®Services Procurement™

Implementation Guide

Release: 9r2
Document Version: 3
Release Date: May 2015
Copyright © 1996–2015 Ariba, Inc. All rights reserved.

This documentation, as well as the Ariba software and/or services described in it, contain proprietary information. They are provided under a license or other
agreement containing restrictions on use and disclosure and are also protected by copyright, patent and/or other intellectual property laws. Except as permitted
by such agreement, no part of the document may be reproduced or transmitted in any form by any means, electronic, mechanical or otherwise, without the
prior written permission of Ariba, Inc.

Ariba, Inc. assumes no responsibility or liability for any errors or inaccuracies that may appear in the documentation. The information contained in the
documentation is subject to change without notice.

Ariba, the Ariba logo, AribaLIVE, SupplyWatch, Ariba.com, Ariba.com Network and Ariba Spend Management. Find it. Get it. Keep it. and PO-Flip are
registered trademarks of Ariba, Inc. Ariba Procure-to-Pay, Ariba Buyer, Ariba eForms, Ariba PunchOut, Ariba Services Procurement, Ariba Travel and
Expense, Ariba Procure-to-Order, Ariba Procurement Content, Ariba Sourcing, Ariba Savings and Pipeline Tracking, Ariba Category Management, Ariba
Category Playbooks, Ariba StartSourcing, Ariba Spend Visibility, Ariba Analysis, Ariba Data Enrichment, Ariba Contract Management, Ariba Contract
Compliance, Ariba Electronic Signatures, Ariba StartContracts, Ariba Invoice Management, Ariba Payment Management, Ariba Working Capital
Management, Ariba Settlement, Ariba Supplier Information and Performance Management, Ariba Supplier Information Management, Ariba Discovery, Ariba
Invoice Automation, Ariba PO Automation, Ariba Express Content, Ariba Ready, and Ariba LIVE are trademarks or service marks of Ariba, Inc. All other
brand or product names may be trademarks or registered trademarks of their respective companies or organizations in the United States and/or other countries.

Ariba Sourcing solutions (On Demand and software) are protected by one or more of the following patents, including without limitation: U.S. Patent Nos.
6,199,050; 6,216,114; 6,223,167; 6,230,146; 6,230,147; 6,285,989; 6,408,283; 6,499,018; 6,564,192; 6,871,191; 6,952,682; 7,010,511; 7,072,061; 7,130,815;
7,146,331; 7,152,043;7,225,152; 7,277,878; 7,249,085; 7,283,979; 7,283,980; 7,296,001; 7,346,574; 7,383,206; 7,395,238; 7,401,035; 7,407,035; 7,444,299;
7,483,852; 7,499,876; 7,536,362; 7,558,746; 7,558,752; 7,571,137; 7,599,878; 7,634,439; 7,657,461; and 7,693,747. Patents pending.

Other Ariba product solutions are protected by one or more of the following patents:

U.S. Patent Nos. 6,199,050, 6,216,114, 6,223,167, 6,230,146, 6,230,147, 6,285,989, 6,408,283, 6,499,018, 6,564,192, 6,584,451, 6,606,603, 6,714,939,
6,871,191, 6,952,682, 7,010,511, 7,047,318, 7,072,061, 7,084,998; 7,117,165; 7,225,145; 7,324,936; and 7,536,362. Patents pending.

Certain Ariba products may include third party software or other intellectual property licensed from a third party. For information regarding software or other
intellectual property licensed from a third party, go to http://www.ariba.com/copyrights.cfm.
Revision History

The following table provides a brief history of the updates to this guide. Ariba updates the technical
documentation for its On-Premise solutions if
• software changes delivered in service packs or hot fixes require a documentation update to correctly
reflect the new or changed functionality;
• the existing content is incorrect or user feedback indicated that important content is missing.

Ariba reserves the right to update its technical documentation without prior notification. Most
documentation updates will be made available in the same week as the software service packs are released,
but critical documentation updates may be released at any time.

Version Month/Year of Updated Chapter/Section Short Description of Change


Update
1 June 2014 n/a GA version

2 August 2014 Category Definitions Moved the section, Auto-Calculations for Default
Category Fields from Appendix D Sample Files to
Chapter 4 Category Definitions. Added a note
regarding generic category drivers.

3 May 2015 Category Definitions Updated the content in the Auto-Calculations for
Default Category Fields section that describes bill
rate calculation. Changes include: correction to the
formula used when both markup amount and
percentage are specified, and slight modification to
the content describing this scenario to remove any
ambiguity.

Ariba Services Procurement Implementation Guide iii


Revision History

iv Ariba Services Procurement Implementation Guide


Table of Contents

Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii

Chapter 1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
About Ariba Services Procurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
How to Use This Document. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Category Drivers and Enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Time Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Expense Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Groups, Roles, and Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Chapter 2 Enabling Ariba Services Procurement . . . . . . . . . . . . . . . . . . . 17


Installing Ariba Services Procurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Required Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Site Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Approval Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Preparing Your Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Modifying Your CSV Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Loading Your Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Loading the Sample Category Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Chapter 3 Category Drivers and Enumerations . . . . . . . . . . . . . . . . . . . . 23


About Category Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Sample Category Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Custom Category Drivers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Policy Mapping Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
CategoryDriverPull Integration Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
CategoryDriverExport Integration Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Custom Category Drivers in Ariba Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Creating and Modifying Custom Category Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Deleting Custom Category Drivers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Enumerations in Ariba Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Viewing Enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Importing Enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Exporting Enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Deleting Enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Integration Events for ASCC Commodity Code Mappings. . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Ariba Services Procurement Implementation Guide v


Table of Contents

Chapter 4 Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35


About Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Collaborative Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Suppliers and Collaborative Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Category Item Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Sample Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Viewing Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Adding or Modifying Category Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Adding or Modifying a Category Item on the Items Tab . . . . . . . . . . . . . . . . . . . . . . . . . 39
Configuring Suppliers for Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Setting Category Item Defaults on the Items Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Deleting Category Items on the Items Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Validating Category Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Activating and Deactivating Category Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Activating a Category Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Deactivating a Category Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Importing and Exporting Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Importing a Category Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Exporting a Category Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Viewing Category Import Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Viewing Category Items. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Deleting Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Auto-Calculations for Default Category Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Bill Rate, Pay Rate, and Markup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Amount, Quantity, and Price. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Start Date, End Date, and Quantity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Calculation of Contractible Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Chapter 5 Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
About Collaboration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Collaboration Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Default Value Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Allow Supplier Changes During Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
All Items Required in Supplier Proposal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Use Permissions or Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Custom Invited Supplier Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Custom Invited Supplier Permission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Change Suppliers While Collaborating Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Change Suppliers While Collaborating Permission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
End Collaboration Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
End Collaboration Permission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Integration Events for Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
CollaborationReasonPull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
CollaborationReasonLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
CollaborationTypePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
CollaborationTypeLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
SupplierRankingPull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
SupplierRankingLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
ValueQualifierPull. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
ValueQualifierLanguagePull. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
BiddingTypePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
BiddingTypeLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

vi Ariba Services Procurement Implementation Guide


Table of Contents

Scheduled Tasks for Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61


CXMLProcessUndeliveredPayloads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
FailedCollaborationRequests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
RetryFailedCollaborationLaunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
StuckCollaborationRequests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Approval Rules for Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
JavaScript Requisition Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
JavaScript Requisition With Template Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Edit Rule Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Chapter 6 Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
About Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Creating Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Onboarding Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Working with Contractors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Managing Contractors in Ariba Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Contractor Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Restricting Contractor Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Contractor Password Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Contractor Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Contractor Creation Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Contractor Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Thresholds for Onsite and Sit Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Forecasting Consecutive Onsite Days. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Do Not Hire Contractors Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Calculations for Recurring Fee Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Co-Employment Risk Candidate Acceptance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Integration Events for Contractor Surveys. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
ContractorPerformanceThreePointValuePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
ContractorPerformanceThreePointValueLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . 73
ContractorPerformanceTenPointValuePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
ContractorPerformanceTenPointValueLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Scheduled Tasks for Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
ComputeConsecutiveOnSiteDays and RecomputeConsecutiveOnSiteDays . . . . . . . . . . 74
ProcessContractorCreation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
SendSurveyNotification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Approval Rules for Contractor Surveys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Chapter 7 Time Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77


About Time Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Creating Time Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Invoices for Time Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Time Sheet Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Time Sheet Entry Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Labor Law Compliance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Start and End Days for the Work Week . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Pay Code Compliance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Time Sheet Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Unapproved Time Sheet Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Bill Rate Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Time Sheet Hour Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Ariba Services Procurement Implementation Guide vii


Table of Contents

Integration Events for Time Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80


LaborPayCodePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
LaborPayCodeLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
LaborPayCodeMapPull. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Scheduled Tasks for Time Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
DeferredTimeSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
FailedTimeSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
StuckTimeSheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
CreateInvoicesForTimeSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
CXMLProcessUndeliveredPayloads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Approval Rules for Time Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
CreateInvoicesForTimeSheet Task Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Time and Expense Sheet Invoice Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Time Sheet Import Sample. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Chapter 8 Expense Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87


About Expense Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Creating Expense Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Creating Invoices for Expense Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Integration Events for Expense Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
ContractorExpenseTypePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
ContractorExpenseTypeLanguagePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
ProcureLineTypePull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Scheduled Tasks for Expense Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Approval Rules for Expense Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

Chapter 9 Administration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Ariba Administrator Workspaces and Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Log Message Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Common Administration Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Managing Generated Subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Managing Contractors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Chapter 10 Common Metadata XML Customizations . . . . . . . . . . . . . . . 97


Preserving User-Entered Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Adding File Attachment Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Auto-Calculating Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Adding a Property as a Requisition Header Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Controlling Visibility and Editability in the Category . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Enforcing Validation on a Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Filtering Suppliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Customizing Over-Acceptance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Hiding Field Links from Suppliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Creating Field Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Defining a Collaboration Team . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Customizing Orders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Customizing the Labor Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Updating Copied Temporary Labor Items on Requisitions . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Customizing Requisition Numbering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Customizing the List of Invited Suppliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

viii Ariba Services Procurement Implementation Guide


Table of Contents

Appendix A Groups, Roles, and Permissions . . . . . . . . . . . . . . . . . . . . . 107


Required Permissions for Ariba Services Procurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
AddCustomInvitedSupplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
CategoryManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
CategoryCatalogTypeImpactReport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
CategoryDefinitionManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
ChangeSuppliersWhileCollaborating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
ContractorExpenseSheetManager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
ContractorSurveyManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
CreateCategory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
CreateContractorExpenseSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
CreateContractorSurvey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
CreateRequisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
CreateTimeSheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
EditCategory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
EndCollaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
GeneratedCatalogSubscription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Internal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
SupplierChangePO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
SupplierInvoice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
SupplierReceive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
TimeSheetManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
ViewContractorSurvey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
WorkforceManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Default Roles for Ariba Services Procurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Add Custom Invited Supplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Category Definition Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Category Definition Template Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Category Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Category Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Change Suppliers While Collaborating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Collaboration Super User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Contractor Expense Sheet Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Contractor Survey Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Create Contractor Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Create Contractor Expense Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Create Time Sheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
End Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Internal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Supplier Collaboration User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Supplier Manage Order User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Time Sheet Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
View Contractor Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Workforce Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

Ariba Services Procurement Implementation Guide ix


Table of Contents

Default Groups for Ariba Services Procurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114


Add Custom Invited Supplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Category Definition Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Category Definition Template Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Category Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Change Suppliers While Collaborating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Contractor Survey Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Collaboration Super User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Contractor Expense Sheet Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Create Contractor Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Create Contractor Expense Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Create Time Sheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
End Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Internal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Supplier Collaboration User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Supplier Manage Order User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Time Sheet Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
View Contractor Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Workforce Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

Appendix B Email Notification Messages Reference . . . . . . . . . . . . . . . 117


About Email Notification Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Notification of Collaboration Request Routing Failure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Notification of Collaboration Request Declined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Notification of Collaboration Proposal Submitted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Notification of Collaboration Proposal Withdrawn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Notification of Collaboration Message Sent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Notification of Canceled Collaboration Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Notification of Contractor Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Appendix C Scheduled Tasks Reference . . . . . . . . . . . . . . . . . . . . . . . . 123


About Scheduled Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Global Scheduled Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
UpdateReactivatedCategoryData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Partitioned Scheduled Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
ComputeConsecutiveOnSiteDays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
CreateInvoicesForTimeSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
CXMLProcessUndeliveredPayloads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
DeferredTimeSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
FailedCollaborationRequests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
FailedTimeSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
LoadLaborComplianceRules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
ProcessContractorCreation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
RecomputeConsecutiveOnSiteDays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
RetryFailedCollaborationLaunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
SendSurveyNotification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
StuckCollaborationRequests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
StuckTimeSheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

Appendix D Sample Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

x Ariba Services Procurement Implementation Guide


Table of Contents

Sample File Locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133


Labor Category Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Consulting Category Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Print Category Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Market Research Category Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Generic Category Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
How to Load the Sample Category Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
How to Load the Sample Category Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Sample Category Definition Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Service Category Header Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Suppliers Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Mapped Supplier Ranking Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Item Properties Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Item Attributes Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Item Editability and Visibility Worksheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Mapped Properties Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

Appendix E Metadata XML Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 153


Object Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Classes for Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Classes for Time Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Classes for Expense Sheets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Classes for Categories. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Classes for Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Category Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Collaboration Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Partial Acceptance Action. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Routing Failure Notification Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Time and Expense Sheet Processing Action. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Display Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Behavior Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

Appendix F Ariba Services Procurement API. . . . . . . . . . . . . . . . . . . . . 163


Contractor Creation Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
ContractorCreationProcess Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Specifying a Custom Engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Processing Contractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Contractor Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Matching a Candidate to a Contractor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Managing Contractor Time Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Specifying a Custom Engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Labor Compliance Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Ariba Services Procurement Implementation Guide xi


Table of Contents

xii Ariba Services Procurement Implementation Guide


Chapter 1 Introduction

• “About Ariba Services Procurement” on page 13


• “How to Use This Document” on page 14
• “Reference Information” on page 16

About Ariba Services Procurement


Ariba Services Procurement provides a powerful tool for creating and managing groups of catalog items.
You can specify the default values, permissions, policies, and other settings so that when users select a
partial catalog item, they can only enter values that adhere to predefined constraints. Additionally, you can
enable collaboration so that the buyer and supplier can work together on defining the details of the item,
such as the contractor name and pay rate.

Ariba Services Procurement is a module of Ariba Buyer that lets users:


• Use procurement categories to control the policies for specific types of line items.
• Create collaborative requisitions, which allow users to work with suppliers on the Ariba Supplier Network
(Ariba SN) to define the details of a particular line item, such as temporary labor.
• When collaborating with suppliers, set the transparency (openness) of the collaboration process by
selectively exposing information on a supplier’s proposal to the supplier’s competitors.
• Set up temporary workers as contractors in the system, so that they have special permission for working in
Ariba Buyer.
• When working with contractors, manage issues such as contractor time tracking and hiring candidates
who are known to be unacceptable, and track performance.
• Enable time sheets, which contractors fill out to track hours worked and which can be converted to
invoices automatically.
• Enable expense sheets, which contractors fill out to submit expense line items for reimbursement and
which can be converted to invoices automatically.

This document does not describe basic user interaction. For information on working with Ariba Services
Procurement from a user’s perspective, see the Ariba Buyer Procurement User Guide.

Ariba Services Procurement Implementation Guide 13


How to Use This Document Chapter 1 Introduction

How to Use This Document


This document assumes you are already familiar with the configuration and data loading processes described
in the Ariba Buyer Configuration Guide and the Ariba Buyer Data Load Guide.

This document describes how to set up the integration events, configuration settings, and optional features
used in Ariba Services Procurement. Configuring Ariba Services Procurement involves the following major
components:
• Category drivers and enumerations
• Category definitions
• Collaboration
• Contractors
• Time sheets
• Expense sheets
• Groups, roles, and permissions

This section describes where to find information on each of these major components.

Category Drivers and Enumerations


Each category definition is based on a specific category driver, which provides a template of the properties
you can set for the category. Enumerations are the value associated with the policy mapping fields identified
in a category driver. Ariba Services Procurement includes sample category drivers and enumerations.

You can create custom category drivers manually in Ariba Administrator, or by creating a category driver
CSV file and running an integration event. You import enumerations from an Excel file.

For information, see Chapter 3, “Category Drivers and Enumerations.”

Category Definitions
You use category definitions to control the fields and behavior of specific types of line items. For example,
you can specify the maximum hourly wage for an administrative assistant in each region. When hiring
managers add an administrative assistant line item to a requisition, they can only specify an hourly wage up
to that limit. The category definition also specifies extra fields to display for that line item.

You can create definitions manually in Ariba Administrator, or by importing category definitions from an
Excel file.

For information, see Chapter 4, “Category Definitions.”

14 Ariba Services Procurement Implementation Guide


Chapter 1 Introduction How to Use This Document

Collaboration
When you create a category definition, you can configure items to require collaboration with a supplier to
define the details of the item before an order can be placed. Collaboration can be configured for any item
controlled by a category definition.

Setting up collaboration includes running integration events to define the options for the Collaboration
property in the Category Definition Manager workspace in Ariba Administrator, define rankings that can be
assigned to suppliers in a category, and define contractible properties on the requisition and collaboration
requests.

For information, see Chapter 5, “Collaboration.”

Contractors
A contractor is a person who provides temporary labor to a company. The hiring organization is the company
that hires the contractor, typically through a supplier that specializes in providing temporary labor resources.

You can modify configuration parameters to tailor the behavior of contractor-related features, such as
thresholds for onsite and sit days. You can also run integration events to define ranking information for
evaluating a contractor’s performance.

For information, see Chapter 6, “Contractors.”

Time Sheets
Time sheets are provided in the default configuration as a means for receiving items from Labor categories.
You can modify configuration parameters to tailor the behavior of time sheets, such as how to route time
sheets that have been approved. You can also run integration events to define pay codes, and map external
payment codes to internal payment codes.

For information, see Chapter 7, “Time Sheets.”

Expense Sheets
Contractor expense sheets, which apply to collaborative requisitions for the temporary labor category, allow
a contractor to submit expense line items for out-of-pocket expenses. You must run an integration event to
define the contractor expense types in your configuration.

For information, see Chapter 8, “Expense Sheets.”

Groups, Roles, and Permissions


Ariba Services Procurement includes sample configuration files that define a typical set of roles and groups
for Ariba Services Procurement. You do not have to use the sample roles or groups, but you must make sure
that at least one user has each of the required permissions.

For information, see Appendix A, “Groups, Roles, and Permissions.”

Ariba Services Procurement Implementation Guide 15


Reference Information Chapter 1 Introduction

Reference Information
When setting up Ariba Services Procurement, you will need to refer to the following documents:
• The Data Dictionary, which is a Microsoft Excel workbook that contains descriptions of integration
events and comma-separated value (CSV) file columns.
• The Parametersdoc, which is an HTML document that contains descriptions of the
config/Parameters.table parameters.

• The Javadoc (API documentation)

These documents are available on the administration documentation page on Help@Ariba. You can also
download the Data Dictionary from Ariba Administrator.

16 Ariba Services Procurement Implementation Guide


Chapter 2 Enabling Ariba Services Procurement

• “Installing Ariba Services Procurement” on page 17


• “Required Applications” on page 17
• “Preparing Your Data” on page 19
• “Loading Your Data” on page 20
• “Loading the Sample Category Drivers” on page 22

Installing Ariba Services Procurement


You install Ariba Services Procurement from the Ariba Buyer installation program by selecting the Ariba
Services Procurement module. The installation process copies all required files and sets appropriate default
values for parameters and configuration settings. However, the module is only partially enabled with sample
data. To fully enable Ariba Services Procurement, you must load your own data and run appropriate data
import tasks and scheduled tasks.

If you are upgrading from a previous version of Ariba Buyer, be sure to follow the instructions in the Ariba
Buyer Migration Guide for upgrading your existing version of Ariba Buyer before you install Ariba Services
Procurement.

Required Applications
Ariba Services Procurement has dependencies on the following applications:
• Ariba Contract Compliance must be installed in the same configuration as Ariba Services Procurement.
For information on implementing Ariba Contract Compliance, see the Ariba Contract Compliance
Administration Guide.
• If you plan to convert time sheets to invoices, Ariba Invoice must be installed in the same configuration as
Ariba Services Procurement. For information on implementing Ariba Invoice, see the Ariba Invoice
Implementation Guide.
• Ariba Supplier Network must be configured to enable collaborative requisitioning and to be integrated
with Ariba Invoice and Ariba Buyer. For information, see the Ariba Spend Management Integration
Guide.

Ariba Services Procurement Implementation Guide 17


Installing Ariba Services Procurement Chapter 2 Enabling Ariba Services Procurement

Site Profile
After installing Ariba Services Procurement, make sure Ariba Services Procurement is enabled in the site
profile.

 To enable Ariba Services Procurement in the site profile:


1 In Ariba Administrator, choose Server Manager > Site Profile.

2 In the FEATURES section, select Ariba Services Procurement.

Note: Ariba Contract Compliance must be installed in the same configuration as Ariba Services
Procurement. If you plan to convert time sheets to invoices, Ariba Invoice must be installed in the same
configuration as Ariba Services Procurement.

3 Click OK to enable Ariba Services Procurement.

Note: Do not disable Ariba Services Procurement in the site profile after implementing Ariba Services
Procurement.

Approval Rules
The default approval rules for Ariba Services Procurement are loaded during installation. The
template-based approval rules are enabled by default. For information on the default approval rules, see:
• “Approval Rules for Collaboration” on page 62
• “Approval Rules for Contractor Surveys” on page 75
• “Approval Rules for Time Sheets” on page 83
• “Approval Rules for Expense Sheets” on page 89

18 Ariba Services Procurement Implementation Guide


Chapter 2 Enabling Ariba Services Procurement Preparing Your Data

Preparing Your Data


Before you run the integration events that load your data, you must be sure that the data in the data sources is
correct.

If you are installing Ariba Services Procurement as a new installation, you can do either of the following:
• Enable Ariba Services Procurement with the sample data, to see the default configuration, and then later
update to your own data.
• Update all CSV files to define your own data, and then load your custom data.

If you are installing Ariba Services Procurement as a new installation, the default groups, roles, and
permissions for Ariba Services Procurement are loaded during installation. If you are migrating from a
previous version, new groups, roles and permissions are not loaded because of potential naming conflicts.
For more information, see the Ariba Buyer Migration Guide.

Modifying Your CSV Files


The following steps provide guidance on modifying your CSV files. Which CSV files you modify depends
on whether you decide to use the sample data or load your custom data from the beginning. If you are
installing Ariba Services Procurement after you have already installed Ariba Buyer and initialized the
database, you do need to add some data manually.

 To modify your CSV files:


1 Before running the ASCCToUNSPSCClassificationCodeMapPull integration event, you must edit the sample
data contained in the following file:
config/variants/Plain/partitions/None/data/ASCCToUNSPSCClassificationCodeMap.csv

This file defines a mapping from Ariba Services Classification Codes (ASCC) to United Nations Standard
Products and Services Code (UNSPSC), and you must edit the mapping to be sure that the target
UNSPSC codes exist in your configuration. For more information, see “Integration Events for ASCC
Commodity Code Mappings” on page 32.
2 If you want to prevent contractors from creating requisitions and other approvable documents, edit the
appropriate entries in ApprovableType.csv. For information on modifying ApprovableType.csv, see the
Ariba Buyer Configuration Guide.

Ariba Services Procurement Implementation Guide 19


Loading Your Data Chapter 2 Enabling Ariba Services Procurement

Loading Your Data


This section describes how to load your Ariba Services Procurement data. It assumes that you have updated
your CSV files, as described in the previous section.

For information on loading Ariba Contract Compliance data, see the Ariba Contract Compliance
Administration Guide. For information on loading Ariba Invoice data, see the Ariba Invoice Implementation
Guide.

 To fully enable Ariba Services Procurement:


1 Update your mapping files and run appropriate integration events to assign Ariba Services Procurement
groups, roles, and permissions to users. You may need to run some or all of these integration events:

Integration Event Name Display Name


GroupRoleMapPull Import Group/Role Relationships

GroupPermissionMapPull Import Group Permission Map

RolePermissionMapPull Import Role Permission Map

GroupSharedUserMapPull Import Group/User Relationships

SharedUserRoleMapPull Import User/Role Relationships

SharedUserPermissionMapPull Import User Permissions

For information on these integration events, see the Ariba Spend Management Data Load Guide. For
descriptions of the Ariba Services Procurement groups, roles, and permissions, see Appendix A, “Groups,
Roles, and Permissions.”
2 In partition None, run the following integration events, in this order:

Where to Find
Integration Event Name Display Name Information
ASCCCommodityCodePull Import ASCC Commodity Codes Page 32

ASCCCommodityCodeParentPull Import ASCC Commodity Code Parent Page 32


Relationships

ASCCToUNSPSCClassificationCodeMapPull Import ASCC to UNSPSC Classification Page 32


Code Relationships

3 In partition None, run the following integration events, any order:

Where to Find
Integration Event Name Display Name Information
CollaborationTypePull Import Collaboration Types Page 59

ContractorExpenseTypePull Import Contractor Expense Types Page 88

LaborPayCodePull Import Labor Pay Codes Page 80

20 Ariba Services Procurement Implementation Guide


Chapter 2 Enabling Ariba Services Procurement Loading Your Data

Where to Find
Integration Event Name Display Name Information
SimpleMapTypePull Import Simple Map Type Ariba Spend
Management
Channels Guide

SupplierRankingPull Import Supplier Rankings Page 60

ValueQualifierPull Import Value Qualifiers Page 60

BiddingTypePull Import Bidding Types Page 61

ContractorPerformanceThreePointValuePull Import Contractor Performance Three Point Page 72


Values

ContractorPerformanceTenPointValuePull Import Contractor Performance Ten Point Page 73


Values

If you have a multilingual configuration, run the associated language integration events to load
translations:

Where to Find
Integration Event Name Display Name Information
CollaborationTypeLanguagePull Import Collaboration Type Page 60
Translations

ContractorExpenseTypeLanguagePull Import Contractor Expense Type Page 88


Translations

SupplierRankingLanguagePull Import Supplier Ranking Translations Page 60

ValueQualifierLanguagePull Import Value Qualifier Translations Page 60

BiddingTypeLanguagePull Import Bidding Type Translations Page 61

ContractorPerformanceThreePointValueLanguagePull Import Contractor Performance Three Page 73


Point Value Translations

ContractorPerformanceTenPointValueLanguagePull Import Contractor Performance Ten Page 73


Point Value Translations

4 Run the integration event ClassificationCodeDomainMetaPull (display name “Import Classification Code
Domain Metadata”). For information on this integration event, see the Ariba Spend Management Data
Load Guide.

Important: Do not run this integration event until you have successfully run the ASCCCommodityCode*
integration events in the previous step.

Ariba Services Procurement Implementation Guide 21


Loading the Sample Category Drivers Chapter 2 Enabling Ariba Services Procurement

5 Run the following integration events, in any order, in the partition(s) where their corresponding CSV files
are located, first modifying the CSV files as needed for your configuration:

Where to Find
Integration Event Name Display Name Information
ApprovableTypePull Import Approvable Types Ariba Buyer
Configuration Guide

CommodityExportMapPull Import ERP Commodity to Commodity Mapping Ariba Buyer Data Load
Guide

CollaborationReasonPull Import Collaboration Reasons Page 59

LaborPayCodeMapPull Import Labor Pay Code Relationships Page 81

ReportQueryPull Import Report Queries Ariba Buyer


Configuration Guide

ReportMetaPull Import Report Metadata Ariba Buyer


Configuration Guide

ProcureLineTypePull Import Procurement Line Types Ariba Invoice


Implementation Guide

If you have a multilingual configuration, run the associated language integration events to load
translations:

Integration Event Name Display Name Where to Find


Information
CollaborationReasonLanguagePull Import Collaboration Reason Translations Page 59

LaborPayCodeLanguagePull Import Labor Pay Code Translations Page 81

Loading the Sample Category Drivers


Ariba Services Procurement includes a set of sample category drivers. To load the sample category driver
files, run the CategoryDriverPull integration event (display name “Import Category Drivers”). For
information on the sample category driver files, see Appendix D, “Sample Files.”

Important: If you do not load the sample category drivers, the base categories are not loaded and you cannot
create new custom category drivers.

22 Ariba Services Procurement Implementation Guide


Chapter 3 Category Drivers and Enumerations

• “About Category Drivers” on page 23


• “Custom Category Drivers” on page 24
• “CategoryDriverPull Integration Event” on page 26
• “Custom Category Drivers in Ariba Administrator” on page 27
• “Enumerations in Ariba Administrator” on page 30
• “Integration Events for ASCC Commodity Code Mappings” on page 32

About Category Drivers


A category driver defines a template for a category definition. It encapsulates the header-level and item-level
properties that can be set for a category type. For example, the properties for the PrintStock category include
color schemes and pricing.

When you create a category definition, you must associate it with a category driver. For example, when you
create a new category definition in Ariba Administrator, you select a category driver from the Header
Category pull-down menu:

For more information on creating category definitions, see Chapter 4, “Category Definitions.”

Sample Category Drivers


Ariba Services Procurement includes a set of sample category drivers, such as DemoLabor and
DemoConsulting. Many of the sample category definition files use these sample category drivers. To load
the sample category driver files, run the CategoryDriverPull integration event (display name “Import
Category Drivers”). For information on the sample category driver files, see Appendix D, “Sample Files.”

Important: The base categories are loaded when you load the sample category driver files. If you do not load
the sample category drivers, you cannot create new custom category drivers.

Ariba Services Procurement Implementation Guide 23


Custom Category Drivers Chapter 3 Category Drivers and Enumerations

Custom Category Drivers


You can create a custom a category driver by:
• Creating a category driver file and running the CategoryDriverPull integration event (display name
“Import Category Drivers”). For more information, see “CategoryDriverPull Integration Event” on
page 26.
• Using the Category Drivers task in the Category Definition Manager workspace in Ariba Administrator.
For more information, see “Custom Category Drivers in Ariba Administrator” on page 27.

Creating a custom category driver enables you to create templates for category definitions and then develop
categories using those templates.

Policy Mapping Fields


When you create a custom category driver, either in a category driver file or by using the Category Drivers
task in Ariba Administrator, you can define policy mapping fields. A policy mapping field is a String “pick
list” field (pull-down menu) whose value can be used to drive policy limits or defaults for item fields.

For example, the following screen shows the policy mapping fields defined for the sample category driver
AdminLabor.

When creating a custom category driver, you only identify policy mapping fields. You perform the actual
policy mapping when you create a category definition that uses your custom category driver. For example,
suppose you have a policy mapping field called Region. You could map a policy of Not to Exceed $200 for
the item field Bill Rate when the value of Region is New York.

For information on mapping policy values, see “Adding or Modifying a Category Item on the Items Tab” on
page 39.

24 Ariba Services Procurement Implementation Guide


Chapter 3 Category Drivers and Enumerations Custom Category Drivers

Enumerations
Enumerations are the values associated with a policy mapping field. For example, the values for the policy
mapping field called Region could include city names such as New York, Boston, and Chicago.

You define enumerations in an enumerations file. which is an Excel workbook that includes internal, display,
and translated values for enumerations. You import enumerations files by using the Enumerations task in the
Category Definition Manager workspace in Ariba Administrator. For information on using the Enumerations
task, see “Enumerations in Ariba Administrator” on page 30.

The example in the previous section showed the policy mapping fields defined for the sample category driver
AdminLabor. The following example shows the enumerations defined for those policy mapping fields in the
sample enumerations file LaborEnumerations.xls.

The Enumerations worksheet includes the following columns:


• Enumeration—The value specified in the enumerationName property in the category driver file for the policy
mapping field. For more information, see “CategoryDriverPull Integration Event” on page 26.
• Display Value—The value shown in the user interface (unless there is a translation for the user locale).
• Value—The internal value.

The Translations worksheet is optional. It includes the following additional columns:


• Locale—The locale of the translation.
• Translation—The localized string for the value shown in the user interface.

Ariba Services Procurement Implementation Guide 25


CategoryDriverPull Integration Event Chapter 3 Category Drivers and Enumerations

CategoryDriverPull Integration Event


The CategoryDriverPull integration event (display name “Import Category Drivers”) creates category drivers
by loading a category driver file. Writing a category driver file requires expertise with metadata XML. For
information on writing metadata XML, see the Ariba Spend Management Customization Guide.

The following category driver file defines the sample category driver AdminLabor.

"UTF-8"
UniqueName,BaseDriver,Contents
"AdminLabor","Labor","
<inClass name=""category.Labor.MappableProperties"">
<field name=""cus_Region""
flexField=""true""
templates=""ExternalField,PickListField"">
<type class=""java.lang.String""/>
<properties label=""Region""
enumerationName=""Region""
enumerationDomain=""category""/>
</field>
<field name=""cus_SkillLevel""
flexField=""true""
templates=""ExternalField,PickListField"">
<type class=""java.lang.String""/>
<properties label=""Skill Level""
enumerationName=""SkillLevel""
enumerationDomain=""category""/>
</field>
<field name=""cus_ExperienceLevel""
flexField=""true""
templates=""ExternalField,PickListField"">
<type class=""java.lang.String""/>
<properties label=""Experience Level""
enumerationName=""ExperienceLevel""
enumerationDomain=""category""/>
</field>
</inClass>
"

• The label property specifies the display name of a policy mapping field, such as “Skill Level.” For more
information, see “Policy Mapping Fields” on page 24.
• The enumerationName property specifies the internal name of a policy mapping field. You specify this
name in the enumerations file when defining values for the field.
• The enumerationDomain property is always set to category.

CategoryDriverExport Integration Event


You can use the CategoryDriverExport integration event (display name “Export Category Drivers”) to export
a category driver file to your computer.

26 Ariba Services Procurement Implementation Guide


Chapter 3 Category Drivers and Enumerations Custom Category Drivers in Ariba Administrator

Custom Category Drivers in Ariba Administrator


You can create, modify, and delete custom category drivers only by using the Category Drivers task in the
Category Definition Manager workspace in Ariba Administrator.

Creating and Modifying Custom Category Drivers


When you modify a custom category driver, your changes immediately affect the category definition and any
new items added to a requisition. The category definition does not require revalidation or reactivation after
the custom category driver has been modified.

 To create or modify a custom category driver:


1 In Ariba Administrator, choose Category Definition Manager > Category Drivers and click Create New to create
a new custom category driver, or select the custom category driver you want to modify and choose Edit
from the Actions pull-down menu.

Note: To create a new custom category driver by copying an existing custom category driver, choose Copy
from the Actions pull-down menu.

2 On the General tab, enter or modify the following information:

Field Description
Category A unique name for the custom category driver. The maximum length is 18 characters.

You cannot modify this field in edit mode.

Base Category The base category for the custom category driver. Choose one of the following base
categories, depending on the type of category you want to create:
• Generic—A basic category with a minimum set of required properties that are generic
across all categories (such as collaboration type and line type). Used in conjunction
with custom fields, it serves as a starting point for creating custom categories.
• Consulting—Designed for use with line items for consulting projects. Such line items
could include resources like a project manager and business analyst, milestones for
different phases of the project, expenses, and fees.
• Labor—Designed for use with line items for hiring contractors.
• MarketResarch—Designed to control line items pertaining to a market research project.
Such line items could include resources, such as a research manager and research
analyst, and milestones, such as the research preparation phase and the data analysis
phase.
• PrintCustom—Designed to control line items for custom printed materials.
• PrintStock—Designed to control line items for stock printed materials. Such line items
could include paper and envelopes with the corporate logo.

You cannot modify this field in edit mode.

Description A description for the custom category driver.

Hide Calculate Button The Calculate button updates fields based on values already entered. If you do not require
such updates, select Yes to hide the Calculate button.

Rate Field Specifies the field that will be used to set the unit price for the category. The Total Amount
is calculated based on the unit price.

Ariba Services Procurement Implementation Guide 27


Custom Category Drivers in Ariba Administrator Chapter 3 Category Drivers and Enumerations

3 If you are creating a new custom category driver, click OK to save the object to the database before adding
item fields.
4 On the Item Fields tab, click Create Field to create a new normal field or a computed item field, or click
Edit to modify an existing item field. Item fields are fields whose values are not used to drive the policies
of other fields.

• On the General tab, enter general information, such as the field label and data type.
• On the Conditions tab, you can configure visibility, editability, and validity conditions for the field.
• On the Advanced tab, you can specify advanced options, such as whether the screen should be
refreshed whenever the field changes.
For information about a particular field or option on any tab, click the information icon next to the field or
option.
Computed fields are values calculated from performing functions on normal fields. An example would be
a line item total amount that is calculated by multiplying the line item quantity times the line item amount.

28 Ariba Services Procurement Implementation Guide


Chapter 3 Category Drivers and Enumerations Custom Category Drivers in Ariba Administrator

When creating a computed field, an expression has to be specified that defines the functions to be
performed on the other fields to compute the value of the computed field.

For general information on how to create computed or derived fields and using the expression language,
see the Ariba Spend Management Customization Guide.

Important: Required fields are validated, even when they are not visible to users. When you create a
required field, you must configure that field to be visible and editable. If you do not, validation errors
might occur when a user tries to submit an approvable document that includes items that use the category
driver. For information on configuring visibility and editability, see “Adding or Modifying a Category
Item on the Items Tab” on page 39.

5 Click OK to save your changes, or Cancel to return to the previous screen without saving your changes.

6 On the Item Fields Layout tab, specify the Edit, Print, and Details layouts for your item fields.

Note: “Unsafe” fields (fields that can be seen but cannot be modified) are identified by the padlock icon.

7 On the Policy Mapping Fields tab, click Create Field to create a new policy mapping field, or click Edit to
modify an existing policy mapping field. For more information, see “Policy Mapping Fields” on page 24.
• On the General tab, enter general information, such as the policy mapping field label and data type.
You can specify a resource key (for example, @aml.Print/MPColorsLabel) for the field label in the aml
file. For more information on aml files, see “Sample File Locations” on page 133.
• On the Conditions tab, you can configure visibility, editability, and validity conditions for the policy
mapping field.
• On the Advanced tab, you can specify advanced options, such as whether the screen should be
refreshed whenever the policy mapping field changes.
For information about a particular field or option on any tab, click the information icon next to the field or
option.
8 Consulting, MarketResearch, or Generic base categories only: On the Shared Header Fields tab, click
Create Field to create a new shared header field, or click Edit to modify an existing shared header field. A
shared header field is a header-level field that is shared by all line items.

Ariba Services Procurement Implementation Guide 29


Enumerations in Ariba Administrator Chapter 3 Category Drivers and Enumerations

• On the General tab, enter general information, such as the field label and data type for the shared
header field.
• On the Conditions tab, you can configure visibility, editability, and validity conditions for the shared
header field.
• On the Advanced tab, you can specify advanced options, such as whether the shared header field
should be available as a search filter.
For information about a particular field or option on any tab, click the information icon next to the field or
option.
9 Click OK to save your changes, or Cancel to return to the previous screen without saving your changes.

10 On the Policy Mappings Fields Layout tab, specify the Edit, Print, and Details layouts for your policy
mapping fields.
11 Click Save to save your changes, or Cancel to return to the previous screen without saving your changes.

Visibility Considerations for New Fields


When you create a new item field or policy mapping field in a category driver, the field appears for all items
that use that particular driver by default. If you want to hide a new field, you must edit the category
definition and set the visibility and editability permissions to false for each item.

For information on setting visibility and editability permissions for category items, see “Adding or
Modifying a Category Item on the Items Tab” on page 39.

Deleting Custom Category Drivers


You should only delete custom category drivers that are not used by any category definitions, or that are
never used by requisitions or purchase orders.

 To delete a custom category driver:


1 In Ariba Administrator, choose Category Definition Manager > Category Drivers, select the category driver
you want to delete, and click Delete.
2 Click OK to delete the category driver, or Cancel to return to the previous page without deleting the
category driver.

Enumerations in Ariba Administrator


This section describes how to manage enumerations by using the Enumerations task in the Category
Definition Manager workspace in Ariba Administrator.

30 Ariba Services Procurement Implementation Guide


Chapter 3 Category Drivers and Enumerations Enumerations in Ariba Administrator

Viewing Enumerations
 To view enumerations:
1 In Ariba Administrator, choose Category Definition Manager > Enumerations and click List All to display all
enumerations, or enter search criteria and then click Search or press the Enter key.

The following table describes the columns on the Enumerations page.

Column Description
Enumeration The name of a policy mapping field.

Values The choices for the policy mapping field.

Importing Enumerations
 To import enumerations:
1 Create an Excel file containing the enumerations you want to import. For information on the file format,
see “Enumerations” on page 25.
2 In Ariba Administrator, choose Category Definition Manager > Enumerations and click Import.

3 Enter the location of the Excel file, or click Browse to browse to and select the file.
4 Click OK to import the enumerations, or Cancel to return to the previous screen without importing the
enumerations.

Exporting Enumerations
 To export enumerations:
1 In Ariba Administrator, choose Category Definition Manager > Enumerations.

2 To export a specific set of enumerations, click the name in the Enumeration column and choose Export
from the pull-down menu.
3 To export all enumerations, click either Export in Excel Format or Export in CSV Format.

Ariba Services Procurement Implementation Guide 31


Integration Events for ASCC Commodity Code Mappings Chapter 3 Category Drivers and Enumerations

Deleting Enumerations
Take extreme care when deleting enumerations. Enumerations might be referenced by fields in transactional
data such as requisitions, contracts, invoices, and orders. You typically should not delete enumerations after
Ariba Services Procurement has been implemented.

 To delete enumerations:
1 In Ariba Administrator, choose Category Definition Manager > Enumerations.

2 Click the name in the Enumeration column and choose Delete from the pull-down menu.

Integration Events for ASCC Commodity Code Mappings


To make catalog items using your new category driver visible in the catalog, you add one or more entries to
the catalog hierarchy. Each label in the catalog hierarchy is associated with a commodity code, and the items
using that code are the items the user sees in that leaf of the catalog hierarchy. The catalog hierarchy usually
maps to a UNSPSC code, but for procurement categories, you can use the classification code domain ascc
(Ariba Services Classification Codes).

Entries in this domain are mapped to the unspsc classification domain with the
ASCCToUNSPSCClassificationCodeMapPull integration event (display name “Import ASCC to UNSPSC
Classification Code Relationships”). The additional domain allows you to have items with different ASCC
codes that map to the same UNSPSC code, allowing you to put items with the same UNSPSC code at
different locations in the catalog hierarchy. For example, in the default categories, Market Research project
managers and Consulting project managers appear at different locations in the catalog hierarchy but have the
same UNSPSC code.

 To add an entry to the ascc domain:


1 Define a new code (or hierarchy of codes) in the ascc domain, by extending the following file:
config/variants/Plain/partitions/None/data/ASCCCommodityCode.csv

For example:
Cp1252
"Domain","UniqueName","Name","ParentUniqueName","Enabled"
"ascc","10","Temporary Staffing",,
"ascc","1010","IT Staff","10",
"ascc","101001","Software Developers","1010",
"ascc","101002","Database Administrators","1010",
"ascc","101003","Network Specialists","1010",
"ascc","101004","Airplane Expense","1010",

2 For any new codes you have created, add mappings to the UNSPSC domain by editing the following file:
config/variants/Plain/partitions/None/data/ASCCToUNSPSCClassificationCodeMap.csv

For example:
DomainFrom,ValueFrom,DomainTo,ValueTo
"ascc","10","unspsc","80111801"
"ascc","1010","unspsc","80111801"
"ascc","101001","unspsc","80111608"
"ascc","101002","unspsc","80111609"
"ascc","101003","unspsc","80111610"
"ascc","101004","unspsc","80111600"

32 Ariba Services Procurement Implementation Guide


Chapter 3 Category Drivers and Enumerations Integration Events for ASCC Commodity Code Mappings

3 Run the ASCCCommodityCodePull integration event (display name “Import ASCC Commodity
Codes”).
4 Run the ASCCCommodityCodeParentPull integration event (display name “Import ASCC Commodity
Code Parent Relationships”).
5 Run the ASCCToUNSPSCClassificationCodeMapPull integration event (display name “Import ASCC to
UNSPSC Classification Code Relationships”).
6 Use Ariba Administrator to edit the catalog hierarchy and add a mapping to your new classification code.

For general information on how to use and edit the catalog hierarchy, see the Ariba Buyer Catalog
Administration Guide.

Ariba Services Procurement Implementation Guide 33


Integration Events for ASCC Commodity Code Mappings Chapter 3 Category Drivers and Enumerations

34 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions

• “About Category Definitions” on page 35


• “Viewing Category Definitions” on page 37
• “Adding or Modifying Category Definitions” on page 38
• “Validating Category Definitions” on page 45
• “Activating and Deactivating Category Definition” on page 46
• “Importing and Exporting Category Definitions” on page 47
• “Viewing Category Import Logs” on page 48
• “Viewing Category Items” on page 49
• “Deleting Category Definitions” on page 50
• “Auto-Calculations for Default Category Fields” on page 50

About Category Definitions


You use category definitions to control the fields and behavior of specific types of line items. For example,
you can specify the maximum hourly wage for an administrative assistant in each region. When hiring
managers add an administrative assistant line item to a requisition, they can only specify an hourly wage up
to that limit. The category definition also specifies extra fields to display for that line item.

You manage category definitions in the Category Definition Manager in Ariba Administrator. You can create
category definitions manually in the user interface, or by loading category definitions from an Excel file.
Activating a category definition creates new catalog items, one for each item in the category definition.

Collaborative Items
When you create a category item, you can specify that the item is collaborative, which means that the
supplier and buyer work together to define the details of the item. For example, users might need to work
with suppliers on the details of a print job or to identify the exact candidate to hire. You can enable
collaboration for any item controlled by a category definition.

You can create collaborative and non-collaborative (direct) versions of the same category item. For example,
if you want to create a category item for a database administrator, but the requester will sometimes already
have a candidate identified and other times collaboration with a supplier will be required, you could create
two category items: one called “Database Administrator (Known Contractor)” and one called “Database
Administrator (Collaboration Required).” If the requester adds the first item to the cart, the item does not go
through collaboration, whereas the second item triggers the collaboration process. Alternatively, you could
create a single item with the Collaboration property set to Allowed, so that when creating the requisition, the
requester can decide whether the item should be collaborative or direct.

For more information on the collaboration process from an end-user’s perspective, see the Ariba Buyer
Procurement User Guide.

Ariba Services Procurement Implementation Guide 35


About Category Definitions Chapter 4 Category Definitions

Suppliers and Collaborative Items


When you create a category definition, you add the suppliers that can be used during collaboration on items
in that category. You can specify this setting for the supplier in general, or you can specify different settings
for this supplier based on different mappable attributes.

When adding a supplier, the ranking you give it determines whether collaboration requests can be sent to the
supplier when an item in the category is added to a requisition. Additionally, you can specify whether you
want to allow the supplier only for category items for which an item-level or commodity-level contract is
available or for any category item on the requisition.

You can also specify whether the requisitioner and any user with edit capability can add “custom-invited”
suppliers to the invited supplier list.

Suppliers used during collaboration must be registered on Ariba SN. In addition, the customer’s Ariba SN
account must be configured for collaborative requisitioning. For more information, see the Ariba Network
Buyer Administration Guide.

Category Item Properties


When you create a category item, you can specify which properties to display to users as well as which
properties can be edited. You can also specify permissions or groups to control which users can see or edit
the properties. For example, you could specify that the Overtime Exempt property is not visible, and that Pay
Rate is only editable by users who are members of the Purchasing Agent group.

Whether you can specify permissions or groups to control the visibility and editability of category item
properties is determined by the Application.CategoryProcurement.UsePermissions parameter. When this
parameter is set to true (the default setting), you can specify permissions. For more information, see “Use
Permissions or Groups” on page 56.

The available properties vary by category type. Additionally, some properties are not designed to be visible
on the requisition, so setting their editability and visibility has no effect. The names and purposes of the
collaboration properties are standard across all category types.

Sample Category Definitions


Ariba Services Procurement incudes a set of sample category definitions. For information on the sample files
and how to load them, see “Sample File Locations” on page 133.

36 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Viewing Category Definitions

Viewing Category Definitions


 To view category definitions:
1 In Ariba Administrator, choose Category Definition Manager > Category Definitions and click List All to
display all category definitions, or enter search criteria and then click Search or press the Enter key.

The following table describes the columns on the Category Definitions page.

Column Description
Name The name of the category definition. The name cannot be longer than 50 characters.

Status The status of the category definition, which can be one the following:
• New
• Editing
• Validating
• Validating Catalog
• Validated
• Validation Failed
• Activating
• Activated
• Activation Failed
• Reverting
• Subscription Load Failed
• Deactivated

Category ID The category ID.

Live Specifies whether the category definition is currently active.

Ariba Services Procurement Implementation Guide 37


Adding or Modifying Category Definitions Chapter 4 Category Definitions

2 To view the properties, items, suppliers, and history for a category definition, click the category definition
name.

Adding or Modifying Category Definitions


This section describes how to add or modify category definitions manually by entering values on pages in
the Category Definitions task. You can also add or modify a category definition by importing it from an
Excel file. For information, see “Importing and Exporting Category Definitions” on page 47.

Note: The items on a requisition are re-verified against the category definition during submission, so if you
edit a category definition when a requisition is in Composing status, the items might change when the user
tries to submit the requisition. Also, when a user copies an existing approved requisition to create a new one,
the items might be different on the copy if the category definition was edited since the original requisition
was approved.

 To add or modify a category definition:


1 In Ariba Administrator, choose Category Definition Manager > Category Definitions and click Create New to
add a category definition, or select the category definition you want to modify and choose Edit from the
Actions pull-down menu.

2 On the General tab, enter or modify properties that will affect the entire category definition:

Field Description
Name The unique internal identifier of the category definition. The name cannot be longer
than 50 characters.

Header Category The category driver, which defines a template for a category definition. For
information on category drivers, see Chapter 3, “Category Drivers and
Enumerations.”

Published Item Supplier The supplier for all the items defined in the catalog that are controlled by this
category definition. For “supplier-less” items (that is, items that are not associated
with a specific supplier), the value is Unspecified.

Status The status of the category definition. When you are creating a new category
definition, this field displays New. When you are editing an existing category
definition, it displays Editing.

Category ID The category ID. When you are creating a new category definition, this field is
empty. When you are editing an existing category definition, it displays the category
ID. The category ID is assigned by Ariba Services Procurement when you save a
new category definition.

Live The activation status. When you are creating a new category definition, this field is
empty. When you are editing an active category definition, this field displays Yes.
When you are editing a category definition that has not yet been activated (or has
been deactivated), this field displays No.

Category Owners The users who can edit, validate, activate, and delete the category definition. Only
users specified here can perform these actions.

38 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Adding or Modifying Category Definitions

3 On the Items tab, you can:


• Add or modify items to this category definition. For information, see “Adding or Modifying a Category
Item on the Items Tab” on page 39.
• Set defaults for items in this category definition. For information, see “Setting Category Item Defaults
on the Items Tab” on page 44.
• Delete items in this category definition. For information, see “Deleting Category Items on the Items
Tab” on page 45.
4 On the Suppliers tab, you can define which suppliers are available for ordering and collaboration for
supplier-less items in this category definition. For information, see “Configuring Suppliers for
Collaboration” on page 43.
5 Click OK to save your changes, or Cancel to return the previous page without saving your changes.

Tip: You can revert your changes and restore an activated category definition by selecting the category
definition and clicking Revert.

Adding or Modifying a Category Item on the Items Tab


The following procedure describes how to add or modify a category item on the Items tab.

 To add or modify a category item:


1 To add a category item, click Add Item and select a category driver. To modify a category item, select the
item you want to modify and click Edit.
2 On the General tab, define or modify the properties for the category item.

Field Description
Item ID The Item ID for the category item. Ariba Services Procurement sets the item ID to 1000 or
to one greater than the highest existing ID of items in this category definition.

You cannot modify this field in edit mode.

Short Name The name of the category item.

Description The description of the category item.

Part ID The ID used to identify the item in the catalog. For supplier-less items, the system
generates a Part ID, otherwise this is the supplier part number.

Item Type The category item type. You cannot modify this field.

Locale The locale for the category item.


Auxiliary Part ID The auxiliary part number for the item in the catalog.

Commodity Code The commodity code for the category item.

Defined in Catalog This property is not supported in Version 9r2 and later. Do not modify this field. It has
been retained to support the migration of category items that used this property in previous
versions.

Unit of Measure The unit of measure for the item.

Ariba Services Procurement Implementation Guide 39


Adding or Modifying Category Definitions Chapter 4 Category Definitions

Field Description
Mapping Attributes Attributes that are common to all types of items in the category definition. Policy values
can be indexed by those attributes to provide different policy values for different attribute
values.

Ordering Attributes The valid ordering attributes for the item. The ordering attributes specify required values
for ordering the item. For example, if there is an ordering attribute Region, you could
specify the valid regions in which this item can be ordered.

Note: When adding the item to a requisition, the part number and auxiliary ID are internal reference
numbers unless the requester selects a supplier who has a contract for this item, in which case the
supplier’s part number and auxiliary ID are used.

3 On the Policies tab, you can specify or modify policy values for individual item properties. These values
can be combined with contract terms to enforce compliance at requisition time. Properties are organized
by type. To hide or show properties of a certain type, click the arrow.
The following table describes the available policy values.

This option ... Indicates ...


Not Specified A default value is not set. For Yes/No values, the default is No.

Specified A default value is set. The type of value you set for the property depends on the
property. For example, for some properties you set a Yes/No value. For others, you
select a value from a list, such as Required, Allowed, and Disallowed.

Specified by Attribute Different default values are set based on mappable attributes. For example, if you
have a Region attribute, you could set a different default for each region.

To specify this value, click define/edit in the Value column, and then set the values
for each mappable attribute in the category definition.

You define available mappable attributes when you create the category definition,
not when you create the category item.

Note: For non-qualified values, the policy value acts as a default value where the user can edit the value
and the requisition can be submitted successfully. For example, the policy for a Boolean can be Yes, but
the requisition can be submitted even if the value is No.

40 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Adding or Modifying Category Definitions

The following table describes the collaboration properties. There can be additional properties, depending
on the category type.

This property ... Specifies ...


Collaboration An item is collaborative. If enabled, collaboration requests are sent automatically
to the invited suppliers after the requisition is submitted and has been through
pre-collaboration approval.

Bidding Type The bidding type. which determines how suppliers see their own rankings in
respect to other suppliers. You can specify bidding types by attribute or by type.
The bidding types in the default configuration (from least to most visible) are:
• Closed - None of the bidding information fields are visible
• Open - Amount - The Lowest Amount and Price fields are visible
• Open - Amount, Rank - The Lowest Amount, Price, Proposal Rank, and
Supplier Rank fields are visible
• Open - Amount, Rank, Supplier - The Lowest Amount, Price, Lowest
Supplier, Proposal Rank, and Supplier Rank fields are visible

Note: A supplier can never see the name of another supplier who is the lowest
bidder.

You can also click New... to create a new bidding type.

Allow Partial Acceptance Whether buyers can accept some items on a proposal and reject others. If No, a
buyer must accept or reject an entire proposal.

Note: Setting this field to Yes does not mean buyers can partially accept a
quantity from one supplier and another quantity from another supplier for the
same item.

Supplier Can Add Items Suppliers can add line items to the proposal, which would then be added to the
requisition if the proposal is accepted. For example, in addition to the line item for
the contractor, the supplier could add a line item for a special fee.

Can Submit Multiple Proposals Suppliers can submit more than one proposal for the same collaboration request.
For example, a supplier with three good candidates for a collaboration request
could submit three proposals, one for each candidate.

Item Type The item type. You can specify item types by attribute or by type. The item types
in the default configuration are:
• Default
• Expense
• Fixed Fee
• Milestone

Ariba Services Procurement Implementation Guide 41


Adding or Modifying Category Definitions Chapter 4 Category Definitions

This property ... Specifies ...


Receiving Type The receiving type. You can specify receiving types by attribute or by type. The
receiving types in the default configuration are:
• Default
• By Count
• By Amount
• No Receipt
• System Received
• Auto Receiving
• PCard Auto Receiving
• Invoice Auto Receiving

For information on receiving types, see the Ariba Buyer Procurement


Implementation Guide.

Itemization Required? Whether itemization is required for milestone line items on non-collaborative
requisitions. If Yes, the preparer of the requisition must itemize the milestone. If
No, the preparer can choose whether to itemize.

For collaborative requisitions, the preparer does not itemize milestones. Instead, if
this field is both visible and editable, the preparer can choose whether supplier
must itemize the milestone on their collaboration proposals.

4 On the Permissions tab, you can set or modify visibility and editability values for individual properties
during requisition and collaboration time. Properties are organized by type, such as “General,”
“Collaboration,” and “Milestone.” There can be additional permission types, depending on the category
type.
To hide or show properties of a certain type, click the arrow.

In the Visibility Permissions table ...


For Allowed, specify whether you want the property visible and editable to users. If it set to No, the property
is not visible or editable. If it is set to Yes, the property is visible or editable only if users who are members of
the selected group or have a specific permission. If no group or permission is selected, all users are able to see
or edit that property.

If you clicked Yes to make the property visible, set groups or permissions to determine which users can see
the property. To specify groups or permissions, click select. If you specify multiple groups or permissions, a
user only needs to have one of the groups or permissions to be able to see the property. If you leave the groups
or permissions set to all, all users can see the property.

In the Editability Permissions table ...


Specify whether the properties can be edited, and set the groups or permissions to determine which users can
edit them.

Note: Whether you can specify permissions or groups to control the visibility and editability of category
item fields is determined by the Application.CategoryProcurement.UsePermissions parameter. When this
parameter is set to true (the default setting), you can specify permissions. If you change this setting, make
sure you update the Permissions tab to use the correct values. For more information on this parameter, see
“Use Permissions or Groups” on page 56.

5 Click OK to save your changes, or Cancel to return the previous page without saving your changes.

42 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Adding or Modifying Category Definitions

Configuring Suppliers for Collaboration


The following procedure describes how to use the Suppliers tab to control the suppliers that can be used for
collaborative items in a category definition.

 To configure suppliers for collaboration:


1 In the Category Mapping Attributes section, you can select a list of attributes that can be used in determining
supplier availability
2 In the Supplier Selection section:
• For Any Supplier, select Yes if you want to let the requisitioner and any user with edit capability to add
any supplier to the invited supplier list using the Add a new unranked supplier link in the user interface.
You can use the Application.CategoryProcurement.AddCustomInvitedSupplierGroup parameter to limit
the users that can add custom-invited suppliers to members of a specific group, or the
Application.CategoryProcurement.AddCustomInvitedPermission to limit the users that can add
custom-invited suppliers to users who have a specific permission. The default group Add Customer
Invited Supplier and the permission AddCustomInvitedSupplier are provided for this purpose.
• For Suppliers with Contract, select Yes if you want any supplier with a contract for the item to be added to
the invited supplier list according to the ranking you select in the Ranking with Contract chooser.
• For Ranking with Contract (which is only visible if Suppliers with Contract is Yes), select the ranking to
assign to contracted suppliers that are not defined in the category definition:

Select ... To ...


Optional Allow contracted suppliers to be added to the list of available suppliers.

Preferred Allow contracted suppliers to be selected. This setting is useful only when you have set
Any Supplier to No.

Required Make contracted suppliers required on the requisition.

Excluded Prevent contracted suppliers from being selected. Any contracted supplier not already
defined in the category definition is excluded from collaboration.

If Any Supplier is Yes, requisitioners can still add any supplier to the invited supplier
list using the Add a new unranked supplier link in the user interface.

3 In the Category-wide Suppliers section, you can define suppliers that are available for supplier-less items.
The suppliers specified here do not necessarily need to have an open contract to be available for selection.
• Click Add Supplier to add a supplier to the category item, or select a supplier to modify and click Edit.
• In the Ranking list, select the ranking to assign to the supplier, The ranking specified here overrides the
ranking specified in the Supplier Selection section.
• For Contracted Items Only, select whether you want to allow this supplier only for category items for
which an item-level or commodity-level contract is available (Yes) or for any category item on the
requisition (No). Supplier-level contracts are not included in the For Contracted Items Only option.
The Ranking and Contracted Items Only settings you specify for individual suppliers override the options
in the Supplier Selection section
• To delete a supplier from the category item, select the supplier and click Delete.

Ariba Services Procurement Implementation Guide 43


Adding or Modifying Category Definitions Chapter 4 Category Definitions

4 To specify different collaboration approval settings depending on a mappable attribute, do the following:
• In the attribute’s list, scroll to the value on which you want to base the approval setting, and then click
Yes in the Override column. For example, if there is a Region attribute, you could click Yes next to New
York City to allow you to specify different settings for this supplier when the region is New York City.
• In the Ranking list, specify the override collaboration approval setting for the supplier. Only the
Required, Excluded, and Optional rankings are available. Mapped supplier Preferred ranking defaulting
into the invited supplier list is currently not supported.
• In the Contracted Items Only column, specify the override contract requirement for the supplier.
• Repeat these steps for each mappable attribute you want to use to override the supplier collaboration
approval settings. For example, if there are three regions, you might set a different ranking for this
supplier in each of the three regions.
5 Click Save to save your changes, or Cancel to return to the previous screen without saving your changes.

Setting Category Item Defaults on the Items Tab


The following procedure describes how to set default values for category items on the Items tab. These
defaults are applied to any new category item created in the category definition that uses the same category
driver.

 To set defaults for a category item:


1 Click Item Defaults and select a category driver.

2 On the General tab, you can enter template values for new items that use the same category driver in this
category definition. These values are published in the catalog, or are linked to an existing catalog entry.
3 On the Policies tab, you can enter policy template values for new items that use the same category driver
in this category definition. These values can be combined with contract terms to enforce compliance at
requisition time. Policy values can be unspecified, set to a particular value or be specified by attribute.
Values specified by attribute have different values for each set of mapping attributes. Values defined here
apply to newly created items.
4 On the Permissions tab, you can enter template values for visibility and editability permissions or groups
for individual properties during requisition and collaboration time.

Note: Whether you can specify permissions or groups to control the visibility and editability of category
item fields is determined by the Application.CategoryProcurement.UsePermissions parameter. When this
parameter is set to true (the default setting), you can specify permissions. If you change this setting, make
sure you update the Permissions tab to use the correct values. For more information, see “Use Permissions
or Groups” on page 56.

For detailed information on entering information on the General, Policies, and Permissions tabs, see
“Adding or Modifying a Category Item on the Items Tab” on page 39.

44 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Validating Category Definitions

Deleting Category Items on the Items Tab


The following procedure describes how to delete category items on the Items tab.

 To delete a category item:


1 Select the category item you want to delete.

2 Click Delete.

Validating Category Definitions


You validate a category definition to ensure that its values and the catalog items it creates or controls are all
valid. After validating a category definition, you activate it to make it available in Ariba Services
Procurement.

 To validate a category definition:


1 In Ariba Administrator, choose Category Definition Manager > Category Definitions.

2 Select the category definition you want to validate and click Validate.

3 Click the category definition name and take an action based its status:
• If the status is Validated, activate the category definition to make it available in Ariba Services
Procurement.
• If the status is Validation Failed, view the category definition, click the History tab, and then click the
Validation Errors link to see a list of errors that were found in this file. Fix the errors, and then validate
again.

During validation, Ariba Services Procurement generates a warning for any non-qualified fields that have a
policy defined and are editable. For example:

In category <category> for the fields [<field>,<field>], the policy will act as an initial value
when the user is allowed to edit the field. Please refer to the logs for more details.

Ariba Services Procurement Implementation Guide 45


Activating and Deactivating Category Definition Chapter 4 Category Definitions

Activating and Deactivating Category Definition


This section describes how to activate and deactivate category definitions.

Activating a Category Definition


Activating a category definition makes it active in Ariba Services Procurement, so that it controls the
associated catalog items and displays its category items in the catalog. When you activate a new category
definition that defines catalog items, Ariba Services Procurement creates a new generated subscription to
track it.

 To activate a category definition:


1 Make sure the category definition has been validated. A validated category definition has the status
Validated. For more information, see “Validating Category Definitions” on page 45.
2 In Ariba Administrator, choose Category Definition Manager > Category Definitions.

3 Select the category definition you want to activate and click Activate.

4 Click OK to activate the category definition, or Cancel to return to the previous screen without activating
the category definition.

After a category definition has been activated, its status changed to Activated and Yes appears in the Live
column on the Category Definition page.

Deactivating a Category Definition


Deactivating a category deactivates both the category definition and its generated subscription. Existing
catalog items are no longer controlled by the category definition, and any catalog items defined in the
category definition is no longer available to users.

 To deactivate a category definition:


5 In Ariba Administrator, choose Category Definition Manager > Category Definitions.

6 Select the category definition you want to deactivate and click Deactivate.

7 Click OK to deactivate the category definition, or Cancel to return to the previous screen without
deactivating the category definition.

After a category definition has been deactivated, its status changes to Deactivated and No appears in the Live
column on the Category Definition page.

46 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Importing and Exporting Category Definitions

Importing and Exporting Category Definitions


This section describes how to maintain category definitions in an Excel workbook.

Importing a Category Definition


 To import a category definition:
1 Create an Excel workbook containing your category definition.
Each category type provided with Ariba Buyer includes sample category definitions that are defined in
category definition files. For best results, you should copy a sample category definition file from the
category type you want to use, rename it and enter the values for your new category definition. For more
information, see Appendix D, “Sample Files.”
2 In Ariba Administrator, choose Category Definition Manager > Category Definitions and click Import.

3 Enter the location of the Excel workbook, or click Browse to browse to and select the Excel workbook.

4 Click OK to import the category definition, or Cancel to return to the previous screen without importing the
category definition.
5 View the category import log to verify that the category definition imported without any errors or to
determine what errors occurred. For more information, see “Viewing Category Import Logs” on page 48.

After importing a category definition from an Excel workbook, the Category Definition Manger workspace
is updated with this category definition if it does not exist. If it already exists, the current category definition
version is overwritten by the data in the file. If you have made changes to a category definition in the user
interface that are not reflected in the Excel workbook, those changes will be lost. If you accidentally
overwrite a category definition that was previously activated, you can click Revert on the Category
Definitions page to restore the previously activated version of the category definition.

You can edit and maintain the category definition in the user interface or, if you want to keep the Excel
workbook as the source of truth, you should periodically export the category definition to the Excel
workbook so that the data in the Category Definition Manager workspace and the Excel workbook are
identical.

Note: Some values are rounded when displayed in Ariba Administrator, but the original value is still used. To
see the original unrounded value, look in the workbook you imported.

Exporting a Category Definition


 To export a category definition:
1 In Ariba Administrator, choose Category Definition Manager > Category Definitions.

2 Select the category definition you want to export and then choose Export from the Actions pull-down menu.

Note: When you export a category definition, the current version is exported. If the category is in the
Editing status, the Editing version is exported. To export the live version, the status of the category must
be Activated.

3 After the data has finished downloading, click Open to view the contents of the workbook or click Save to
save the workbook to your local hard drive.

Ariba Services Procurement Implementation Guide 47


Viewing Category Import Logs Chapter 4 Category Definitions

Worksheet Label Limitations


Excel limits worksheet labels to 31 characters. When you export a category definition to an Excel workbook,
the category driver name is used to create certain worksheet labels (for example, “DemoLabor Properties”).

If the category driver name causes a label to be longer than 31 characters, the label is truncated to 31
characters. Because exported worksheet labels contain characters in addition to the driver name, you must
limit the driver name to no more than 18 characters

Viewing Category Import Logs


When you import a category definition from an Excel file, a category import log is created that provides
information about the status of the import. You should view the import log to verify that the category
definition imported without any errors or to determine what errors occurred.

Note: Ariba Administrator cannot display category definition filenames that include non-alphanumeric
characters.

 To view category import logs:


1 In Ariba Administrator, choose Category Definition Manager > Category Import Logs and click List All to
display all logs, or enter search criteria and then click Search or press the Enter key.

2 To view details of a category import log, click an import tracker name in the LoadAdapterSource column.

3 To view information about the user who imported the file, click the username. To view the details of the
log’s category definition, click the category definition name.

48 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Viewing Category Items

Viewing Category Items


 To view category items:
1 In Ariba Administrator, choose Category Definition Manager > Category Items and click List All to display all
category items, or enter search criteria and then click Search or press the Enter key.

The following table describes the columns on the Category Items page.

Column Description
Category ID The category ID.

Category The name of the category definition.

Item ID The category item ID.

Short Name The user-visible name of the category item.

Part ID The part number of the category item.

Aux ID The auxiliary part number of the category item, if any.

Published Item Supplier The supplier for all category item. If the item is collaborative, the supplier is
Unspecified.

Defined in catalog Specifies whether a category item is linked to a catalog item imported from a
catalog.

2 To view the details of a category item, such as the properties and permissions, click an item ID.

3 To view the details of an item’s category definition, click the category definition name.

4 To view general information, items, and suppliers for an item’s category definition, click the category ID.

5 To view information about a supplier, click the supplier name.

Ariba Services Procurement Implementation Guide 49


Deleting Category Definitions Chapter 4 Category Definitions

Deleting Category Definitions


You must deactivate a category definition before you can delete it.

 To delete a category definition:


1 In Ariba Administrator, choose Category Definition Manager > Category Definitions, select the category
definition you want to delete, and then click Delete.
2 If you maintain the category definition in an external file, delete that file.

Auto-Calculations for Default Category Fields


There are several formulas used for auto-calculating fields in the default categories. This section describes
the three groupings of auto-calculated fields and their formulas.

Bill Rate, Pay Rate, and Markup


The Bill Rate is calculated by the following formula:

Bill Rate = Pay Rate + Markup Amount

or

Bill Rate = Pay Rate * Markup Percentage

If the Markup Amount/Percentage or Pay Rate changes, the Bill Rate value is recalculated and updated.

If a user changes the Bill Rate, the Pay Rate value is recalculated and updated. The Markup
Amount/Percentage, however, is not auto-calculated and, therefore, is not changed when the other fields
change—its value is set by the contract, category, or user.

If both Bill Rate and Pay Rate have been changed, Pay Rate might be re-calculated and updated when you
click the Calculate button.

Note that the markup can be a percentage, an amount, or both. If both percentage and amount are specified,
the Bill Rate is calculated using the following formula:

Bill Rate = (Pay Rate * (1 + Markup Percentage)) + Markup Amount

For example, if the Markup Percentage is specified as 10 percent and the Markup Amount is specified as $5,
and the Pay Rate is $100, the Bill Rate is calculated as (100 * (1 + 0.10)) + 5, which is $115.

For more information on the interaction of Bill Rate, Pay Rate, and Markup Amount/Percentage when their
values are specified in multiple places, see “Calculation of Contractible Properties” on page 51.

Note: If you set the visibility and editability of the Bill Rate, Pay Rate, and Markup Amount/Percentage so
users cannot edit these fields, be sure to set reasonable limits for the Markup Amount/Percentage and the
Bill Rate or Pay Rate in the category definition so that they will add up correctly.

50 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Auto-Calculations for Default Category Fields

Amount, Quantity, and Price


The Amount is calculated using the following formula:

Amount = Quantity * Price

If either the Quantity or Price is changed, the total dollar Amount on the line item is updated.

Start Date, End Date, and Quantity


The user must always specify the Start Date for a line item. If the user specifies Quantity, the End Date is not
auto-calculated. If the Start Date and End Date are entered, the Quantity is calculated, provided that the
Hours Per Week field is non-zero. If the user manually changes the Quantity field, auto-calculation is not
done because the user's values are assumed to be correct.

Calculating the Quantity


If the user specifies the Start Date and the End Date, the Quantity is auto-calculated using the following
formula:

Quantity = function (StartDate, EndDate, HoursPerWeek, UnitOfMeasure)

This formula calculates the quantity of labor hours for the line item. It uses the parameters
Application.Workforce.StartDayForWorkWeek and Application.Workforce.EndDayForWorkWeek to determine
the days in the work week and finally the total hours in the specified time period. If the work week is
specified so that weekend days are excluded, a line item with just two days, both of which are on the
weekend, would result in a Quantity of 0. The standard unit of measure should always be in hours or labor
hours.

If the requisitioner is in a different time zone from your company's Ariba server, the weekend days are based
on the server's time zone, so the quantity might be incorrect.

The requisitioner can adjust the quantity manually to compensate for differences in time zones or if the
contractor will work on weekends.

Calculation of Contractible Properties


This section describes how contractible properties are calculated, provides examples of how to set them
correctly, and explains the interaction of contracts, category definitions, and user-entered values.

About Policy Values


When you set values for contractible properties in the category, they are subject to change by the values you
set for the same properties in an item-level contract. Taking the category values and modifying them with the
item-level contract values (if any) results in the policy values. The policy values are used to populate the
fields on the requisition with default values, and when the user changes these fields, their new values are
validated against the policy values. If the user-entered values do not comply with the policy values, a
warning appears, and the user must change the values. Policy values do not overwrite user-entered values
except during collaboration, where supplier-specific contracts can cause different policy values to take effect
when individual collaboration requests are created. In that case, user-entered values that do not comply with
the new policy values will be overwritten.

Ariba Services Procurement Implementation Guide 51


Auto-Calculations for Default Category Fields Chapter 4 Category Definitions

Additionally, if the user clears the value entered in that field, the policy value repopulates the field.

Application of Contract Terms


Each field you specify in the contract directly impacts the corresponding field in the category. For example,
if you specify the Bill Rate in the category and in the contract, the contract Bill Rate replaces the category
Bill Rate.

Some categories allow this same behavior for item-level terms. For these categories, both the Pricing and
Discounts section and the Contractible Factors section appear on the Contract Request screen. The Pricing
and Discounts terms are applied to the user-entered or collaborated values and can derive a unit price based
on those values. For more information, see the ProcureCategoryUtil.isUnitPriceContractible method in
the Javadoc.

For example, in a contract request, you could specify the Ink Cost as Not to Exceed $500 in the Contractible
Factors section. Additionally, in the Pricing and Discounts section, you could specify formula pricing that
multiplies the Ink Cost by 4. In this case, the user is limited to entering a value of up to $500 for the Ink
Cost, but the Unit Price will be the value the user enters for the Ink Cost multiplied by 4.

Note: For a generic category driver the Unit Price is defaulted to a contractible, hence the contract will have
to define how the unit price will be set by the formula. If the formula is not set, there is no way for the
contract to set the Unit Price.

If a contract hierarchy has multiple discount settings for multiple levels (such as at the supplier level,
commodity level, and item level), the collaboration request shows a different rate for the Bill Rate and Unit
Price. The Bill Rate displays in the line item details and is calculated using only the item-level discount. The
Unit Price displays at the item summary level and is calculated using all the applied discounts.

Also, when there is a contract hierarchy, the auto-selection logic does not select the lowest prices. Instead, it
selects the price from the lowest-level contract, such as the item-level contract instead of the supplier
contract. The auto-selection feature must be enabled if you are using contracts and collaboration.

52 Ariba Services Procurement Implementation Guide


Chapter 4 Category Definitions Auto-Calculations for Default Category Fields

If a contract is closed during collaboration, resulting in any of the line items on a document in Composing
status being set to a higher price, a warning displays when the document is submitted.

Types of Contract Overrides


Depending on the field you use to specify the value on the contract, the contract values can adjust or replace
the category values:
• If the value is specified on the contract in the Adjustment Percent field, the contract value adjusts the
category value,
For example, if the category sets the Markup Amount to $20, and the contract sets the Markup Amount to
10 percent in the Adjustment Percent field, the category markup is reduced by 10 percent, so its value on
the requisition is $18 (20 - (20 * .10) = 18). Note that adjustment percents can be specified in tiers.
• If the value is specified on the contract in any of the other fields, the contract value replaces the category
value.
For example, if the category sets the Markup Amount to $20, and the contract sets the Markup Amount to
$5 in the Amount field, the markup value on the requisition is $5.

When you specify an adjustment or discount in a contract, and there is no corresponding value specified in
the category, the contract adjustment or discount is ignored. For example, if you specify a 10 percent
discount on the Pay Rate in the contract, but the category does not specify the Pay Rate, the discount is
ignored.

Adjustment Examples
This section provides examples of how the adjustments affect the calculations.

Bill Rate Adjustment


Assume that in the category definition, the Pay Rate is $100 and the Markup Amount is $10. If there is no
contract, the Bill Rate is calculated as $110. If there is a contract that defines a Bill Rate adjustment percent
of 15 percent, the Bill Rate is then adjusted to $93.50. The Pay Rate is also adjusted by subtracting the
Markup Amount from the adjusted contract Bill Rate (93.50-10.00), to equal $83.50.

If the Pay Rate is $100, and the Markup Percent in the category definition is 20 percent, the Bill Rate is
calculated as $120. If the contract defines the Bill Rate adjustment percent as 15 percent, the Bill Rate is
then adjusted to $102. The Pay Rate is calculated by dividing the adjusted Bill Rate by the category
definition markup percent (102/1.20) to equal $85

Markup Percent Adjustment


If the Pay Rate is $100, and the category definition specifies a Markup Percent of 10 percent, the markup is
calculated as $10. If the contract specifies an adjustment percent of 20 percent on the Markup Percent
property, the Markup Percent is reduced from 10 percent to 8 percent (10 percent is reduced by 20 percent to
8 percent), and the markup becomes $8 (100*.08). The Bill Rate is then calculated as $108 (100 + (100 *
.08) ).

Ariba Services Procurement Implementation Guide 53


Auto-Calculations for Default Category Fields Chapter 4 Category Definitions

Specifying Markup Consistently


If you specify the markup in the Markup Amount property in the category and the Markup Percent property
in the contract, both the amount and percentage are applied. This behavior occurs because they are different
properties, and a contract property can only adjust or replace the same property in the category.

For example, if the pay rate is $100, and the contract markup is 10 percent while the category markup is $5,
the Bill Rate field is calculated by applying the 10 percent contract markup to the pay rate ($110) and then
adding the $5 category markup ($115). If you intended for the contract markup to override the category
markup instead of using both, you must ensure that you use the same markup property in both places. You
can create a validity condition at the contract factor level to prevent the types from being mismatched or even
to require that both types are used if that is the desired behavior.

Typical Scenarios for Contractible Properties


Following are typical scenarios for setting contractible property values and visibility and the best practices
for each.

Scenario 1: Professional Contractor


For professional contractors, such as software engineers and IT consultants, specify a Not to Exceed value
for the Bill Rate in the category definition, and specify a Fixed or Not to Exceed value for the Markup
Amount or Markup Percent in an item-level contract for each supplier. You can also create a blanket Not to
Exceed value for the Markup Amount or Markup Percent in the category definition to handle suppliers with
whom there is no contract.

Set the visibility and editability of these properties as follows: for buyers, make the Bill Rate visible and
editable; for suppliers, make the Bill Rate, Markup Amount or Markup Percent, and Pay Rate visible and
editable. You can achieve this by specifying the External permission for the Markup Amount/Percent and
Pay Rate.

If you make both the Markup Amount and Markup Percent visible and editable, be sure there is a policy for
each, either in the category definition or contract or both. Otherwise, the supplier will be able to enter any
value. For example, if both fields are available, but the contract with a supplier only sets a policy for the
Markup Amount, the supplier can set any value for the Markup Percent unless there is a policy for it in the
category definition.

Scenario 2: Lower-Skilled Workers


For lower-skilled workers, such as receptionists and manual laborers, specify the Bill Rate in the category
and the contract. You don’t specify the Markup Amount or Markup Percent. Only make the Bill Rate visible;
leave the Pay Rate and Markup invisible. The Bill Rate should not be editable.

Attaching Contracts
Each time you submit or edit a collaborative requisition or collaboration request, the associated contracts are
attached or re-attached. Therefore, if you create a contract for a supplier during collaboration, a user might
see errors when accepting that supplier’s proposal. When the contract is attached to a collaborative item, it
changes the Pay Rate instead of the Bill Rate. On a non-collaborative requisition, the Bill Rate is changed if
the contract specifies a different Bill Rate; otherwise, the Pay Rate is changed.

54 Ariba Services Procurement Implementation Guide


Chapter 5 Collaboration

• “About Collaboration” on page 55


• “Collaboration Configuration” on page 56
• “Integration Events for Collaboration” on page 59
• “Scheduled Tasks for Collaboration” on page 61
• “Approval Rules for Collaboration” on page 62

About Collaboration
When you create a category definition, you can configure items to require collaboration with a supplier to
define the details of the item before an order can be placed. Collaboration can be configured for any item
controlled by a category definition.

When a user adds a collaborative item to a requisition, and submit the requisition during the collaboration
portion of the approval flow, a collaboration request is created for each invited supplier on that item, and
then sent to them on Ariba SN. A supplier views the collaboration request in their Inbox on Ariba SN,
reviews the details, and responds either by declining the request or by submitting a proposal, which contains
the details of how they will fill the request. For example, if the line item is for a contractor to work as a
temporary administrative assistant, the supplier’s proposal might contain the names of proposed candidates,
their resumes, and hourly rates.

After suppliers submit their proposals, users can review them on the Collaboration tab of the requisition in
Ariba Buyer. Users can further negotiate a proposal or send questions to the suppliers using the message
screen on the Collaboration tab. Suppliers can send messages back and respond with additional or amended
proposals.

For information on working with collaboration from a user’s perspective, see the Ariba Buyer Procurement
User Guide.

Ariba Services Procurement Implementation Guide 55


Collaboration Configuration Chapter 5 Collaboration

Collaboration Configuration
This section describes configuration settings you use to tailor the behavior of collaboration-related features.

Default Value Qualifier


The Application.CategoryProcurement.DefaultValueQualifier parameter specifies the default-value
qualifier used for re-collaboration of a change order. Valid values are:
• NotToExceed
• Fixed
• Negotiable

The default value is NotToExceed.

Allow Supplier Changes During Collaboration


The Application.CategoryProcurement.AllowChangeSuppliersWhileCollaborating parameter specifies
whether members of the collaboration team can add suppliers during collaboration. The default value is
false.

All Items Required in Supplier Proposal


The Application.CategoryProcurement.CollaboratingSuppliersMustIncludeAllItems parameter specifies
whether a supplier must submit a proposal for all items on a collaboration request. The default value is
false.

Use Permissions or Groups


The Application.CategoryProcurement.UsePermissions parameter specifies whether to use permissions or
groups to control the visibility and editability of category item properties.

When this parameter is set to true, you can use the following parameters to specify permissions:
• Application.CategoryProcurement.EndCollaborationPermission
• Application.CategoryProcurement.AddCustomInvitedSupplierPermission
• Application.CategoryProcurement.ChangeSuppliersWhileCollaboratingPermission

When this parameter is set to false, you can use the following parameters to specify groups:
• Application.CategoryProcurement.EndCollaborationGroup
• Application.CategoryProcurement.AddCustomInvitedSupplierGroup
• Application.CategoryProcurement.ChangeSuppliersWhileCollaboratingGroup

The default value is false in new installations. In migrated configurations, the default is true.

If this parameter is set to false and a valid group is not specified in one of the group-related parameters,
Ariba Buyer checks the equivalent permission-related parameter instead.

If you change this parameter, make sure you update the Item Permissions tab to use the correct values. For
more information, see “Adding or Modifying a Category Item on the Items Tab” on page 39.

56 Ariba Services Procurement Implementation Guide


Chapter 5 Collaboration Collaboration Configuration

Custom Invited Supplier Group


When the Any Supplier policy is set to Yes for a collaborative item, you can use the parameter
Application.CategoryProcurement.AddCustomInvitedSupplierGroup to limit the users that can add
custom-invited suppliers (suppliers that are not available from the invited supplier list) to members of a
specific group. The default group Add Customer Invited Supplier group is provided for this purpose.

For this parameter to take effect, the Application.CategoryProcurement.UsePermissions parameter must be


set to false.

If this parameter is not set, the Any Supplier policy alone determines whether users can add custom-invited
suppliers.

This parameter is not set in the default configuration, and it has no default value.

Custom Invited Supplier Permission


When the Any Supplier policy is set to Yes for a collaborative item, you can use the parameter
Application.CategoryProcurement.AddCustomInvitedSupplierPermission to limit the users that can add
custom-invited suppliers (suppliers that are not available from the invited supplier list) to users who have a
specific permission.

For this parameter to take effect, the Application.CategoryProcurement.UsePermissions parameter must be


set to true.

If this parameter is not set, the Any Supplier policy alone determines whether users can add custom-invited
suppliers.

This parameter is not set in the default configuration, and it has no default value.

Change Suppliers While Collaborating Group


When Application.CategoryProcurement.AllowChangeSuppliersWhileCollaborating is set to true, you can
use the Application.CategoryProcurement.ChangeSuppliersWhileCollaboratingGroup parameter to limit the
users that can change suppliers during collaboration to members of a specific group. The default group
Change Suppliers While Collaborating is provided for this purpose.

For this parameter to take effect, the Application.CategoryProcurement.UsePermissions parameter must be


set to false.

If this parameter is not set, anyone on the collaboration team and the requester can change suppliers during
collaboration.

This parameter is not set in the default configuration, and it has no default value.

Ariba Services Procurement Implementation Guide 57


Collaboration Configuration Chapter 5 Collaboration

Change Suppliers While Collaborating Permission


When Application.CategoryProcurement.AllowChangeSuppliersWhileCollaborating is set to true, you can
use the Application.CategoryProcurement.ChangeSuppliersWhileCollaboratingPermission parameter to
limit the users that can change suppliers during collaboration to users who have a specific permission. The
permission ChangeSuppliersWhileCollaborating is provided for this purpose.

For this parameter to take effect, the Application.CategoryProcurement.UsePermissions parameter must be


set to false.

If this parameter is not set, anyone on the collaboration team and the requester can change suppliers during
collaboration.

This parameter is not set in the default configuration, and it has no default value.

End Collaboration Group


The Application.CategoryProcurement.EndCollaborationGroup parameter specifies the group a user must
belong to in order to end a collaboration. The default group End Collaboration is provided for this purpose.

For this parameter to take effect, the Application.CategoryProcurement.UsePermissions parameter must be


set to false.

If this parameter is not set, anyone on the collaboration team and the requester can end a collaboration.

This parameter is not set in the default configuration, and it has no default value.

End Collaboration Permission


The Application.CategoryProcurement.EndCollaborationPermission parameter specifies the permission a
user must have in order to end a collaboration. The permission EndCollaboration is provided for this
purpose.

For this parameter to take effect, the Application.CategoryProcurement.UsePermissions parameter must be


set to true.

If this parameter is not set, anyone on the collaboration team and the requester can end a collaboration.

This parameter is not set in the default configuration, and it has no default value.

58 Ariba Services Procurement Implementation Guide


Chapter 5 Collaboration Integration Events for Collaboration

Integration Events for Collaboration


This section describes integration events that define collaboration-related data. For descriptions of the CSV
files read by these integration events, see the Data Dictionary.

Note: To make changes, you modify files in the config directory. You never modify the files in the ariba
directory.

CollaborationReasonPull
The CollaborationReasonPull integration event (display name “Import Collaboration Reasons”) defines the
reasons buyers and suppliers can give for various collaboration actions, such as rejecting, declining, and
canceling. In the default configuration, it reads data from the following file:

config\variants\variant\partitions\partition\data\CollaborationReasons.csv

Following is an example of CollaborationReasons.csv:

Cp1252
UniqueName,DisplayName,Type,ProcureCategoryDriver
AutoReject,Automatically rejected,AutoReject,All
AutoCancel,Automatically canceled,AutoCancel,All
ProposalOther,Other,RejectProposal,All
ProposalMoney,Proposal too expensive,RejectProposal,All
ProposalStructure,Proposal terms are not favorable,RejectProposal,All

You can customize this file and load the updated reasons into your configuration. You can also add, edit, and
delete reasons, with the exception of AutoReject and AutoCancel, which must remain in the file with their
UniqueName values unchanged.

This integration event is required during initialization of your configuration.

CollaborationReasonLanguagePull
You can use the CollaborationReasonLanguagePull integration event (display name “Import Collaboration
Reason Translations”) to load translations for collaboration reasons.

CollaborationTypePull
The CollaborationTypePull integration event (display name “Import Collaboration Types”) defines the
options for the Collaboration property in the Category Definition Manager workspace in Ariba
Administrator. In the default configuration, it reads data from the following file:

ariba/variants/Plain/partitions/None/data/CollaborationType.csv

Following is an example of CollaborationType.csv:

Cp1252
UniqueName,DisplayName
Disallowed,Disallowed
Allowed,Allowed
Required,Required

This integration event is required during initialization of your configuration.

Ariba Services Procurement Implementation Guide 59


Integration Events for Collaboration Chapter 5 Collaboration

CollaborationTypeLanguagePull
You can use the CollaborationTypeLanguagePull integration event (display name “Import Collaboration
Type Translations”) to load translations for collaboration property options.

SupplierRankingPull
The SupplierRankingPull integration event (display name “Import Supplier Rankings”) defines the values
you can assign to suppliers in a category, such as Approved, Unapproved, and Required. In the default
configuration, it reads data from the following file:

ariba/variants/Plain/partitions/None/data/SupplierRanking.csv

Following is an example of SupplierRanking.csv:

Cp1252
UniqueName,DisplayName
Unapproved,Unapproved
Approved,Approved
Required,Required

This integration event is required during initialization of your configuration.

SupplierRankingLanguagePull
You can use the SupplierRankingLanguagePull integration event (display name “Import Supplier Ranking
Translations”) to load translations for supplier ranking values.

ValueQualifierPull
The ValueQualifierPull integration event (display name “Import Value Qualifiers”) defines the qualifier
values, such as “Fixed” and “Not to Exceed” for contractible properties on the requisition and collaboration
requests. In the default configuration, it reads data from the following file:

ariba/variants/Plain/partitions/None/data/ValueQualifier.csv

Following is an example of ValueQualifier.csv:

Cp1252
UniqueName,DisplayName,Rank,ValidCompareToValues
"Fixed","Fixed","5","0"
"NotToExceed","Not to Exceed","10","0,1"
"Negotiable","Negotiable","15","-1,0,1"

This integration event is required during initialization of your configuration.

ValueQualifierLanguagePull
You can use the ValueQualifierLanguagePull integration event (display name “Import Value Qualifier
Translations”) to load translations for qualifier values.

60 Ariba Services Procurement Implementation Guide


Chapter 5 Collaboration Scheduled Tasks for Collaboration

BiddingTypePull
The BiddingTypePull integration event (display name “Import Bidding Types”) defines system-level bidding
types that all users can use during the collaborative open bidding process. In the default configuration, this
integration event reads data from the following file:

ariba/variants/Plain/partitions/None/data/BiddingType.csv

Following is an example of BiddingType.csv:

Cp1252
UniqueName,Name,ShowLowestBidAmount,ShowLowestBidPrice,ShowLowestBidSupplier,ShowBidRank,ShowBidS
upplierRank,HideBiddingInfoBeforeFirstBid
"Closed","Closed",false,false,false,false,false,false
"Amount","Open - Amount",true,true,false,false,false,false
"Rank","Open - Amount, Rank",true,true,false,true,false,false
"Supplier","Open - Amount, Rank, Supplier",true,true,true,true,true,false

BiddingTypeLanguagePull
You can use the BiddingTypeLanguagePull integration event (display name “Import Bidding Type
Translations”) to load translations for bidding types.

Scheduled Tasks for Collaboration


Ariba Services Procurement provides several scheduled tasks for collaborative requisitions. This section
briefly describes these scheduled tasks.

For complete descriptions of these scheduled tasks, see Appendix C, “Scheduled Tasks Reference.”

CXMLProcessUndeliveredPayloads
The CXMLProcessUndeliveredPayloads scheduled task (display name “Process Undelivered cXML
Documents”) recovers all cXML documents that have been queued for delivery but have not been delivered
because the destination has been unreachable or the application server has shutdown.

For example, when Ariba Buyer tries to send a collaboration request to Ariba SN, and Ariba SN is not
responding, the CXMLProcessUndeliveredPayloads scheduled task tries to send the request again.

FailedCollaborationRequests
The FailedCollaborationRequests scheduled task (display name “Send Failed Collaboration Requests”)
re-processes collaboration requests that were not routed successfully to Ariba SN because of a collaboration
request or configuration error, such as the supplier ID on the request not being recognized by Ariba SN.
After fixing the error, run this scheduled task to try routing the collaboration requests again and to re-process
the status updates sent to Ariba SN.

Ariba Services Procurement Implementation Guide 61


Approval Rules for Collaboration Chapter 5 Collaboration

RetryFailedCollaborationLaunch
The RetryFailedCollaborationLaunch scheduled task (display name “Restart the Collaboration Process”) is
an error-recovery task that scans the Ariba Buyer database for collaboration requisitions whose status is
CollabrationFailed, and attempts to restart the collaboration process for those requisitions.

StuckCollaborationRequests
The StuckCollaborationRequests scheduled task (display name “Send Stuck Collaboration Requests”)
handles collaboration requests that have become stuck in Sending status for the specified period of time.

Approval Rules for Collaboration


You can tailor Ariba Services Procurement to follow your company’s business processes by modifying or
extending the default approval rule set.

Approval rules in the rule set for requisitions control collaboration. In the default configuration, there are
two versions of the requisition rule set:
• JavaScript Requisition Rules (JavaScriptRequisitionRules.rul)
• JavaScript Requisition With Template Rules (JavaScriptRequisitionWithTemplateRules.rul)

The JavaScript Requisition With Template Rules rule set is enabled by default.

JavaScript Requisition Rules


The following table describes the rules that control collaboration in the JavaScript Requisition rule set.

Rule Name Rule Type Description Enabled?


launchCollaboration Simple IF there are pending collaborative items on the Yes
requisition, THEN launch collaboration when the
Begin Collaboration node is active (active nodes
display as green).

You should not need to customize this rule but should


simply add it to your rule set.

precollaboration Simple IF there are pending collaborative items on the Yes


requisition (that is, items that have not yet completed
collaboration), THEN add the department manager of
the requester to the pre-collaboration phase.

You can customize this rule to add additional users to


the precollaboration phase.

collaborationTeam Simple IF there are pending collaborative items on the Yes


requisition, THEN add the requester and professional
buyer role to the collaboration phase.

You can customize this rule to add additional users to


the collaboration team.

62 Ariba Services Procurement Implementation Guide


Chapter 5 Collaboration Approval Rules for Collaboration

Rule Name Rule Type Description Enabled?


endCollaboration Simple When collaboration ends, the End Collaboration node Yes
approves automatically, and this rule moves the
approval flow to the final approvals.

You should not need to customize this rule but should


simply add it to your rule set.

collaborationPOChange Simple Not supported in this release. Yes

collaboration before final Constraint Sets the order of the pre-collaboration and Yes
approvals collaboration rules.

If you create custom approval rules for collaboration,


you must use the naming prefixes precollaboration and
collaborationTeam so that this constraint can identify
the rules correctly, or you can customize this constraint
rule to recognize your custom rules.

Default Edit Rule Edit • Adding a collaborative item causes the approval
diagram to be regenerated so that collaboration is
launched for the new collaborative items.
• Only users who have the PurchasingAgent
permission can edit submitted documents without
altering the approval flow.
• The preparer cannot edit submitted documents.

JavaScript Requisition With Template Rules


The following table describes the rules that control collaboration in the JavaScript Requisition With
Template Rules rule set.

Rule Name Rule Type Description Enabled?


launchCollaboration Simple IF there are pending collaborative items on the Yes
requisition, THEN launch collaboration when the
Begin Collaboration node is active.

precollaboration_ Simple IF all of the following conditions are true: No


DepartmentManager • Collaboration is Pending.
Exists
• The department has no manager.
• The collaboration state is not supplier purchase
order change mode.

THEN add users who have the CFO role.

Ariba Services Procurement Implementation Guide 63


Approval Rules for Collaboration Chapter 5 Collaboration

Rule Name Rule Type Description Enabled?


precollaboration_ Simple IF all of the following conditions are true: No
DepartmentManagerNotRe • The department has a manager.
quester
• Collaboration is Pending.
• The department manager and the requester are
different people.
• The collaboration state is not supplier purchase
order change mode.

THEN add the department manager.

precollaboration_ Simple IF all of the following conditions are true: No


SupervisorOfDepartmentM • The department has a manager.
anagerNotExists
• The department manager and the requester are the
same person.
• Collaboration is Pending.
• The department manager does not have a
supervisor.
• The collaboration state is not supplier purchase
order change mode.

THEN add users who have the CFO role.

precollaboration_ Simple IF all of the following conditions are true: No


SupervisorOfDepartmentM • The department has a manager.
anagerExists
• The department manager and the requester are the
same person.
• The department manager has a supervisor.
• Collaboration is Pending.
• The collaboration state is not supplier purchase
order change mode.

THEN add the department manager’s supervisor.

collaborationTeam Simple IF there are pending collaborative items on the Yes


requisition, THEN add the requester and members of
the Purchasing Agent group to the collaboration
team.

endCollaboration Simple When collaboration ends, the End Collaboration Yes


node approves automatically, and this rule moves the
approval flow to the final approvals.

collaborationPOChange Not supported in this release. No

Post Collaboration Simple IF collaboration is Pending, THEN add members of Yes


Approver the Purchasing Agent group.

CollaborationBefore Constraint Place approval requests from collaboration rules No


FinalApprovals before final approvals.

64 Ariba Services Procurement Implementation Guide


Chapter 5 Collaboration Approval Rules for Collaboration

Rule Name Rule Type Description Enabled?


CollaborationAfterFirst Constraint Place approval requests in the following order: Yes
1 Approval requests from approval rules that begin
with “First”
2 Approval requests from approval rules that begin
with”precollaboration”
3 Begin collaboration approval node
4 Approval requests from the collaborationTeam
rule
5 End collaboration node

Collaborative Item Edit IF a collaborative item is added, THEN the Yes


requisition can be edited and must be resubmitted.

Default Edit Rule Edit • Only members of the Purchasing Manager and
Executive Approvers groups can edit submitted
documents without altering the approval flow.
• Adding a collaborative item causes the approval
diagram to be regenerated so that collaboration is
launched for the new collaborative items.
• The preparer cannot edit submitted documents.

Edit Rule Customization


You can modify the Default Edit Rule so that new approvers can be added to the approval flow after
collaboration has ended. To implement this logic, add the following function to the beginning of the Default
Edit Rule:

function edit_rule (user, a, fields, changes)


{
if (a.isCollaborationFinishing(user,fields,changes)) {
return Approvable.EditRequiresResubmit;
}

This customization recalculates the approval flow and removes the history of the previous approval flow. For
example, the begin collaboration, collaboration team, End collaboration nodes are removed.

Ariba Services Procurement Implementation Guide 65


Approval Rules for Collaboration Chapter 5 Collaboration

66 Ariba Services Procurement Implementation Guide


Chapter 6 Contractors

• “About Contractors” on page 67


• “Contractor Configuration” on page 69
• “Integration Events for Contractor Surveys” on page 72
• “Scheduled Tasks for Contractors” on page 74
• “Approval Rules for Contractor Surveys” on page 75

About Contractors
A contractor is a person who provides temporary labor to a company. The hiring organization is the company
that hires the contractor, typically through a supplier that specializes in providing temporary labor resources.

Creating Contractors
To obtain a contractor, users create a requisition in Ariba Buyer and adds a labor line item that describe the
position for which they are hiring. The item can be collaborative or non-collaborative. Users can also order
related goods items (such as a new-hire kit) and fee items (such as background checks) on the same
requisition. After a candidate is accepted, he or she is set up as a contractor in your configuration. The
contractor can then create time sheets and expense sheets to track hours worked and expenses.

The contractor is created automatically when the purchase order is sent successfully. You can also create
contractors manually in Ariba Administrator. In both cases, a user profile request document is created and
sent to the contractor’s hiring manager for approval. Contractor creation can be delayed until a scheduled
task runs.

If your configuration includes required fields in the user profile, make sure user profile requests require
approval from a user who has edit permission. If user profile requests are auto-approved, required fields
might not be set and errors can occur when contractors attempt to create timesheets.

Onboarding Contractors
Onboarding is the process of getting a contractor set up with the tools and access needed to perform the job,
such as a computer and phone, office space, access to network servers, and so forth. Each hiring company
has its own set of procedures for onboarding contractors.

In the default configuration, contractors are created automatically when the purchase order is sent. You can
customize the contractor creation engine to customize the onboarding process. For example, you could
create a email notification message from your custom engine that sends a checklist of onboarding tasks to
the hiring manager.

Ariba Services Procurement Implementation Guide 67


About Contractors Chapter 6 Contractors

Working with Contractors


Ariba Services Procurement provides functionality to help you manage contractors based on your company’s
legal and business requirements. Working with human resource and legal experts is highly recommended.

Contractor Time Tracking


Legal or organizational policies may prohibit the hiring of a temporary labor source for extended periods of
time. In the US, for example, co-employment regulations put the hiring company at risk for becoming the
primary employer of a contractor hired through an agency, if the contracting relationship is not properly
managed. Tracking of a contractor’s time is one important factor in managing this risk.

Ariba Services Procurement provides the functionality to set thresholds for on site days and good sit periods
to ensure a contractor’s time at the hiring company is within the limits and policies set by the company. On
site days is the number of consecutive days a contractor works, and good sit period is the number of working
days (weekends and company holidays are excluded) that a contractor must not work before they can resume
work on either the same or a new project. Sit days are days the contractor does not work, and they are tracked
to determine if the good sit period has been reached or not.

Do Not Hire
To streamline the process of selecting contractor candidates, hiring organizations (especially those that
frequently hire contractors) often maintain a list of contractors who are known to be unacceptable. In
determining who might be added to the do not hire list, factors such as unacceptable performance on a
previous contract at the company, or a failed background check or poor references when being vetted for a
previous contract, might be considered. An organization is responsible for determining its policies regarding
the use of a do not hire list.

The do not hire functionality is available in the default configuration of Ariba Services Procurement.

Contractor Surveys
Contractors are ranked on meeting overall expectations, skill accuracy, and professional demeanor. Rankings
can be configured to meet your company’s business requirements.

Managing Contractors in Ariba Administrator


You can add contractors manually by using the Contractors task in the Workforce Manager workspace in
Ariba Administrator. When you create a contractor in Ariba Administrator, you specify the user on which
the contractor is based. Therefore, you must create the user before you create the contractor.

Important: When using Ariba Administrator to create a user on which a contractor is based, make sure you
assign a supervisor to that user. Otherwise, the contractor will not appear in the Contractor Report, and the
default time sheet approval rules will not work for that contractor.

68 Ariba Services Procurement Implementation Guide


Chapter 6 Contractors Contractor Configuration

You typically do not need to create contractors in Ariba Administrator, because they are created
automatically from labor line items on purchase orders. However, if the purchase order mistakenly specified
an existing contractor, or if you mistakenly moved a contractor's line items to another contractor and deleted
the old contractor, you must create the contractor manually and move the items from the incorrect contractor
to the contractor you are creating.

For more information, see Chapter 9, “Administration.”

Contractor Configuration
This section describes configuration settings you use to tailor the behavior of contractor-related functions.

Restricting Contractor Access


Contractors can create requisitions and other approvable documents unless you restrict contractors from the
appropriate approvable types in your configuration. For example, to prevent contractors from creating
requisitions, edit the requisition entry in ApprovableType.csv, setting the Restricted field to true and the
Permissions field to CreateRequisition.

For information on modifying ApprovableType.csv, see the Ariba Buyer Configuration Guide,

Contractor Password Adapter


The Application.Workforce.DefaultContractorUserPasswordAdapter parameter specifies the default adapter
to use for contractors when they are created automatically from the selected candidates on requisitions.

By default, this parameter is set to the same value as the parameter


Application.Base.Data.AribaSystemUserPasswordAdapter.

For more information on password adapters, see the Ariba Buyer Configuration Guide.

Contractor Processing
The Application.Workforce.UseBatchContractorCreation parameter specifies whether to process users and
contractors immediately after a purchase order has been created or to wait until a scheduled task runs.
• If set to true, the ProcessContractorCreation scheduled task (display name “Batch Create Contractors
Task”) processes contractors and creates a shared user for them if they are not already linked to an
existing shared user.
• If set to false, the contractor is processed immediately after the purchase order has been created.

In both cases, the contractor cannot log in until the hiring manager approves the User Profile Request
document that is created automatically when the shared user is created.

If a you do not want to use any contractor functionality, set


Application.Workforce.UserBatchContractorCreation to true and remove the ProcessContractorCreation
scheduled task.

Ariba Services Procurement Implementation Guide 69


Contractor Configuration Chapter 6 Contractors

Contractor Creation Engine


The Application.Workforce.ContractorCreationProcessor parameter specifies the engine that converts
candidates from the requisition to contractors in Ariba Buyer.

You should leave this parameter set to its default value of


ariba.workforce.core.AribaContractorCreationProcessor unless you create a custom engine to handle this
process.

Contractor Engine
The Application.Workforce.ContractorEngine parameter specifies the logic for matching candidates to
contractors in the system and the logic related to contractor time tracking functionality.

You should leave this parameter set to its default value of ariba.workforce.core.AribaContractorEngine
unless you create a custom engine to handle this process.

Thresholds for Onsite and Sit Days


Thresholds for the maximum number of consecutive onsite days and the minimum number of sit days are set
using the following parameters:
• Application.Workforce.MaxConsecutiveOnSiteDays: Specifies the maximum number of consecutive days
a contractor can work onsite before being required to sit (not work) for a minimum number of continuous
business days (good sit period). Consecutive onsite days include both business days and non-business
days on which a contractor performs work. By default, this parameter is set to 180.
• Application.Workforce.MinGoodSitDays: Specifies the minimum number of continuous business days a
contractor must not work (good sit period) in order to reset the maximum consecutive onsite day count to
zero. A sit day is a business day that a contractor does not work (a non-business day that is not worked is
ignored). By default, this parameter is set to 30.

A zero (0) value for either parameter means there are no limits.

You can also configure these values for a specific category item by modifying the Max Consecutive Onsite
Days and Min Good Sit Days properties. The category item settings override the parameters settings for the
particular category item. For information on setting these properties from Ariba Administrator, see “Adding
or Modifying a Category Item on the Items Tab” on page 39. For information on setting these properties in a
category definition file, see “Additional Contractible Properties” on page 144.

Forecasting Consecutive Onsite Days


During the collaboration process for labor line items, if a candidate has previously worked for the hiring
organization, Ariba Services Procurement forecasts the expected number of consecutive onsite days for the
candidate. The number of work days for the proposed labor line item (taken from the labor order) is added to
the number of days the candidate has previously worked (taken from time sheets associated with all previous
labor orders the candidate worked on). If the candidate has met the minimum number of continuous sit days
(as set in the MinGoodSitDays parameter), the previously worked days are not counted in the consecutive
onsite days forecast.

70 Ariba Services Procurement Implementation Guide


Chapter 6 Contractors Contractor Configuration

The forecast number is stored in the ForecastedDayCount field in the ContractorCandidate object. If the value
exceeds the maximum number of consecutive onsite days set by the MaxConsecutiveOnSiteDays parameter,
the hiring manager sees a warning in the Accept Candidate page indicating the candidate might exceed the
work duration threshold and possibly incur co-employment risk.

The delay between when a time sheet is submitted and when it is approved is factored into the forecast
calculation. Time sheets submitted prior to the delay period must be approved in order for the data to be
included in the consecutive onsite days forecast. Time sheets submitted during this delay period, even if not
approved, are used in the calculation.

You can configure the number of consecutive business days that approval of a time sheet is expected to be
delayed by using the Application.Workforce.UnapprovedTimeSheetForecastDays parameter. By default, this
parameter is set to 15.

For more information on the logic provided in the default configuration for contractor time tracking, and
how to customize the logic to meet your organization’s needs, see “Contractor Engine” on page 164.

Do Not Hire Contractors Configuration


The Workforce Manager, using the Contractors task in the Workforce Manager workspace in Ariba
Administrator, adds a contractor to the do not hire list by editing an existing contractor’s profile, and
selecting the do not hire option and (optional) providing a reason. In the case of a contractor who has never
worked for your company, the Workforce Manager must add a profile for that contractor.

On the Contractor object, the do not hire designation is stored in the DoNotHire field, and the reason is stored
in the Reason field.

When a supplier proposes a candidate during the collaboration process, Ariba Services Procurement uses an
algorithm that matches candidates to contractors in the system. If there is a match, and the contractor is
specified as do not hire, the hiring manager is not allowed to accept the candidate. For information on the
logic provided in the default configuration for matching a candidate to a contractor, and how to customize
the logic to meet your organization’s needs, see “Contractor Engine” on page 164.

The hiring manager sees an icon next to the candidates name on the proposal indicating the candidate cannot
be hired, and receives an error message if he attempts to accept the candidate. The hiring manager does not
have access to the reason the contractor is on the do not hire list. Only the Contract Manager and Workforce
Manager can see the reason.

The supplier is not notified that the contractor is designated as do not hire.

Only the Workforce Manager can use the Do Not Hire search filter on the Contractors screen to generate a list
of contractors who are designated as do not hire.

Calculations for Recurring Fee Items


Requisitions created to add contractors can include fee items, such as background checks. The
Application.Procure.RecurringFeeItemCalendarBasedFlag parameter specifies how calculations are
performed for recurring fee items.

Ariba Services Procurement Implementation Guide 71


Integration Events for Contractor Surveys Chapter 6 Contractors

When this parameter is set to false (the default setting), calculations for recurring fee items are based on
straight duration (30 days equals one month). For example, if the start date is October 31 and the end date is
November 30, the number of occurrences is 1 because the month calculation starts on October 31 and ends
on November 30 (exactly 30 days).

When this parameter is set to true, calculations for recurring fee items are done based on how many calendar
months occur rather than on straight duration. For example, if the start date is October 31 and the end date is
November 30, the number of occurrences is 2 because the duration falls within two calendar months.

This parameter also applies to contract fee items. For more information, see the Ariba Contract Compliance
Administration Guide.

Co-Employment Risk Candidate Acceptance


The Application.Workforce.DoNotAcceptCoemploymentRiskCandidate parameter is a Boolean value that
specifies whether users can accept candidates that might cause co-employment risk. When this parameter is
set to true, users cannot accept candidates that might cause co-employment risk. For more information, see
“Contractor Time Tracking” on page 68.

In the default configuration, this parameter is set to false.

Integration Events for Contractor Surveys


This section describes the integration events for contractor survey rankings. For descriptions of the CSV files
read by these integration events, see the Data Dictionary.

ContractorPerformanceThreePointValuePull
The ContractorPerformanceThreePointValuePull integration event (display name “Import Contractor
Performance Three Point Values”) defines ranking information for evaluating a contractor’s performance on
a three-point scale, for example, high, medium, and low. In the default configuration, this integration event
reads data from the following file:

ariba/variants/Plain/partitions/None/data/ContractorPerformanceThreePointValue.csv

Following is an example of ContractorPerformancethreePointValue.csv:

Cp1252
UniqueName,Name,Value
"01","01 - Low","1"
"02","02 - Med","2"
"03","03 - High","3"

If you want to load different contractor performance values, you must modify the
MessageConfiguration.table entry for ContractorPerformanceThreePointValuePull to point to a CSV file
located in the config directory before running the integration event.

72 Ariba Services Procurement Implementation Guide


Chapter 6 Contractors Integration Events for Contractor Surveys

ContractorPerformanceThreePointValueLanguagePull
You can use the ContractorPerformanceThreePointValueLanguagePull integration event (display name
“Import Contractor Performance Three Point Value Translations”) to load translations for three-point value
ranking names.

ContractorPerformanceTenPointValuePull
The ContractorPerformanceTenPointValuePull integration event (display name “Import Contractor
Performance Ten Point Values”) defines ranking information for evaluating a contractor’s performance on a
10-point scale, for example, from 1 to 10. In the default configuration, this integration event reads data from
the following file:

ariba/variants/Plain/partitions/None/data/ContractorPerformanceTenPointValue.csv

Following is an example of ContractorPerformanceTenPointValue.csv:

Cp1252
UniqueName,Name,Value
"01","01","1"
"02","02","2"
"03","03","3"
"04","04","4"
"05","05 - meeting expectation","5"
"06","06","6"
"07","07","7"
"08","08","8"
"09","09","9"
"10","10 - outperform","10"

If you want to load different contractor performance values, you must modify the
MessageConfiguration.table entry for ContractorPerformanceTenPointValuePull to point to a CSV file
located in the config directory before running the integration event.

ContractorPerformanceTenPointValueLanguagePull
You can use the ContractorPerformanceTenPointValueLanguagePull integration event (display name
“Import Contractor Performance Ten Point Value Translations”) to load translations for ten-point value
ranking names.

Ariba Services Procurement Implementation Guide 73


Scheduled Tasks for Contractors Chapter 6 Contractors

Scheduled Tasks for Contractors


Ariba Services Procurement provides several scheduled tasks related to contractors. This section briefly
describes these scheduled tasks. For complete descriptions of these scheduled tasks, see
Appendix C, “Scheduled Tasks Reference.”

ComputeConsecutiveOnSiteDays and RecomputeConsecutiveOnSiteDays


The number of consecutive onsite days and current sit days are calculated by running the following
scheduled tasks that search of payable time entries on time sheets submitted by contractors:
• ComputeConsecutiveOnSiteDays (display name “Compute Consecutive On Site Days”)
• RecomputeConsecutiveOnSiteDays (display name “Recompute Consecutive On Site Days”)

ComputeConsecutiveOnsiteDays performs an incremental update. RecomputeConsecutiveOnSiteDays


performs a full update. This task is more time and process intensive and should be used less often than
ComputeConsecutiveOnSiteDays. You might need to run this task if you change the
Application.Workforce.MaxConsecutiveOnSiteDays and Application.Workforce.MinGoodSitDays parameters,
or if you update the Max Consecutive Onsite Days and Min Good Sit Days properties for a category item.

When a contractor works on a business day or a non-business day (regardless of the number of hours worked
in a day), the total of the ConsecutiveDayCount field on the Contractor object is increased by one.

If on a subsequent business day a contractor does not work, the total of the CurrentSitDayCount field on the
Contractor object is increased by one. The sit day count continues to increment only if the contractor does
not work on continuous business days (non-business days are ignored). Once the contractor resumes work,
the sit day count is reset to zero.

The consecutive onsite day count continues to increment for each day worked, even if there are intermittent
sit days. Once a contractor meets the consecutive onsite days threshold, typically he should not work until he
meets the good sit period threshold. At the time the good sit period is met, the consecutive onsite day count
is reset to zero.

Consider a simplified example in which the consecutive onsite day threshold is 20 days and the good sit
period is 5 days:
• In scenario A, a contractor works five consecutive business days, and then subsequently sits for two
consecutive business days. In this case, the contractor can work 15 more business days but then cannot
work again until he has sat for five consecutive business days.
• In scenario B, a contractor works 10 consecutive business days and then subsequently sits for five
consecutive business days. In this case, having met the good sit period threshold, the 10 days the
contractor previously worked are ignored, and the contractor can work for 20 more days.

ProcessContractorCreation
The ProcessContractorCreation scheduled task (display name “Batch Create Contractors Task”) converts
accepted candidates from collaborative purchase orders to shared users and contractors in Ariba Buyer.
After their hiring managers approve the User Profile Request documents that are automatically generated
when the contractors are created, these contractors can log in to Ariba Buyer and create time sheets.

74 Ariba Services Procurement Implementation Guide


Chapter 6 Contractors Approval Rules for Contractor Surveys

SendSurveyNotification
The SendSurveyNotification scheduled task (display name “Send Contractor Survey Notification”) sends a
notification message to the hiring manager to complete a contractor survey for a labor item. The task
searches the Ariba Buyer database for labor items in which the contract end date has passed and a contractor
survey has not been submitted. If a survey has already been submitted for a labor item, a notification is not
sent.

This task also verifies whether the hiring manager has the CreateContractorSurvey permission needed to
create the survey. If the hiring manager does not have this permission, the task assigns it to him.

Approval Rules for Contractor Surveys


You can tailor Ariba Services Procurement to follow your company’s business processes by modifying or
extending this default approval rule set.

In the default configuration, the JavaScript Contractor Survey Requester Rules rule set
(JavaScriptContractorSurveyRules.rul) determines who approves a contractor survey when a preparer
submits the contractor survey on behalf of the hiring manager.

The following table describes the rules in the JavaScript Contract Survey Requester Rules rule set.

Rule Name Rule Type Description Enabled?


Contractor Survey Simple Add the contractor survey requester. Yes
Requester

Contractor Survey Manager Simple Add users who have the Contractor Survey Manager role. Yes

Default Edit Rule Edit Edits are allowed but approval must restart.

For information on customizing approval rules, see the Ariba Spend Management Approval Rules Guide.

Ariba Services Procurement Implementation Guide 75


Approval Rules for Contractor Surveys Chapter 6 Contractors

76 Ariba Services Procurement Implementation Guide


Chapter 7 Time Sheets

• “About Time Sheets” on page 77


• “Time Sheet Configuration” on page 78
• “Integration Events for Time Sheets” on page 80
• “Scheduled Tasks for Time Sheets” on page 82
• “Approval Rules for Time Sheets” on page 83
• “CreateInvoicesForTimeSheet Task Customization” on page 83
• “Time Sheet Import Sample” on page 86

About Time Sheets


Time sheets are provided in the default configuration as a means for receiving items from Labor categories.
As contractors complete hours of service, they can fill out time sheets to record the hours worked and the
type of hours (regular, overtime, or holiday). Suppliers can then submit invoices against the time sheets, or
you can run a scheduled task to convert approved time sheets into invoices.

A time sheet is always associated with exactly one labor line item from a purchase order and covers a time
period of one week. The entries in the time sheet must be within the start and end dates specified on the labor
line item on the purchase order.

Each time sheet essentially serves as a partial receipt for the associated labor line item. For example, if the
purchase order contained a line item for an administrative assistant for a total of 500 hours, each time sheet
the contractor fills out is a partial receipt toward those 500 hours. Non-billable hours (such as Meal Break
hours) are not included toward the total hours.

Creating Time Sheets


Contractors create time sheets directly in Ariba Buyer. To create a time sheet, a user must be defined as a
valid contractor in the system. Alternatively, a user with the CreateTimeSheets permission can create time
sheets for a valid contractor.

For more information on how contractors create time sheets, see the Ariba Buyer Procurement User Guide.

Invoices for Time Sheets


After time sheets have been approved, the supplier submits invoices against them or the hiring organization
can create invoices from the sheets automatically. Ariba Invoice then matches the invoices to the purchase
order and appropriate sheets. The invoice is then processed as any other invoice, with the sheet treated as a
receipt.

For more information on invoices and the steps involved with matching invoices to time and expense sheets,
see the Ariba Invoice Implementation Guide.

Ariba Services Procurement Implementation Guide 77


Time Sheet Configuration Chapter 7 Time Sheets

Time Sheet Configuration


This section describes configuration settings you can use to tailor the behavior of time sheets.

Time Sheet Entry Format


Time sheets are collections of time sheet entries, each of which covers a time period on a single day. In the
simplest configuration, a time sheet might contain five entries, one for each day of the work week.
Sometimes a contractor works different types of hours, such as eight hours of regular time and four hours of
overtime. These different types of hours are called pay codes.

A time sheet must contain separate entries for each different pay code. For example, the contractor would
create an entry for the eight hours of regular time and create a second entry for the four hours of overtime,
even though the hours were worked on the same day. The pay codes available on a time sheet are determined
by the contractor’s work location and overtime exempt status. Each work location has a specific set of pay
codes and rules specifying when those pay codes can be used. For example, the Holiday pay code might be
available on a time sheet but can be used only for specific dates.

A time sheet entry can be in one of two formats: summary hours or detailed hours. A summary-hours entry
requires the date and total hours worked. A detailed-hours entry requires the date, start time, and stop time
(the total hours are calculated from these times). By default, time sheet entries are in detailed-hours format.

The format of the time sheet entries is specified by the AllowTimeSheetSummaryHours field on the
LaborLineItemDetails.LaborContractibleProperties object. You can set this field in Ariba Administrator by
taking the following steps.

Warning: Do not allow summary hours in countries where detailed hours are required, such as Mexico.

 To specify summary hours:


1 In the Category Definition Manager workspace, edit an existing Labor category, or create a new Labor
category.
2 Do one of the following:
• To set summary-hours format for all items in this category, click the Items tab, and then click Item
Defaults and the category driver you want to set the defaults for.

• To set summary-hours format for a specific item in this category, click the Items tab, and then edit the
item (if it is already in this category) or add it to the category.
3 On the Policies tab, under Engagement Terms, set the value for the Allow Summary Hours policy to Yes.

After you validate and activate the category definition, it applies to new requisitions and orders created after
the activation. Any time sheets for this labor line item (or for all labor line items in this category, depending
on the action you took in step 2) will display entries in summary format. Orders created before the category
definition is activated are not affected.

78 Ariba Services Procurement Implementation Guide


Chapter 7 Time Sheets Time Sheet Configuration

Labor Law Compliance


Ariba Services Procurement includes a compliance engine that compares time sheet entries to the labor laws
of the contractor’s work location. If a time sheet is not in compliance with the labor laws, the contractor must
correct the violations before the time sheet can be submitted.

There are two parameters you can set to control labor law compliance on time sheets:
• Application.Workforce.LaborComplianceEngine—Specifies the compliance engine that performs the
validation. By default, this parameter is set to the default compliance engine that ships with Ariba
Services Procurement. You can also set this parameter to specify a third-party compliance engine or a
custom engine that includes specific pay code validation. For more information on customizing the labor
compliance engine, see Appendix F, “Ariba Services Procurement API.”
• Application.Workforce.AllowTimeSheetViolations—Specifies whether to allow pay code violations on
time sheet entries.

Note that there is no compliance checking for minimum pay rates on time sheets or invoices. This validation
does not exist because in some cases the hiring organization pays a partial amount of the contractor’s actual
wages and the supplier pays the rest.

Start and End Days for the Work Week


The parameters Application.Workforce.StartDayForWorkWeek and
Application.Workforce.EndDayForWorkWeek specify the starting and ending days of the regular work week in
your configuration. The value for these parameters can be an integer from 1 through 7, where 1 is Sunday, 2
is Monday, and so on. In the default configuration, the work week starts on Mondays and ends on Fridays.

When you change the Application.Workforce.StartDayForWorkWeek parameter from its default values of 2,
time sheets start each 7-day period on the day you specified. Additionally, these parameters are used
together to determine the number of days in a regular work week in your configuration, which is used to
calculate the estimated number of hours for a labor line item on a requisition.

Pay Code Compliance


The parameter Application.Workforce.AllowTimeSheetVioloations specifies whether to allow time sheets to
be submitted if they have pay code violations. These violations occur when time sheet entries do not use the
proper pay codes based on the regional or country labor laws for the contractor’s work location. For
example, if this parameter is set to false, a time sheet cannot be submitted if there are Overtime entries
without enough Regular entries.

This parameter is specified at the partition level and is false by default. You can override this parameter for
a category definition or a specific category item by setting the Allow Time Sheet Violations policy in the
Category Definition Manager workspace in Ariba Administrator.

The parameter Application.Workforce.LaborComplianceEngine specifies the engine used to verify labor law
compliance.

Ariba Services Procurement Implementation Guide 79


Integration Events for Time Sheets Chapter 7 Time Sheets

Time Sheet Routing


The parameter Application.Workforce.TimeSheetRoutingEnabled specifies whether to route time sheets to
suppliers through Ariba SN. Set this parameter to true if you want time sheets to be sent to the contractor’s
supplier on Ariba SN. Set this parameter to false to prevent time sheets from being routed.

Unapproved Time Sheet Routing


The parameter Application.Workforce.UnapprovedTimeSheetRoutingDeferDays specifies how to route time
sheets that have not yet been approved.

To route time sheets to the supplier immediately after they are submitted and before they are approved, set
this parameter to 0. To allow unapproved time sheets to be routed to suppliers after waiting a period of days,
set the parameter to the number of days between 1 and 100. To prevent unapproved time sheets from being
routed to the supplier, set this parameter to a value greater than 100.

Bill Rate Precision


The Application.Workforce.BillRatePrecision parameter specifies the bill rate precision to store in the
database. The default value is -1. If this parameter is set to a value greater than -1, the bill rate is scaled up to
that level of precision. For example, values of 1, 2, and 4 will result in precisions of 10.2, 10.20, and 10.2000.
The value set must be a positive integer.

Time Sheet Hour Precision


The Application.Workforce.TimeSheetHourPrecision parameter specifies the time sheet hour precision to
store in the database. The TimeSheetItem.NumberAccepted field stores the number of hours entered in a time
sheet entry. This value can differ from the precision displayed in the user interface, which is governed in by
an XML setting. The default value is 2.

Integration Events for Time Sheets


This section describes the integration events used to define data related to time sheets. For descriptions of the
CSV files read by these integration events, see the Data Dictionary.

LaborPayCodePull
The LaborPayCodePull integration event (display name “Import Labor Pay Codes”) defines pay codes. Pay
codes are assigned to entries on a time sheet to categorize and track payment for those entries. Pay codes
such as MealBreak can be specified as billable or non-billable. Some pay codes can be used as reference to
an activity required by labor law, or for timekeeping purposes.

Pay codes are used to calculate the bill rate on the invoice for each time sheet entry; therefore, they can be
associated with a rate multiplier or markup amount from the category or contract. The LaborPayCode object
contains the mapping between the pay code and rate multiplier or markup, so the pay code on the time sheet
references the LaborPayCode object instead of a string.

In the default configuration, the LaborPayCodePull integration event reads data from the following file:

80 Ariba Services Procurement Implementation Guide


Chapter 7 Time Sheets Integration Events for Time Sheets

config\variants\Plain\partitions\None\data\LaborPayCode.csv

Following is an example of LaborPayCode.csv:

Cp1252
UniqueName,Name,LaborContractibleProperties_MultiplierFieldName,LaborContractibleProperties_Marku
pFieldName,Comment
"Regular","Regular","PayRate","Markup","regular hours for day shift"
"Overtime","Overtime","OvertimePayMultiplier","OvertimeMarkup", "overtime hours for day shift"
"Doubletime","Doubletime","DoubletimePayMultiplier","DoubletimeMarkup", "doubletime hours for day
shift"

If the column LaborContractibleProperties_MultiplierFieldName has the value “PayRate,” the multiplier is


1. If there is no value for this column, the pay code is not billable, that is, no rate information can be
calculated.

This integration event is required during initialization of your configuration.

LaborPayCodeLanguagePull
You can use the LaborPayCodeLanguagePull integration event (display name “Import Labor Pay Code
Translations”) to load translations of labor pay code names.

LaborPayCodeMapPull
The LaborPayCodeMapPull integration event (display name “Import Labor Pay Code Relationships”) maps
external payment codes (such as codes used on supplier invoices) and Ariba internal payment codes. For
example, a supplier might use the code “Straight,” which would map to the internal code “Regular.”

In the default configuration, the LaborPayCodeMapPull integration event reads data from the following file:

config\variants\variant\partitions\partition\data\LaborPayCodeMap.csv

Following is an example of LaborPayCodeMap.csv:

Cp1252
"Key","Value","Preferred","Comment"
"Straight","Regular",,
"Regular","Regular",TRUE,
"OT","Overtime",,

This integration event is required during initialization of your configuration.

Ariba Services Procurement Implementation Guide 81


Scheduled Tasks for Time Sheets Chapter 7 Time Sheets

Scheduled Tasks for Time Sheets


Ariba Services Procurement provides a number of scheduled tasks for time sheets. This section briefly
describes these scheduled tasks.

For detailed information on these scheduled tasks, see Appendix C, “Scheduled Tasks Reference.”

DeferredTimeSheets
The DeferredTimeSheets scheduled task (display name “Send Deferred Time and Expense Sheets”) sends
time sheets to Ariba SN after they have been deferred the specified number of days. For example, if you set
the parameter UnapprovedTimeSheetRoutingDeferDays to 5, and there are time sheets that are still unapproved
five or more days after they were submitted for approval, this scheduled task routes them to Ariba SN. Note
that this task processes time sheets only in partitions where the TimeSheetRoutingEnabled parameter is set to
true.

FailedTimeSheets
The FailedTimeSheets scheduled task (display name “Send Failed Time and Expense Sheets”) re-processes
time sheets that were not routed successfully to Ariba SN because of a time sheet or configuration error,
such as the time sheet’s supplier ID not being recognized by Ariba SN. After fixing the error, run this
scheduled task to try routing the time sheets again.

StuckTimeSheets
The StuckTimeSheets scheduled task (display name “Send Stuck Time and Expense Sheets”) handles time
sheets that have become stuck in Sending status.

CreateInvoicesForTimeSheets
The CreateInvoicesForTimeSheets scheduled task (display name “Create Invoices For Time and Expense
Sheets”) converts processed time sheets to invoices. The invoices are created in the same partition as the
sheets they contain. You can specify whether you want to have a single invoice per time sheet or multiple
time sheets per invoice. This scheduled task also works with expense sheets.

You can create multiple instances of the CreateInvoicesForTimeSheet scheduled task to combine both time
and expense sheets from the same partition on the same invoice, to process just one sheet type (for example,
only expense sheets), and to include or exclude suppliers. For more information, see
“CreateInvoicesForTimeSheet Task Customization” on page 83.

CXMLProcessUndeliveredPayloads
The CXMLProcessUndeliveredPayloads scheduled task (display name “Process Undelivered cXML
Documents”) recovers cXML documents that have been queued for delivery but have not been delivered
because the destination has been unreachable or the application server has shut down.

For example, when Ariba Buyer tries to send a time sheet to Ariba SN, and Ariba SN is not responding, the
CXMLProcessUndeliveredPayloads task tries to send the time sheet again.

82 Ariba Services Procurement Implementation Guide


Chapter 7 Time Sheets Approval Rules for Time Sheets

Approval Rules for Time Sheets


You can tailor Ariba Services Procurement to follow your company’s business processes by modifying or
extending this default approval rule set.

In the default configuration, the JavaScript Time Sheet Rules rule set (JavaScriptTimeSheetRules.rul)
determines who approves time sheets.

The following table describes the rules in the JavaScript Time Sheet Rules rule set.

Rule Name Rule Type Description Enabled?


Manager Simple Add the requester’s manager. Yes

Contract Verifier Simple IF a contract is associated with the requester, THEN add Yes
members of the Contract Manager group.

Manager Before Everyone Constraint Place approval requests from the Manager rule first. Yes

Default Edit Rule Edit Edits are allowed but approval must restart.

For information on customizing approval rules, see the Ariba Spend Management Approval Rules Guide.

CreateInvoicesForTimeSheet Task Customization


After time or expense sheets have been approved, the supplier submits invoices against them or the hiring
organization can create invoices from the sheets automatically. Ariba Invoice then matches the invoices to
the purchase order and appropriate sheets. The invoice is then processed as any other invoice, with the sheet
treated as a receipt.

You can use the CreateInvoicesForTimeSheets scheduled task to convert time sheets and expense sheets to
invoices; the task uses the same Java class (ariba.workforce.core.CreateInvoicesForTimeSheets) for both.

You can create multiple instances of the CreateInvoicesForTimeSheet scheduled task to combine both time
and expense sheets from the same partition on the same invoice, to process just one sheet type (for example,
only expense sheets), and to include or exclude suppliers.

Give each instance of the CreateInvoicesForTimeSheets task in ScheduledTask.table a unique name and set
the parameters for the functionality you want. To run the uniquely named scheduled tasks from Ariba
Administrator, you need to customize the Scheduled Task task in the Server Manager workspace with the
names of the scheduled tasks. To customize workspaces and tasks, you add elements and attributes to the
BuyerServerRoot/config/AdminConfigExt.acf workspace extension file.

When the task runs, it converts the specified sheets that have been processed to a separate invoice line item
for each pay code in a time sheet or each expense line item in an expense sheet. By default, this task runs on
the first day of the month, but you can run it at any time from the Workforce Manager workspace in Ariba
Administrator. Invoices are created in the same partition as the time and expense sheets they contain.

Ariba Services Procurement Implementation Guide 83


CreateInvoicesForTimeSheet Task Customization Chapter 7 Time Sheets

The SetDefaultInvoiceRemitToAddressOnSupplierLocationChange trigger sets the value of the remittance


location for the supplier. When the supplier location field changes, the trigger fires the
ariba.statement.action.UpdateRemitToAddress action. In the default configuration, the action assigns the
default remittance location for the supplier location when there are multiple remittance locations for that
supplier location. To change the logic for assigning the remittance location, create your own action Java
class.

After the scheduled task runs, the Invoice Manager can see the corresponding reconciliation objects, which
should not contain any errors. If there are problems, you can turn on the workforce.invoicing/debug log
category to help trace the problem.

You can customize the tax calculation of these invoices, just as you can with invoice reconciliation
documents. The lookup fields are defined in TimeSheetInvoicingExt.aml (which applies to both time sheet
and expense sheet invoices). For more information, see the chapter on tax APIs in the Ariba Invoice
Implementation Guide.

Examples
In the following examples, the TimeSheetInvoicingGroupingLevel parameter is set to Supplier, which means
that all sheet items from the same partitioned supplier are on a single invoice.

Example 1: Time and Expense Sheets for Supplier 13


CreateInvoicesForTimeSheetsS13 = {
PreparerPasswordAdapter = "Application.Base.Data.AribaSystemUserPasswordAdapter";
PreparerUniqueName = Application.Base.Data.AribaSystemUser;
ScheduledTaskClassName = "ariba.workforce.core.CreateInvoicesForTimeSheets";
TimeSheetInvoicingGroupingLevel = Supplier;
IncludedSuppliers=("sid487");
SupplierDomain="buyersystemid";
ItemAggregationLevel="POLineItem";
};

In this example:
• The missing ReceiptType parameter means the task applies to both time and expense sheets.
• Setting the ItemAggregationLevel parameter to POLineItem means that all the time sheet line items that
have the same pay code and match the same purchase order are aggregated to one invoice line item. All
the expense sheet line items are aggregated to another invoice line item. If there are time and expense
sheets associated with multiple purchase orders, there will be multiple invoice line items for time sheets
and multiple invoice line items for expense sheets.

Example 2: Time and Expense Sheets for Supplier 14


CreateInvoicesForTimeSheetsS14 = {
...
TimeSheetInvoicingGroupingLevel = Supplier;
IncludedSuppliers=("sid486");
SupplierDomain="buyersystemid";
ItemAggregationLevel="Receipt";
};

84 Ariba Services Procurement Implementation Guide


Chapter 7 Time Sheets CreateInvoicesForTimeSheet Task Customization

In this example:
• The missing ReceiptType parameter means the task applies to both time and expense sheets.
• Setting the ItemAggregationLevel parameter to Receipt means all the line items from the same expense
sheet are aggregated to one invoice line item. For time sheets, the line items must belong to the same time
sheet and have the same pay code to be aggregated to one invoice line item. For example, suppose a time
sheet has five entries: two for Overtime, one for Regular, and one for DoubleTime. In this case, there are
three invoice line items.

Example 3: Expense Sheets for Supplier 15


CreateInvoicesForTimeSheetsS15 = {
...
TimeSheetInvoicingGroupingLevel = Supplier;
IncludedSuppliers=("sid485");
SupplierDomain="buyersystemid";
ItemAggregationLevel="POLineItem";
ReceiptType="ExpenseSheet";
};

In this example:
• Setting the ReceiptType parameter to ExpenseSheet means only expense sheets are converted to invoices.
Time sheets are ignored,
• Setting the ItemAggregationLevel parameter to POLineItem means that all the ExpenseSheet line items that
match the same purchase order are aggregated to one invoice line item. If there are expense sheets
associated with multiple purchase orders, there will be multiple invoice line items for expense sheets.

Time and Expense Sheet Invoice Names


The name of an invoice in Ariba Buyer is in the following format:

INVSupplierInvoiceName-BuyerInvoiceID

If the invoice comes from a supplier, the supplier invoice name is sent from the supplier, and Ariba Buyer
generates the buyer invoice ID. If the invoice is converted from a time or expense sheet, the supplier invoice
name is generated by Ariba Buyer.

When a copy of the invoice is sent to Ariba SN, the supplier invoice name must be unique among all buyers
and suppliers on Ariba SN, so the supplier invoice name is formatted as follows:

BuyerOrgName-SupplierOrgName-BuyerInvoiceID

Therefore, the entire invoice name uses the following format:

INVBuyerOrgName-SupplierOrgName-BuyerInvoiceID-BuyerInvoiceID

For example, if the buyer organization name is Buyers, Inc., the supplier organization name is Suppliers,
Inc., and the buyer invoice ID is 16, the invoice name would look like this:

INVBuyers, Inc.-Suppliers, Inc.-16-16

Ariba Services Procurement Implementation Guide 85


Time Sheet Import Sample Chapter 7 Time Sheets

The supplier organization name varies depending on the way the time or expense sheets are grouped on the
invoice, as specified in the CreateInvoicesForTimeSheets scheduled task:

Sheets grouped by... Create this supplier organization name...


Supplier Supplier name. For example:

INVBuyers, Inc.-Suppliers, Inc.-16-16

Purchase Order Purchase order ID. For example:

INVBuyers, Inc.-PO123-16-16

Time sheet Time sheet unique name. For example:

INVBuyers, Inc.-TS456-16-16

Expense sheet Expense sheet unique name. For example:

INVBuyers, Inc.-ES456-16-16

Time Sheet Import Sample


If your contractors enter time sheet data into an external system and you want to import the data from CSV
files instead of having them re-enter the data in Ariba Buyer, you can use the sample provided with this
release to create a scheduled task that imports the data.

For complete instructions on how to set up this feature, see the README.txt file located in the
sample/timesheetpull directory.

86 Ariba Services Procurement Implementation Guide


Chapter 8 Expense Sheets

• “About Expense Sheets” on page 87


• “Integration Events for Expense Sheets” on page 88
• “Scheduled Tasks for Expense Sheets” on page 89
• “Approval Rules for Expense Sheets” on page 89

About Expense Sheets


Contractor expense sheets, which apply to collaborative requisitions for the temporary labor category, allow
a contractor to submit expense line items for out-of-pocket expenses.

As contractors incur allowed expenses, they can fill out expense sheets so they can be reimbursed. Suppliers
can then submit invoices against the expense sheets, or the hiring organization can run a scheduled task to
convert approved expense sheets into invoices.

In order for a contractor to create an expense sheet, the labor category item must be configured with a
contractor expense line item (_ContractorExpensesItem line type as defined in the ProcureLineType.csv file).
In Ariba Administrator, the Category Manager sets policies that specify a total amount for expenses. An
expense line item can also be configured so that the supplier can adjust the expense amount for a proposed
candidate.

After a candidate is approved, the expense line item is generated from the proposed expense amount and
merged back to the requisition. After the requisition is approved, the expense line item is included on the
purchase order sent to the supplier.

An expense sheet is always associated with exactly one labor line item from a purchase order. The entries in
the expense sheet must be within the start and end dates specified on the labor line item on the purchase
order.

Each expense sheet essentially serves as a partial receipt for the associated labor line item. For example, if
the purchase order contained a contractor expense line item not to exceed $3,000, each expense sheet the
contractor submits is a partial receipt toward the $3,000 limit.

Creating Expense Sheets


Contractors create expense sheets directly in the Ariba Buyer user interface. To create an expense sheet, a
user must be defined as a valid contractor in the system and have the CreateContractorExpenseSheet
permission, and the labor line item the contractor is assigned to must allow expense reimbursement.
Alternatively, a user with the CreateContractorExpenseSheet permission can create expense sheets for a
valid contractor.

A contractor can only submit expenses that are defined for the labor line item.

Ariba Services Procurement Implementation Guide 87


Integration Events for Expense Sheets Chapter 8 Expense Sheets

Creating Invoices for Expense Sheets


After expense sheets have been approved, the supplier submits invoices against them or the hiring
organization can create invoices from the sheets automatically. Ariba Invoice then matches the invoices to
the purchase order and appropriate sheets. The invoice is then processed as any other invoice, with the sheet
treated as a receipt.

For more information on invoices and the steps involved with matching invoices to expense sheets, see the
Ariba Invoice Implementation Guide.

Integration Events for Expense Sheets


This section describes integration events that define expense sheet-related data. For descriptions of the CSV
files read by these integration events, see the Data Dictionary.

ContractorExpenseTypePull
The ContractorExpenseTypePull integration event (display name “Import Contractor Expense Types”)
defines contractor expense types in your configuration. In the default configuration, this integration event
reads data from the following files:

ariba/variants/Plain/partitions/None/data/ContractorExpenseType.csv
config/variants/Plain/partitions/None/data/ContractorExpenseType.csv

Following is an example of ContractorExpenseType.csv:

Cp1252
UniqueName,Name
"mileage","Mileage"
"carRental","Car Rental"
"airfare","Airfare"
"hotel","Hotel"
"taxi","Taxi"
"tolls","Tolls"
"meals","Meals"
"gas","Gas"
"parking","Parking"
"perDiem","Per Diem"
"phone","Phone"
"internet","Internet"
"miscellaneous","Miscellaneous"
"supplies","Supplies"
"tips","Tips"

This integration event is required during initialization of your configuration.

ContractorExpenseTypeLanguagePull
You can use the ContractorExpenseTypeLanguagePull integration event (display name “Import Contractor
Expense Type Translations”) to import translations for contractor expense types.

88 Ariba Services Procurement Implementation Guide


Chapter 8 Expense Sheets Scheduled Tasks for Expense Sheets

ProcureLineTypePull
The ProcureLineTypePull integration event (display name “Import Procurement Line Types”) defines the set
of procurement line types available in your configuration. One of these procurement line types is
_ContractorExpenseItem. Therefore, be sure to run the ProcureLineTypePull integration event.

For information on ProcureLineTypePull, see the Ariba Invoice Implementation Guide.

Scheduled Tasks for Expense Sheets


The scheduled tasks for time sheets are also work on expense sheets:
• DeferredTimeSheets (display name “Send Deferred Time and Expense Sheets”)
• FailedTimeSheets (display name “Send Failed Time and Expense Sheets”)
• StuckTimeSheets (display name “Send Stuck Time and Expense Sheets”)
• CreateInvoicesForTimeSheets (display name “Create Invoices For Time and Expense Sheets”)

For more information, see “Scheduled Tasks for Time Sheets” on page 82.

You can create multiple instances of the CreateInvoicesForTimeSheet scheduled task to combine both time
and expense sheets from the same partition on the same invoice, to process just one sheet type (for example,
only expense sheets), and to include or exclude suppliers. For more information, see
“CreateInvoicesForTimeSheet Task Customization” on page 83.

Approval Rules for Expense Sheets


You can tailor Ariba Services Procurement to follow your company’s business processes by modifying or
extending this default approval rule set.

In the default configuration, the JavaScript Expense Sheet Rules rule set (JavaScriptExpenseSheetRules.rul)
determines who approves expense sheets.

The following table describes the rules in the JavaScript Expense Sheet Rules rule set.

Rule Name Rule Type Description Enabled?


Manager Simple Add the requester’s manager. Yes

Contract Verifier Simple IF a contract is associated with the requester, THEN add Yes
members of the Contract Manager group.

Manager Before Everyone Constraint Place approval requests from the Manager rule first. Yes

Default Edit Rule Edit Edits are allowed but approval must restart.

For information on customizing approval rules, see the Ariba Spend Management Approval Rules Guide.

Ariba Services Procurement Implementation Guide 89


Approval Rules for Expense Sheets Chapter 8 Expense Sheets

90 Ariba Services Procurement Implementation Guide


Chapter 9 Administration

• “Ariba Administrator Workspaces and Tasks” on page 91


• “Log Message Categories” on page 92
• “Common Administration Tasks” on page 93

Ariba Administrator Workspaces and Tasks


The following table describes the workspaces and tasks in Ariba Administrator for managing Ariba Services
Procurement data. The Required Permission column shows the permissions that can access each workspace
and task.

Workspace and Task Use this task to ... Required Permission


Server Manager One of the following:
• SiteAdmin.ConfigurationFiles
• SiteAdmin.AdminClient
• ScheduledTasks
• IntegrationEvents
• ParametersEditor
• SiteAdmin.LogFilesAndSettings
• UserSessions

Parameters View and edit parameters. One of the following:


• ParametersEditor
• SiteAdmin.ConfigurationFiles
Data Import/Export Run integration events. One of the following:
• IntegrationEvents
• SiteAdmin.AdminClient
Scheduled Tasks Run scheduled tasks. One of the following:
• ScheduledTasks
• SiteAdmin.AdminClient
Log Settings Change logging levels for individual One of the following:
log categories. • SiteAdmin.LogFilesAndSettings
• SiteAdmin.ConfigurationFiles
Log Files View log messages in the main log One of the following:
file. • SiteAdmin.LogFilesAndSettings
• SiteAdmin.AdminClient
Customization Manager One of the following:
• RuleEditor
• SiteAdmin.TemplateEditor
• SiteAdmin.ClassEditor

Ariba Services Procurement Implementation Guide 91


Log Message Categories Chapter 9 Administration

Workspace and Task Use this task to ... Required Permission


Rule Editor View, add, modify, and delete RuleEditor
approval rules.
Category Definition Manager One of the following:
• CategoryManager
• CategoryDefinitionManager
Category Definitions View, add, modify, delete, validate,
import and export, and activate and
deactivate category definitions.

Category Import Logs View category import logs.

Category Items View category items.

Invoice Exception Types View, edit, add, and delete invoice One of the following:
exception types. For more • InvoiceAdministrator
information, see the Ariba Invoice
• InvoiceManager
Implementation Guide.
• PaymentManager
Generated Subscriptions View generated subscriptions, GeneratedCatalogSubscription
compare generated subscription
versions, and view and email
generated subscription errors.
Enumerations View, import, and export category
enumerations.

Category Drivers View, edit, and add category drivers.


Workforce Manager WorkforceManager

Contractors View, add, and modify contractors.


For more information, see
Chapter 6, “Contractors.”

Scheduled Tasks Run scheduled tasks related to time


sheets, expense sheets, and
contractors.

Log Message Categories


When working with Ariba Services Procurement, enable the following log categories to help understand and
troubleshoot problems.

Category Description
application.procurement.categoryProcurement Displays all messages related to category procurement
activity. If this log category results in too many messages,
you can selectively enable its sub-categories instead.
categoryDefinitionPropertyAccess A sub-category of the categoryProcurement log category,
this log category displays just those messages related to the
visibility and editability of category definition properties.

92 Ariba Services Procurement Implementation Guide


Chapter 9 Administration Common Administration Tasks

Category Description
categoryDefinitionPropertyCompliance A sub-category of the categoryProcurement log category,
this log category displays just those messages related to the
compliance of category definition property values.
categoryDefinitionPropertyUpdate A sub-category of the categoryProcurement log category,
this log category displays just those messages related to the
updating of category definition property values.
collaboration Displays all messages related to collaboration activity. This
log category has no sub-categories.

workforce Displays all messages related to time sheet and contractor


activity. This log category has no sub-categories.

Common Administration Tasks


This section describes how to use Ariba Administrator to manage generated subscriptions and contractors.

Managing Generated Subscriptions


Subscriptions are generated from category definitions. A subscription is activated when the category
definition is activated, and is deactivated when the category definition is deacativated.

You use the Generated Subscriptions task in the Category Definition Manager workspace to manage
generated subscriptions.

Viewing Generated Subscriptions

 To view generated subscriptions:


1 Click List All to display all subscriptions, or enter a search criteria and click Search to view the search
results.
2 To view a specific subscription:
• To view all versions of a subscription, click a link in the Subscription Name column.
• To view any errors and warnings, click a subscription’s link in the Version column.
• To view subscriptions that contain errors or require attention, click any red exclamation mark.
• To review the status history of a contract subscription, click a subscription’s link in the Status column.
• To view details about a supplier, click a link in the From Supplier column.
• To view the content of a subscription, click the link in the # of Items column.
3 Click Generated Subscription Home to return to the Generated Subscriptions page.

Ariba Services Procurement Implementation Guide 93


Common Administration Tasks Chapter 9 Administration

Comparing Generated Subscription Versions

 To compare contract subscriptions:


1 Select versions to compare:
• Select the new subscription version in the Select Version to Compare chooser. This field is marked with
Currently viewed version to indicate the newer version.
• Select an activated version of the same subscription in the Select Version to Compare Against chooser.
This field should contain the older subscription. Or select All active items to compare the subscription
version against all activated items in the subscription.
2 Select a comparison criteria in the Separately List Items with chooser. For example, to view any prices
changes, choose a Price Change of More Than.
3 Enter a value in the% field.

4 Click Compare to generate a report comparing the subscription versions, or Generated Subscription Home to
return to the previous page without comparing the versions.

Viewing Generated Subscription Errors

 To view generated subscription errors:


1 Select a subscription in the Version column.

2 To review the errors or warnings:


• By default, errors of every severity and type are displayed. To change which errors are displayed, click
Change.
• Errors are displayed in a summarized view, with all the errors of the same type summarized together on
one line. To view each error for every item, click Error Display and choose Expanded. To view the
summary again, choose Summarized.
3 To print errors for review, select one or more check boxes and click Print Errors. The errors you selected
are displayed in a browser window. Select your browser's print command to print the errors.
4 Click Generated Subscription Home to return to the Generated Subscription page.

If a subscription contains an item with an error or fails to load correctly into Ariba Administrator, it will
have the status of Validation Error. To correct errors, you must edit the original contract request.

Emailing Subscription Errors and Warnings


You can email a maximum of 2000 errors or warnings at one time. The most common recipient of a contract
subscription error email is the contract manager at your company.

 To email subscription errors or warnings:


1 Select a subscription in the Version column.

2 Select one or more check boxes and click Email Errors.

3 Enter recipients email addresses in the To, CC, and Bcc fields.

4 Review or modify the Subject field.

94 Ariba Services Procurement Implementation Guide


Chapter 9 Administration Common Administration Tasks

5 Review the Message field text. By default, the message field contains a summary of the number of each
kind of error, the number of errors selected to be sent in the email and the severity, line number and
description of each error.
6 Edit the default information and add your own comments as necessary.

7 Choose a format to attach the subscription file. You do not have to attach the file to send the email
message.
8 To add additional errors to the email message, click Add Errors.

9 Click Send to send the email message, or Cancel to return to the previous page without sending the email
message. A confirmation message appears when the email message is sent.

Managing Contractors
You use the Contractors task in the Workforce Manager workspace to manage contractors.

Adding or Modifying a Contractor


In most cases, you do not need to create contractors in Ariba Administrator because they are created
automatically from labor line items on purchase orders. However, if the purchase order mistakenly specified
an existing contractor, or if you mistakenly moved a contractor's line items to another contractor and deleted
the old contractor, you must create the contractor manually and move the items from the incorrect contractor
to the contractor you are creating.

When you create a contractor, you specify the user on which this contractor is based. Therefore, you must
create the user before you create the contractor.

 To add or modify a contractor:


1 Click Create New to add a contractor, or find the contractor you want to modify and click Edit.

2 On the General tab, enter or modify the general contractor information.

Column Description
Name The contractor’s unique name.

Contractor ID The contractor’s unique ID. The unique name and unique ID are used together to identify
the contractor in the system.

User The user on which the contractor is based. After you select a user, information about the
user is automatically displayed on the Shared User General Info and Shared User
Permissions tabs.

Do Not Hire (Optional) Specify whether the contractor should not be hired. Only the Workforce
Manager can use the Do Not Hire search filter on the Contractors screen to generate a list of
contractors who are designated as not to be hired.

Reason If you select Do Not Hire, provide a reason. Only the Workforce Manager and Contract
Manager have access to the reason. The hiring manager and supplier do not see this
information.

Note: When you create a contractor, the consecutive onsite days and current sit days (which are related to
contractor time tracking and co-employment risk issues) are zero. This read-only data is updated by the
ComputeConsecutiveOnSiteDays and RecomputeConsecutiveOnSiteDays scheduled tasks.

Ariba Services Procurement Implementation Guide 95


Common Administration Tasks Chapter 9 Administration

3 On the Labor Line Items tab, do one of the following:


• To move all items from another contractor to this one, click Move All From Another Contractor.
• To move one or more items (but not all) from another contractor, click Save to save this contractor, edit
the contractor that contains the items you want to move to this contractor, and then select the items you
want to move to this contractor and click Move To Another Contractor.
4 Click Save to save the new contractor, or click Cancel to return to the previous page without saving the
new contractor.

Moving Line Items Between Contractors


Typically, you move line items between contractors when the contractor was specified incorrectly on the
purchase order. For example, if the purchase order has the correct name of an existing contractor but the
incorrect contractor ID, a new contractor is generated automatically instead of assigning the line items to the
correct existing contractor. In this case, you can move all line items from the generated contractor to the
correct existing contractor and delete the generated contractor, all in one operation.

If the purchase order specified the wrong existing contractor, you can move just the labor line item(s) for that
purchase order from the incorrect contractor to the correct contractor. If the purchase order should have
created a new contractor instead of specifying an existing contractor, you must create the new contractor
manually, and then move the appropriate line items from the existing contractor to the new contractor.

Note: Never move lines between contractors if time sheets have been created for that contractor for a given
labor line.

 To move a line item between contractors:


1 In the Contractors page, do one of the following:
• If you want to move all items from one contractor to another, click Edit next to the contractor that will
receive the items.
• If you want to move one or more items but not all, click Edit next to the contractor from which you are
moving the items.
2 Review the labor line items and do one of the following:
• To move items from another contractor to this one, click Move All From Another Contractor.
• To move items from this contractor to another one, select the line item(s) you want to move to the other
contractor and then click Move To Another Contractor.
3 Click Select next to the contractor that will give or receive the items, depending on the button you clicked
in step 2.
4 If you are moving all items from another contractor, specify whether to delete the contractor whose line
items you are moving.

Note: If you make a mistake when moving line items between contractors, you can simply move them
back. However, if you mistakenly deleted the contractor, you must create the contractor again before you
can move the items back.

5 Click OK.

6 Click Save to save the new contractor, or click Cancel to return to the previous screen without saving the
new contractor.

96 Ariba Services Procurement Implementation Guide


Chapter 10 Common Metadata XML Customizations

• “Preserving User-Entered Values” on page 97


• “Adding File Attachment Fields” on page 98
• “Auto-Calculating Fields” on page 98
• “Adding a Property as a Requisition Header Field” on page 99
• “Controlling Visibility and Editability in the Category” on page 99
• “Enforcing Validation on a Field” on page 100
• “Filtering Suppliers” on page 101
• “Customizing Over-Acceptance” on page 101
• “Hiding Field Links from Suppliers” on page 102
• “Creating Field Tips” on page 102
• “Defining a Collaboration Team” on page 102
• “Customizing Orders” on page 103
• “Customizing the Labor Configuration File” on page 103
• “Updating Copied Temporary Labor Items on Requisitions” on page 103
• “Customizing Requisition Numbering” on page 104
• “Customizing the List of Invited Suppliers” on page 105

Preserving User-Entered Values


When adding a field to the contractible or global item properties, you should set the respectable field
attribute to true. Otherwise, if a user enters a value for the field and then changes an ordering attribute such
as the region, the user’s value will be overwritten if the new ordering attribute they select specifies a different
policy for that field.

For example:

<field name="BillRate"
respectable="true">
...
</field>

Ariba Services Procurement Implementation Guide 97


Adding File Attachment Fields Chapter 10 Common Metadata XML Customizations

Adding File Attachment Fields


You can create a field that allows a user to attach a file to the requisition. For example, you might want to
allow users to attach a job description or statement of work document to the requisition header. These types
of fields are called file attachment fields.

You add a file attachment field using the class ariba.app.util.Attachment and the field controller
ariba.htmlui.approvableui.fields.ARFAttachment. For example, the Project Labor category driver includes
the field SOW Attachment in the requisition header:

<class
name="ariba.spendcategory.projectlabor.core.ManagementConsultingSharedGlobalItemProperties"
prefix="MSGP"
super="ariba.procure.core.SharedGlobalItemProperties"
partitioned="false"
...
<field name="SOWAttachment"
privacy="documented"
nullAllowed="true">
<type class="ariba.app.util.Attachment"/>
<properties label="SOW Attachment"
controller="ariba.htmlui.approvableui.fields.ARFAttachment"/>
</field>

Auto-Calculating Fields
In some cases, you might need to auto-calculate fields, so that their value is populated based on the value of
another field and is updated when another field changes. For example, the Labor category driver has the
fields Bill Rate, Pay Rate, Markup Amount, and Markup Percent. The Bill Rate is the sum of the Pay Rate
plus the Markup Amount, or if the markup is a percentage, the Bill Rate is the product of the Pay Rate
multiplied by the Markup Percent.

To auto-calculate a field, you create a Java file that performs the calculation, and then update the field using
a trigger and/or the ProcureCategoryUtil method calculateDependentFields. For example, the Consulting
category driver uses this trigger to update the quantity and price fields when the hours per week change:

<trigger
name="UpdateQuantityAndPriceOnHoursChange"
event="FieldChange"
field="HoursPerWeek">
<action implementation =
"ariba.spendcategory.consulting.core.action.UpdateQuantityAmountOnHoursOrDateChange"/>
</trigger>

You should only use triggers to auto-calculate fields that are not contractible properties. For contractible
properties, use calculateDependentFields instead.

98 Ariba Services Procurement Implementation Guide


Chapter 10 Common Metadata XML Customizations Adding a Property as a Requisition Header Field

Adding a Property as a Requisition Header Field


A shared global item property (referred to as a shared header field in the Category Drivers task in Ariba
Administrator) is a requisition header field. It appears in the header of the requisition instead of at the line
item level, and it applies to all line items on the requisition that belong to the same category.

When you create a new shared global item property, you add it to the AggregatedCategoryItemsDetails
group to enable it to display with the other requisition header fields in the user interface, including the Add
Items and Checkout pages. If the requisition contains collaborative line items, the shared global item
property also appears on the collaboration request and proposal.

Controlling Visibility and Editability in the Category


To allow a field’s visibility and editability to be set at the category definition level, you add it to one of the
following groups, depending on the type of field:

Type of Field Group


CategoryLineItemDetails LineItemDetailsMetaProperties

SharedGlobalItemProperties CategoryDefinitionPermissionProperties

GlobalItemProperties CategoryDefinitionEditItemProperties

or

ContractibleProperties

When you add a field to one of these groups, they appear in the Category Definition Manager workspace in
Ariba Administrator. However, you must also add the editability and visibility conditions to the field.

For example, to all the visibility and editability of the contractible property field Rate to be controlled in the
category definition, you would add the field to the CategoryDefinitionEditItemProperties group, and then
you could add editability and visibility conditions like this:

<groupField name="ConsultingContractibleProperties.Rate">
<editability>
<condition implementation="ariba.procure.core.condition.CategoryPropertyEditability"/>
</editability>
<visibility>
<condition implementation="ariba.procure.core.condition.CategoryPropertyVisibility"/>
</visibility>

Note that even when you specify the group field name using dotted path notation as in this example, only the
last path element is used to look up the field. Therefore, you should ensure that all field names within a
category are unique. For example, if you had a contractible property field and a global item property field
both named Rate, a conflict would occur.

To display a field only if the item is the default item type instead of a milestone, expense, or fixed fee, set the
IsRegularCategoryItem condition. For example:

<visibility>
<condition implementation="ariba.procure.core.condition.IsRegularCategoryItem"/>
</visibility>

Ariba Services Procurement Implementation Guide 99


Enforcing Validation on a Field Chapter 10 Common Metadata XML Customizations

When adding the condition, you can specify it at the class level when defining the field, or you can specify it
at the field level when adding the field to a group. If you specify any conditions at the field level, however,
you override the conditions at the class level, so you must repeat all conditions from the class level at the
field level. Alternatively, you can set the ClassLevelEditability and ClassLevelVisibility conditions to
pick up the editability and validity conditions from the class level.

Enforcing Validation on a Field


When you create a new field, you can require that the field must be valid before the requisition or
collaboration document can be submitted. To enforce this validation, you put the validation condition at the
CategoryLineItemDetails (or subclass) class level and not in a group. If you want the validation to apply
only to certain ClusterRoots, you use the clusterType property.

For collaborative items, you typically enforce validation for both the requisition and for a
CollaborationDocument object. You should provide the same label property value as the aliased field. One
way to do this is to set up a derived field that has an alias path to the subfield. Following is an example:

<derived>
<field name="BillRate"
aliasPath="LaborContractibleProperties.BillRate"
privacy="private"
nullAllowed="true">
<type class="ariba.procure.core.QualifiedMoney"/>
<validity clusterType="ariba.purchasing.core.Requisition">
<orCondition>
<notCondition>
<condition
implementation="ariba.procure.core.condition.IsRegularCategoryItem"
testField="this"/>
</notCondition>
<andCondition>
<condition
implementation="ariba.procure.core.condition.CategoryPropertyCompliance"
testField="this">
<parameter name="PropertyFieldPath"
value="ContractibleProperties.BillRate"/>
</condition>
<condition implementation="ariba.workforce.core.condition.ValidBillRate"
testField="this"/>
</andCondition>
</orCondition>
</validity>
<validity clusterType="ariba.collaboration.core.CollaborationDocument">
<orCondition>
<notCondition>
<condition
implementation="ariba.procure.core.condition.IsRegularCategoryItem"
testField="this"/>
</notCondition>
<andCondition>
<condition
implementation="ariba.procure.core.condition.CategoryPropertyCompliance"
testField="this">
<parameter name="PropertyFieldPath"
value="ContractibleProperties.BillRate"/>
</condition>
<condition implementation="ariba.workforce.core.condition.ValidBillRate"
testField="this"/>

100 Ariba Services Procurement Implementation Guide


Chapter 10 Common Metadata XML Customizations Filtering Suppliers

</andCondition>
</orCondition>
</validity>
<properties label="@aml.Workforce/LaborBillRateLabel"/>
</field>
</derived>

Note that you may need to duplicate the validation for the field either in the group LineItemDetailsGeneral
or at the class level (LaborContractibleProperties.BillRate field in the previous example), to ensure that
the validation error is visible on the Edit Line Items page. This is because the derived field is not shown in
the group—the actual field itself is shown.

Filtering Suppliers
In the default configuration, the FilterInvalidInvitedSuppliers group filters out ranked suppliers that are
invalid in a partition. For example, in SAP partitions, the supplier must be in the same PurchaseOrg as the
line item, and in PeopleSoft partitions, the Supplier SetID for the Business Unit must be the same as the line
item. You can add more validity conditions to this group to customize how ranked suppliers are filtered in
partitions.

If the category specifies that all suppliers are allowed, you can create partition-specific filtering by using a
custom nametable on the CategoryLineItemDetails.CustomRankedSupplier field.

Customizing Over-Acceptance
In the default configuration, when a member of the collaboration team accepts multiple candidates or
proposals for a single requisition line item, an error is displayed indicating that only one proposal or
candidate can be accepted. (Items added by the supplier are not included in this validation.) However, you
can customize this behavior so that over-acceptance is a warning instead of an error.

To change over-acceptance to a warning, you set the IsError parameter in the validity condition to false in
the CheckOverAcceptance, AcceptProposalConfirmation, and AcceptProposalConfirmation_WithAcceptedFlag
groups. You also change the MessageKey value from CandidateOverAcceptanceError to
CandidateOverAcceptanceWarning in the CheckOverAcceptance group. For example,

<group name="CandidateOverAcceptance">
<groupClass name="ariba.workforce.core.LaborCollaborationLineItemDetails">
<groupField name="LineItem.NumberInCollection">
<validity>
<condition
implementation="ariba.collaboration.core.condition.CheckOverAcceptance"
testField="LineItem">
<parameter name="IsError" value="false"/>
<parameter name="MessageTable" value="aml.Workforce"/>
<parameter name="MessageKey" value="CandidateOverAcceptanceWarning"/>
</condition>
</validity>
...
</groupField>
</groupClass>
</group>

Ariba Services Procurement Implementation Guide 101


Hiding Field Links from Suppliers Chapter 10 Common Metadata XML Customizations

Hiding Field Links from Suppliers


When you create a field using the field controller ARFObject, the field value is displayed as a link to more
information about the object. For example, a field that specifies a user would display the user name as a
hyperlink. When the hyperlink is clicked, detailed information about the user display as, including the
organization chart.

To prevent external users such as suppliers from viewing the additional information, you set the
hideLinkForExternalUsers property on the field to true so that any user logged in as an external user sees the
object as plain text, not as a hyperlink. For example, in the default configuration, the Requester field is
specified like this:

<field name="Requester"
hideLinkForExternalUsers="true"
...</field>

Creating Field Tips


A field tip is text that displays when you position your pointer over the question mark icon next to a field.
Field tips are an excellent way to describe to users how to use your custom fields. In some cases, the label
might seem self-explanatory, but the field tip ensures that the users knows exactly what type of value to enter
in the field.

Depending on the settings on the user’s computer, field tips display for only a few seconds. Therefore, you
should make the field tip as concise as possible so that the user can read and understand the tip quickly.

To create a field tip, you add the helpTip property to the field’s definition in the metadata XML. For
example, the Bill Rate field in the Labor category driver defines a field tip as follows:

<field name="BillRate"
respectable="true">
...
<properties helpTip="@aml.workforce.fieldtip/LaborBillRateTip"
label="@aml.Workforce/LaborBillRateLabel"
...
</field>

In this case, the actual text that displays is defined externally so that it can be translated.

Defining a Collaboration Team


You can customize a category definition to includes fields for defining the collaboration team, and then
create a rule to extract the team and create the approval nodes. For an example of how to create this
customization, see the README.TXT file located in the
BuyerServerRoot/sample/collaboration/collaborationteam directory.

102 Ariba Services Procurement Implementation Guide


Chapter 10 Common Metadata XML Customizations Customizing Orders

Customizing Orders
For outgoing orders being sent to Ariba SN, you can include extrinsics in the order header by adding those
extrinsics to the group CategoryHeaderExtrinsics. Additionally, you can customize the order formatter
template.

For general information on how to customize cXML templates, see Ariba Spend Management Channels
Guide.

Customizing the Labor Configuration File


The labor configuration file. ariba/variants/Plain/workforce/LaborCompliance.lcf, is an XML file that
defines the billable and non-billable pay codes for each labor territory or sublocation. You can override this
file by modifying the labor configuration extension file, config/LaborComplianceExt.lcf.

For information on the XML elements that can appear in the labor configuration extension file, see the DTD
file at ariba/workforce/core/laborComplianceExt.dtd.

You can use the parameter Application.Workforce.LaborComplianceExtensionFile to specify the location of


a partition-specific labor configuration extension file. If this parameter is not set, the default rules (as defined
by ariba/variants/Plain/workforce/LaborCompliance.lcf and config/LaborComplianceExt.lcf) are used.

You can also override the default labor compliance engine, which is defined in the class
ariba.workforce.core.LaborComplianceEngine. For more information, see “Labor Compliance Engine” on
page 166.

Note: The multipliers in the default labor configuration files are merely annotations. They are included for
completeness so that those creating compliance rules will be familiar with the ramifications of using a pay
code.

Updating Copied Temporary Labor Items on Requisitions


When a user copies a temporary labor line item on a requisition, changing the PayRate or BillRate on the
copied item and then clicking Calculate does not update the values. This behavior is defined in the metadata
XML group called PreventOverridingACPFieldValuesOnCopy.

When a field in the PreventOverridingACPFieldValuesOnCopygroup is copied, the “user set” flag is turned on
for that field to prevent default policies from overriding user-entered data. For temporary labor items, Ariba
Buyer runs consistency calculations to ensure that PayRate + Markup = BillRate. When a user changes both
the BillRate and the PayRate, one field is usually chosen to override the other. If there is a Markup present,
PayRate is overridden. If no Markup is present, BillRate is overridden.

To modify this behavior for copied line items, you can write a metadata XML extension that removes the
field you typically want to be overridden from the PreventOverridingACPFieldValuesOnCopy group. If either
the PayRate or BillRate is editable (but not both), remove the non-editable field from the
PreventOverridingACPFieldValuesOnCopy group.

Important: Never remove both BillRate and PayRate from the PreventOverridingACPFieldValuesOnCopy
group. If both fields are removed, default policies will override user-entered values.

Ariba Services Procurement Implementation Guide 103


Customizing Requisition Numbering Chapter 10 Common Metadata XML Customizations

For example, if BillRate is editable but PayRate is not, remove PayRate from the group. In the following
example, PayRate is removed from the PreventOverridingACPFieldValuesOnCopy group.

<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE extension SYSTEM "../../../../ariba/base/meta/core/extensions.dtd">
<extension name="config.variants.vcsv.extensions.WorkforceExt1">
<inModule name="ariba.workforce.core.Workforce">
<group name="PreventOverridingACPFieldValuesOnCopy">
<groupClass name="ariba.workforce.core.LaborLineItemDetails">
<groupField name="LaborContractibleProperties.PayRate">
<properties hidden="true"/>
</groupField>
</groupClass>
</group>
</inModule>
</extension>

If both PayRate and BillRate are editable, a user can clear the field to be overridden (by making the field
empty), set the other field, and then click Calculate to update the cleared value.

Customizing Requisition Numbering


If you require finer granularity in requisition numbers, you can customize Requisition approvable document
numbering. For example, you can prepend an indexId to the requisition number.

When Ariba Buyer sends a collaboration request to Ariba SN, it generates the collaborationId from the
requisition number. Ariba SN does not allow spaces in the collaborationId. Therefore, if requisition
numbering is customized in your configuration, make sure the indexId does not contain spaces.

Following is an example of the error generated by Ariba SN when a collaborationId contains spaces:

<!DOCTYPE cXML SYSTEM "http://svcitg.ariba.com/schemas/cXML/1.2.018/Private.dtd">


<cXML timestamp="2008-03-18T13:27:59-07:00"
payloadID="[email protected]">
<Response>
<Status code="406" text="Not Acceptable">Invalid Document:Attribute value &quot;PR -
CSV10283-R10030&quot; of type NMTOKEN must be a name token. at line 36, column 141</Status>
</Response>
</cXML>

For more information on approvable document numbering, see the Ariba Buyer Configuration Guide.

104 Ariba Services Procurement Implementation Guide


Chapter 10 Common Metadata XML Customizations Customizing the List of Invited Suppliers

Customizing the List of Invited Suppliers


You can remove invalid suppliers from the list of invited suppliers by adding a validity condition to the
FilterInvalidInvitedSuppliers group in a variant-specific metadata XML extension file. For example, the
following metadata XML extension filters out suppliers that are not valid for a given catalog item’s SAP
purchasing organization:

<group name="FilterInvalidInvitedSuppliers">
<groupClass name="ariba.procure.core.RankedSupplierValidation">
<groupClassVariant name="vsap">
<groupField name="RankedSupplier.PartitionedSupplier">
<validity>
<orCondition>
<condition implementation="ariba.common.core.condition.DirectSupplier"
nullHandling="forceFalse"/>
<condition
implementation="ariba.common.core.condition.ObjectMatchingQuery"
nullHandling="forceFalse">
<parameter name="AdditionalClasses"
value="ariba.core.PorgSupplierCombo"/>
<parameter name="AQLCondition"
value="PorgSupplierCombo.Supplier = :Supplier
AND PorgSupplierCombo.PurchaseOrg =
:PurchaseOrg"/>
<parameter name="Supplier"
inputField="RankedSupplier.PartitionedSupplier"
nullHandling="forceTrue"/>
<parameter name="PurchaseOrg"
inputField="LineItem.PurchaseOrg"
typeCast="ariba.core.PurchaseOrg"
nullHandling="forceTrue"/>
<parameter name="IgnoreQueryCache"
value="false"/>
</condition>
</orCondition>
</validity>
</groupField>
</groupClassVariant>
</groupClass>

You can override the list of invited suppliers by creating a custom Java class that implements the
ariba.procure.core.category.CustomInvitedSuppliers interface and specifying it in the
Application.CategoryProcurement.CustomInvitedSuppliersImplementation parameter.

The CustomInvitedSuppliers interface returns the list of InvitedSuppliers (which includes only required
RankedSuppliers if the requiredSuppliersOnly Boolean is set to true), as calculated by ordering attributes
and category definition mappings for a given line item. For more information on the CustomInvitedSuppliers
interface, see the Javadoc.

Ariba Services Procurement Implementation Guide 105


Customizing the List of Invited Suppliers Chapter 10 Common Metadata XML Customizations

106 Ariba Services Procurement Implementation Guide


Appendix A Groups, Roles, and Permissions

• “Required Permissions for Ariba Services Procurement” on page 107


• “Default Roles for Ariba Services Procurement” on page 111
• “Default Groups for Ariba Services Procurement” on page 114

Required Permissions for Ariba Services Procurement


This section describes the permissions required to perform Ariba Services Procurement tasks.

AddCustomInvitedSupplier
When a catalog item allows custom-invited suppliers (suppliers that are not available from the Invited
Suppliers list), any user with edit capability can add a supplier prior to collaboration. You can configure the
Application.CategoryProcurement.AddCustomInvitedSupplierPermission parameter to limit the users that
can add custom-invited suppliers to users who have a specific permission. This permission is provided for
this purpose.

In the default configuration, this permission is assigned to the Add Custom Invited Supplier role.

CategoryManager
This permission gives users access to the Category Definition Manager workspace in Ariba Administrator.
In the default configuration, this permission is assigned to the Workforce Manager role.

CategoryCatalogTypeImpactReport
This permission is no longer used in this release.

CategoryDefinitionManager
Users who have this permission can use the Category Definition Manager workspace in Ariba
Administrator. In the default configuration, this permission is assigned to the Category Definition Manager
role.

ChangeSuppliersWhileCollaborating
When Ariba Services Procurement is configured to allow supplier changes during collaboration, any
member of the collaboration team and the requester can change suppliers during collaboration. You can
configure the Application.CategoryProcurement.ChangeSuppliersWhileCollaboratingPermission parameter
to limit the users that can change suppliers during collaboration to users who have a specific permission.
This permission is provided for that purpose.

Ariba Services Procurement Implementation Guide 107


Required Permissions for Ariba Services Procurement Appendix A Groups, Roles, and Permissions

In the default configuration, this permission is assigned to the following roles:


• Change Suppliers While Collaborating
• Collaboration Super User

ContractorExpenseSheetManager
This permission is used for authorization. Users who have this permission are able to view and change all
contractor expense sheets in the system. In the default configuration, this permission is assigned to the
Contractor Expense Sheet Manager role.

ContractorSurveyManager
This permission is used for authorization. Users who have this permission can view, edit, and delete
contractor surveys in Ariba Administrator. In the default configuration, this permission is assigned to the
Contractor Survey Manager role.

CreateCategory
This permission is required for users to create new categories. In the default configuration, this permission is
assigned to the following roles:
• Category Definition Manager
• Workforce Manager

CreateContractorExpenseSheet
This permission is used for authorization. Users who have this permission are able to create contractor
expense sheets. In the default configuration, this permission is assigned to the following roles:
• Create Contractor Expense Sheet
• Contractor Expense Sheet Manager

A contractor must be assigned this permission explicitly.

108 Ariba Services Procurement Implementation Guide


Appendix A Groups, Roles, and Permissions Required Permissions for Ariba Services Procurement

CreateContractorSurvey
This permission is used for authorization. Users who have this permission are able to evaluate a contractor’s
work by creating a contractor survey. In the default configuration, this permission is assigned to the
following roles:
• Contractor Survey Manager
• Create Contractor Survey

This permission is automatically assigned to the hiring manager when the SendSurveyNotification
scheduled task is run.

CreateRequisition
This permission is used for authorization. You might want to use this permission in ApprovableType.csv to
prevent contractors from creating requisitions. In the default configuration, this permission is assigned to the
following roles:
• Internal
• Purchasing User

CreateTimeSheet
This permission is used for authorization. Users who have this permission are able to create contractor time
sheets. In the default configuration, this permission is assigned to the following roles:
• Create Time Sheet
• Time Sheet Manager

Contractors and the Create Time Sheet role have this permission by default.

EditCategory
This permission enables users to modify any category in the Category Definition Manager in Ariba
Administrator. By default, only users who are specified as category owners in a particular category
definition can edit that category definition. This permission allows a user to edit any category, even ones for
which the user is not the category owner. In the default configuration, this permission is assigned to the
Category Definition Manager role.

EndCollaboration
Typically, any member of the collaboration team and the requester can end a collaboration. You can
configure the Application.CategoryProcurement.EndCollaborationPermission parameter to limit the users
that can end a collaboration to users who have a specific permission. This permission is provided for that
purpose. In the default configuration, this permission is assigned to the following roles:
• Collaboration Super User
• End Collaboration

Ariba Services Procurement Implementation Guide 109


Required Permissions for Ariba Services Procurement Appendix A Groups, Roles, and Permissions

External
Ariba Services Procurement uses this permission to identify users that are external to your buying
organization. For example, when a supplier punches in to Ariba Buyer from Ariba SN to view a
collaborative requisition, Ariba Buyer creates a supplier user and assigns it to this group. In addition, some
sample procurement category definitions specify that users with the External permission can view and edit
certain category item properties.

In the default configuration, this permission is assigned to the External role.

For information on enabling suppliers to punch in to Ariba Buyer from Ariba SN so that they can
collaborate, see the Ariba Spend Management Integration Guide.

GeneratedCatalogSubscription
This permission is used for access to view the Generated Subscription task of the Catalog Manager
workspace in Ariba Administrator. Generated subscriptions are created from contract requests for
non-catalog items on item level contracts and for procurement category definitions. In the default
configuration, this permission is assigned to the following roles:
• Catalog Manager
• Contract Manager
• Category Manager

Internal
Ariba Services Procurement uses this permission to identify users that are part of your internal buying
organization. For example, some sample procurement category definitions specify that only users who have
the Internal permission can view and edit certain category item properties. In the default configuration, this
permission is assigned to the Internal role

SupplierChangePO
This permission is reserved for future use.

SupplierInvoice
This permission is reserved for future use.

SupplierReceive
This permission is reserved for future use.

110 Ariba Services Procurement Implementation Guide


Appendix A Groups, Roles, and Permissions Default Roles for Ariba Services Procurement

TimeSheetManager
This permission is used for authorization. Users who have this permission are able to view and change all
contractor time sheets in the system. In the default configuration, this permission is assigned to the Time
Sheet Manager role.

ViewContractorSurvey
This permission is used for authorization. Users who have this permission can view and remove contractor
surveys associated with a labor order. In the default configuration, this permission is assigned to the
following roles:
• Contractor Survey Manager
• View Contractor Survey
• Workforce Manager

WorkforceManager
This permission is used for authorization. Users who have this permission can use the Workforce Manager
workspace in Ariba Administrator. In the default configuration, this permission is assigned to the following
roles:
• Buyer Administrator
• Workforce Manager

Default Roles for Ariba Services Procurement


This section describes the roles provided in the default configuration for Ariba Services Procurement.

Add Custom Invited Supplier


In the default configuration, this role contains the AddCustomInvitedSupplier permission.

Category Definition Manager


In the default configuration, this role contains the following permissions and subroles:
• CategoryCatalogTypeImpactReport
• CategoryDefinitionManager
• CreateCategory
• EditCategory
• GeneratedCatalogSubscription
• Workforce Manager (subrole)

Ariba Services Procurement Implementation Guide 111


Default Roles for Ariba Services Procurement Appendix A Groups, Roles, and Permissions

Category Definition Template Manager


This role is reserved for future use.

Category Management
In the default configuration, this role contains the DashboardAuthorized permission.

Category Manager
This role is deprecated in this release. The Category Definition Manager role replaces this role.

Change Suppliers While Collaborating


In the default configuration, this role contains the ChangeSuppliersWhileCollaborating permission.

Collaboration Super User


In the default configuration, this role contains the following permissions:
• ChangeSuppliersWhileCollaborating
• EndCollaboration

Contractor Expense Sheet Manager


In the default configuration, this role contains the following permissions:
• CreateContractorExpenseSheet
• EditApprovable
• ContractorExpenseSheetManager

Contractor Survey Manager


In the default configuration, this role contains the following permissions:
• ContractorSurveyManager
• CreateContractorSurvey
• EditApprovable
• ViewContractorSurvey

Create Contractor Survey


In the default configuration, this role contains the CreateContractorSurvey permission.

112 Ariba Services Procurement Implementation Guide


Appendix A Groups, Roles, and Permissions Default Roles for Ariba Services Procurement

Create Contractor Expense Sheet


In the default configuration, this role contains the CreateContractorExpenseSheet permission.

Create Time Sheet


In the default configuration, this role contains the CreateTimeSheet permission.

End Collaboration
In the default configuration, this role contains the EndCollaboration permission.

External
In the default configuration, this role contains the External permission.

Internal
In the default configuration, this role contains the following permissions:
• CreateExpenseReport
• CreateRequisition
• CreateTravelAuthorization
• CreateTravelProfile
• Internal

Supplier Collaboration User


In the default configuration, this role contains the External permission.

Supplier Manage Order User


This role is reserved for future use.

Time Sheet Manager


In the default configuration, this role contains the following permissions:
• CreateTimeSheet
• EditApprovable
• TimeSheetManager

View Contractor Survey


In the default configuration, this role contains the ViewContractorSurvey permission.

Ariba Services Procurement Implementation Guide 113


Default Groups for Ariba Services Procurement Appendix A Groups, Roles, and Permissions

Workforce Manager
In the default configuration, this role contains the following permissions:
• CategoryCatalogTypeImpactReport
• CategoryManager
• CreateCategory
• GeneratedCatalogSubscription
• ViewContractorSurvey
• WorkforceManager

Default Groups for Ariba Services Procurement


This section describes the groups provided in the default configuration for Ariba Services Procurement.

Add Custom Invited Supplier


When a catalog item allows custom-invited suppliers (suppliers that are not available from the Invited
Suppliers list), any user with edit capability can add a supplier prior to collaboration. You can configure the
Application.CategoryProcurement.AddCustomInvitedSupplierGroup parameter to limit the users that can
add custom-invited suppliers to users who belong to a specific group. This group is provided for this
purpose.

In the default configuration, this group contains the Add Custom Invited Supplier role.

Category Definition Manager


In the default configuration, this group contains the Category Definition Manager role.

Category Definition Template Manager


This group is reserved for future use.

Category Manager
This group is deprecated in this release. The Category Definition Manager group replaces this group.

Change Suppliers While Collaborating


When Ariba Services Procurement is configured to allow supplier changes during collaboration, any
member of the collaboration team and the requester can change suppliers during collaboration. You can
configure the Application.CategoryProcurement.ChangeSuppliersWhileCollaboratingGroup parameter to
limit the users that can change suppliers during collaboration to users who belong to a specific group. This
group is provided for that purpose.

In the default configuration, this group contains the Change Suppliers While Collaborating role.

114 Ariba Services Procurement Implementation Guide


Appendix A Groups, Roles, and Permissions Default Groups for Ariba Services Procurement

Contractor Survey Manager


In the default configuration, this group contains the Contractor Survey Manager role.

Collaboration Super User


In the default configuration, this group contains the Collaboration Super User role.

Contractor Expense Sheet Manager


In the default configuration, this group contains the Contractor Expense Sheet Manager role.

Create Contractor Survey


In the default configuration, this group contains the Create Contractor Survey role.

Create Contractor Expense Sheet


In the default configuration, this group contains the Create Contractor Expense Sheet role.

Create Time Sheet


In the default configuration, this group contains the Create Time Sheet role.

End Collaboration
Typically, any member of the collaboration team and the requester can end a collaboration. You can
configure the Application.CategoryProcurement.EndCollaborationGroup parameter to limit the users that
can end a collaboration to users who belong to a specific group,. This group is provided for that purpose.

In the default configuration, this group contains the End Collaboration role.

External
In the default configuration, this group contains the External role.

Internal
In the default configuration, this group contains the Internal role.

Supplier Collaboration User


In the default configuration, this group contains the Supplier Collaboration User role.

Ariba Services Procurement Implementation Guide 115


Default Groups for Ariba Services Procurement Appendix A Groups, Roles, and Permissions

Supplier Manage Order User


This group is reserved for future use.

Time Sheet Manager


In the default configuration, this group contains the Time Sheet Manager role.

View Contractor Survey


In the default configuration, this group contains the View Contractor Survey role.

Workforce Manager
In the default configuration, this group contains the Workforce Manager role.

116 Ariba Services Procurement Implementation Guide


Appendix B Email Notification Messages Reference

This appendix describes Ariba Services Procurement-related notification messages. For information on
notification messages that are common to all Ariba Buyer modules, see the Ariba Buyer Configuration
Guide.

About Email Notification Messages


Users receive notification messages when they are involved with an approvable document, or when they
have special permissions. The following table describes the labels used in this chapter to describe the
recipients of notification messages.

Label Description
preparer A user who prepares and submits a request.

requester The same user as the preparer, unless the preparer submits a request on behalf of another
user. In that case, the user who submits the request is the preparer, and the other user is the
requester.

watcher A user who has been assigned to observe a request. Watchers receive the same notification
messages as preparers.

approver A user who has been assigned to approve or deny a request.

delegate A user to whom an approver has delegated approval authority. Delegates receive the same
notification messages as approvers.

Ariba Services Procurement Implementation Guide 117


Notification of Collaboration Request Routing Failure Appendix B Email Notification Messages Reference

Notification of Collaboration Request Routing Failure

ID - title has failed to route to supplier

Cause:
When Ariba Buyer cannot send a collaboration request, or the transaction is unacceptable to Ariba SN,
Ariba Buyer sends this notification message to members of the collaboration team.

Action:
Fixing this error typically requires manual intervention. If there were data errors, collaboration team
members can edit the collaboration request in Ariba Buyer.

Notification of Collaboration Request Declined

ID - title DECLINED by supplier with comment

Cause:
When a supplier declines a collaboration request, Ariba Buyer sends this notification message to members of
the collaboration team.

Action:
This notification message is for information only and does not require any action.

118 Ariba Services Procurement Implementation Guide


Appendix B Email Notification Messages Reference Notification of Collaboration Proposal Submitted

Notification of Collaboration Proposal Submitted

ID - title has been submitted

Cause:
When a supplier responds to a collaboration request with a collaboration proposal, Ariba Buyer sends this
notification message to members of the collaboration team.

Action:
This notification message is for information only, and does not require any action.

Notification of Collaboration Proposal Withdrawn

ID - title RELEASE by on date at time with comment

Cause:
When a supplier withdraws a previously submitted collaboration proposal, Ariba Buyer sends this
notification message to members of the collaboration team.

Action:
Collaboration team members can view the collaboration proposal from the supplier in Ariba Buyer.

Ariba Services Procurement Implementation Guide 119


Notification of Collaboration Message Sent Appendix B Email Notification Messages Reference

Notification of Collaboration Message Sent

ID - title Subject: subject_text

From: supplier at date

Cause:
When a supplier or collaboration team member creates a new message on the message board for a
collaboration request, Ariba Buyer sends this notification message to members of the collaboration team.

Action:
Collaboration team members can view the message on the message board for this collaboration request in
Ariba Buyer.

Notification of Canceled Collaboration Request

ID - title Collaboration Request has been canceled

Cause:
When a collaboration request is canceled, Ariba Buyer sends this email notification message to the preparer.

Action:
This email notification message is for information only and does not require any action.

120 Ariba Services Procurement Implementation Guide


Appendix B Email Notification Messages Reference Notification of Contractor Survey

Notification of Contractor Survey

Please complete Contractor Survey for ContractorName - poName

Cause:
The SendSurveyNotification scheduled task (display name “Send Contractor Survey Notification”) sends
this notification message to the hiring manager to complete a contractor survey for a labor item. For more
information, see “SendSurveyNotification” on page 130.

Action:
Log in to Ariba Buyer and complete the contractor survey.

Ariba Services Procurement Implementation Guide 121


Notification of Contractor Survey Appendix B Email Notification Messages Reference

122 Ariba Services Procurement Implementation Guide


Appendix C Scheduled Tasks Reference

• “About Scheduled Tasks” on page 123


• “Global Scheduled Tasks” on page 123
• “Partitioned Scheduled Tasks” on page 124

About Scheduled Tasks


Ariba Services Procurement includes scheduled tasks related to collaboration, time sheets, and contractors.
Scheduled tasks are processes that run on a regular basis, in the background. Most scheduled tasks are
configured to run on a regular schedule, such as once every weekday starting at midnight. If you do not want
to wait for a scheduled task to run at its regularly scheduled time, you can run it manually from Ariba
Administrator.

This appendix contains a list of Ariba Services Procurement-related scheduled tasks. For scheduled tasks
that are common to all modules, see the Ariba Buyer Configuration Guide.

Global Scheduled Tasks


This section describes global scheduled tasks—those that operate on unpartitioned data. In a typical
configuration, these scheduled tasks are defined in a configuration file such as
config/variants/Plain/partitions/None/ScheduledTasks.table.

UpdateReactivatedCategoryData
UpdateReactivatedCategoryData = {
ScheduledTaskClassName = "ariba.procure.core.category.UpdateReactivatedCategoryData";
};

The UpdateReactivatedCategoryData scheduled task (display name “Migrate Reactivated Category Data”) is
a migration task that migrates transactional data such as requisitions, purchase orders, and collaboration
documents that reference category definitions that have been reactivated on a migrated instance.

Ariba Services Procurement Implementation Guide 123


Partitioned Scheduled Tasks Appendix C Scheduled Tasks Reference

Partitioned Scheduled Tasks


This section describes the tasks that can operate on partitioned data. In a typical configuration, you define
the scheduled tasks for a partition in a file such as
config/variants/variant/partitions/partition/ScheduledTasks.table.

ComputeConsecutiveOnSiteDays
ComputeConsecutiveOnSiteDays = {
Reset = false;
ScheduledTaskClassName = "ariba.workforce.core.ComputeConsecutiveOnSiteDays";
Schedules = {
Schedule1 = {
DayOfWeek = Saturday;
Hour = 3;
Minute = 01;
};
};
};

The ComputeConsecutiveOnSiteDays scheduled task (display name “Compute Consecutive On Site Days”)
searches the Ariba Buyer database for payable time entries on time sheets (determined by the PayCode field
on a TimeSheetItem object) to compute the number of consecutive business days a contractor has worked
(onsite days). The total of the ConsecutiveDayCount field on the Contractor object is increased by one for
each day a contractor works, regardless of the number of hours worked in a day.

If a contractor does not work on a subsequent business day (a sit day), the total of the CurrentSitDayCount
field on the Contractor object is increased by one. The CurrentSitDayCount total is reset to zero the next
time the ConsecutiveDayCount total is increased.

The date the scheduled task is run is saved in the CutoffDate field on the Contractor object. To reduce CPU
load, this scheduled task uses an incremental computation algorithm, which searches for payable time
entries dated after the previous computation was performed and saved (the cut off date).

This task recognizes the following parameter:


• Reset: This parameter must be set to false so that the scheduled task incrementally computes the number
of days worked since the cut off date. Setting the parameter to true is that same as running the
RecomputeConsecutiveOnSiteDays scheduled task .

In the default configuration, this scheduled task automatically runs once a week (on Saturday at 3:01 AM).

You must manually run the RecomputeConsecutiveOnSiteDays scheduled task if you change the threshold
values for either of the following parameters:

Application.Workforce.MaxConsecutiveOnSiteDays
Application.Workforce.MinGoodSitDays

124 Ariba Services Procurement Implementation Guide


Appendix C Scheduled Tasks Reference Partitioned Scheduled Tasks

CreateInvoicesForTimeSheets
CreateInvoicesForTimeSheets = {
PreparerUniqueName = "Application.Base.Data.AribaSystemUser";
PreparerPasswordAdapter = "Application.Base.Data.AribaSystemUserPasswordAdapter";
ScheduledTaskClassName = "ariba.workforce.core.CreateInvoicesForTimeSheets";
Schedules = {
Schedule1 = {
DayOfMonth = 1;
};
};
TimeSheetInvoicingGroupingLevel = Supplier;
IncludedSuppliers = "SupplierID";
ExcludedSuppliers = "SupplierID";
SupplierDomain = "SupplierDoman";
ReceiptType = "value";
ItemAggregationLevel = "Receipt";
};

The CreateInvoicesForTimeSheets scheduled task (display name “Create Invoices For Time and Expense
Sheets”) converts processed time sheets and expense sheets to invoices. The invoices are created in the same
partition as the sheets they contain.

This task recognizes the following parameters:


• PreparerUniqueName specifies the name of the user to be listed as the preparer of the invoices. In the
default configuration, this is set to the default system user.
• PreparerPasswordAdapter specifies the password adapter of the preparer.
• TimeSheetInvoicingGroupingLevel specifies how to group the unbilled, billable time and expense sheet
items to create invoices. In the default configuration, Supplier specifies that all sheet items from the same
partitioned supplier are on a single invoice. You can, however, specify PurchaseOrder to split invoices
from a supplier by purchase order, so that an invoice contains the sheet items from one purchase order
only, or specify Receipt to create a separate invoice for each sheet.
• IncludedSuppliers specifies a comma-separated list of partitioned supplier IDs for those suppliers whose
time or expense sheets you want converted to invoices. If you leave the value null (""), all suppliers are
included.
• ExcludedSuppliers specifies a comma-separated list of partitioned supplier IDs for those suppliers whose
time or expense sheets you want to exclude from being converted to invoices. If you leave the value null
(""), no suppliers are excluded.
• SupplierDomain specifies the domain of the supplier IDs specified by the IncludedSuppliers and
ExcludedSuppliers parameters. To use the default buyersystemid domain, emove this parameter or leave
its value blank.
• ReceiptType specifies whether to convert time sheets, expense sheets, or both. Valid values are TimeSheet,
ExpenseSheet, or to convert both time and expense sheets remove this parameter or leave its value blank.

Ariba Services Procurement Implementation Guide 125


Partitioned Scheduled Tasks Appendix C Scheduled Tasks Reference

• ItemAggregationLevel specifies how sheet line items are aggregated on an invoice. Valid values are:
• Receipt (the default)—all the line items from the same expense sheet are aggregated to one invoice line
item. For time sheets, the line items must belong to the same time sheet and have the same pay code to
be aggregated to one invoice line item. For example, suppose a time sheet has five entries: two for
Overtime, one for Regular, and one for DoubleTime. In this case, there are three invoice line items.
• POLineItem—all the time sheet line items that have the same pay code and match the same purchase
order are aggregated to one invoice line item. All the expense sheet line items are aggregated to another
invoice line item. If there are time and expense sheets associated with multiple purchase orders, there
will be multiple invoice line items for time sheets and multiple invoice line items for expense sheets.

CXMLProcessUndeliveredPayloads
CXMLProcessUndeliveredPayloads = {
Oldest = 3;
Units = Days;
ScheduledTaskClassName = "ariba.cxml.base.core.CXMLProcessUndeliveredPayloads";
Schedules = {
Schedule1 = {
DayOfWeek = Everyday;
Hour = 3;
Minute = 30;
};
};

The CXMLProcessUndeliveredPayloads scheduled task (display name “Process Undelivered cXML


Documents”) recovers any cXML documents that have been queued for delivery but have not been delivered
because the destination has been unreachable or the application server has shut down.

In the following example, the CXMLProcessUndeliveredPayloads is configured to select messages between


one and three days old and reschedule them for reliable delivery.

{
Youngest = 1;
Oldest = 3;
Units = Days;
}

Youngest and Oldest are integer values that specify the age range of messages to select. The value is
subtracted from the current time, scaled by the Units parameter, in days, minutes, or hours.

126 Ariba Services Procurement Implementation Guide


Appendix C Scheduled Tasks Reference Partitioned Scheduled Tasks

DeferredTimeSheets
DeferredTimeSheets = {
ScheduledTaskClassName = "ariba.workforce.network.DeferredTimeSheets";
Schedules = {
Schedule1 = { DayOfWeek = Everyday; Hour = 1; Minute = 01;};
};
};

The DeferredTimeSheets scheduled task (display name “Send Deferred Time and Expense Sheets”) sends
time sheets and expense sheets to Ariba SN after they have been deferred the number of days specified by
the parameter Application.Workforce.UnapprovedTimeSheetRoutingDeferDays.

For example, if this parameter is set to 5, and there are time sheets or expense sheets that are still unapproved
five or more days after they were submitted for approval, the DeferredTimeSheets scheduled task routes
them to Ariba SN.

This task processes time sheets and expense sheets only in partitions where the TimeSheetRoutingEnabled
parameter is set to true.

FailedCollaborationRequests
FailedCollaborationRequests = {
MaxNumberOfCollaborationRequests = 100;
ScheduledTaskClassName = "ariba.collaboration.core.network.FailedCollaborationRequests";
};

The FailedCollaborationRequests scheduled task (display name “Send Failed Collaboration Requests”)
re-processes collaboration requests that were not routed successfully to Ariba SN because of a request or
configuration error, such as the supplier ID not being recognized by Ariba SN. After fixing the errors, run
this task manually to try routing failed collaboration requests again. The MaxNumberOfCollaborationReqeusts
parameter specifies the maximum number of requests that will be processed each time this task runs. If there
are more failed collaboration requests than is specified, run the task again. Limiting the number of requests
in each run improves performance.

FailedTimeSheets
FailedTimeSheets = {
MaxNumberOfTimeSheets = 100;
RespectTimeSheetRoutingEnablement = true;
ScheduledTaskClassName = "ariba.workforce.network.FailedTimeSheets";
};

The FailedTimeSheets scheduled task (display name “Send Failed Time and Expense Sheets”) re-processes
time sheets and expense sheets that were not routed successfully to Ariba SN because of a time sheet,
expense sheet, or configuration error, such as the time sheet’s supplier ID not being recognized by Ariba SN.
After fixing the errors, run this task manually to try routing failed time sheet or expense sheet again.

Ariba Services Procurement Implementation Guide 127


Partitioned Scheduled Tasks Appendix C Scheduled Tasks Reference

This task recognizes the following parameters:


• MaxNumberOfTimeSheets: specifies the maximum number of time sheets or expense sheets that will be
processed each time this task runs. If there are more failed time sheets or expense sheets than is specified,
run the task again. Limiting the number of time sheets or expense sheets in each run improves
performance.
• RespectTimeSheetRoutingEnablement: specifies whether to process time sheets or expense sheets only in
partitions where the Application.Workforce.TimeSheetRoutingEnabled parameter is set to true.

LoadLaborComplianceRules
LoadLaborComplianceRules = {
ScheduledTaskClassName = "ariba.workforce.core.LoadLaborComplianceRules";
};

The LoadLaborComplianceRules scheduled task (display name “Load Labor Compliance Rules”) reloads
the labor compliance rules for the partition. You can use the parameter
Application.Workforce.LaborComplianceExtensionFile to specify the location of a partition-specific
LaborComplianceRuleExt.lcf file. If this parameter is not set, the default rules (as defined by
ariba/variants/Plain/workforce/LaborCompliance.lcf and config/LaborComplianceExt.lcf) are used.

For information, see “Customizing the Labor Configuration File” on page 103.

ProcessContractorCreation
ProcessContractorCreation = {
ScheduledTaskClassName = "ariba.workforce.core.ProcessContractorCreation";
Schedules = {
Schedule1 = { DayOfWeek = Everyday; Hour = 1; Minute = 01;};
};
};

The ProcessContractorCreation scheduled task (display name “Batch Create Contractors Task”) converts
accepted candidates from collaborative purchase orders into contractors in Ariba Buyer. These contractors
can then log in to Ariba Buyer and create time sheets, and expense sheets if the labor line item is configured
with expense policies.

RecomputeConsecutiveOnSiteDays
RecomputeConsecutiveOnSiteDays = {
Reset = true;
ScheduledTaskClassName = "ariba.workforce.core.ComputeConsecutiveOnSiteDays";
};

Similar to the ComputeConsecutiveOnSiteDays scheduled task, the RecomputeConsecutiveOnSiteDays


scheduled task (display name “Recompute Consecutive On Site Days”) is used with contractor time tracking
in Ariba Services Procurement.

Typically, you use the ComputeConsecutiveOnSiteDays task to calculate the number of consecutive onsite
days and current sit days for contractors. If, however, you change the threshold values for either of the
Application.Workforce.MaxConsecutiveOnSiteDays or Application.Workforce.MinGoodSitDays parameters,
you must manually run the RecomputeConsecutiveOnSiteDays task so that the results that were saved when
you last ran the ComputeConsecutiveOnSiteDays task will be valid for the next time you run it.

128 Ariba Services Procurement Implementation Guide


Appendix C Scheduled Tasks Reference Partitioned Scheduled Tasks

The CPU load for this task is significantly higher than for the ComputeConsecutiveOnSiteDays task, as it
searches for all payable time entries (whereas the ComputeConsecutiveOnSiteDays task uses an incremental
computation algorithm).

The RecomputeConsecutiveOnSiteDays scheduled task searches the Ariba Buyer database for payable time
entries on time sheets (determined by the PayCode field on a TimeSheetItem object) to compute the number of
consecutive business days a contractor has worked (onsite days). The total of the ConsecutiveDayCount field
on the Contractor object is increased by one for each day a contractor works, regardless of the number of
hours worked in a day.

If a contractor does not work on a subsequent business day (a sit day), the total of the CurrentSitDayCount
field on the Contractor object is increased by one. The CurrentSitDayCount total is reset to zero the next
time the ConsecutiveDayCount total is increased.

The date the scheduled task is run is saved in the CutoffDate field on the Contractor object.

This task recognizes the following parameter:


• Reset: This parameter must be set to true so that the cut off date is not used and the scheduled task
searches all payable time entries on timesheets. Setting the parameter to false is that same as running the
ComputeConsecutiveOnSiteDays scheduled task.

In the default configuration, this task does not run on a pre-defined schedule. Administrative users can run it
on demand, from Ariba Administrator.

RetryFailedCollaborationLaunch
RetryFailedCollaborationLaunch = {
EscalatePeriod = 2;
EscalateWarningPeriod = 0;
ScheduledTaskClassName = "ariba.approvable.server.EscalateApprovables";
Condition = "Approvable.StatusString = 'CollaborationFailed'";
};

The RetryFailedCollaborationLaunch scheduled task (display name “Restart the Collaboration Process”) is
an error-recovery task that scans the Ariba Buyer database for collaboration requisitions whose status is
CollaborationFailed, and attempts to restart the collaboration process for those requisitions.

When a collaboration line item is added to a requisition, a collaboration request is created for each invited
supplier for that item. The collaboration requests are then sent to the suppliers through Ariba Supplier
Network. If the collaboration process fails to start (for example, due to a configuration or customization
problem), an error message with contextual information is logged in the main Ariba Buyer log file and the
requisition is transitioned to CollaborationFailed.

In the default configuration, this task does not run on a schedule. An administrator should run this task
manually after correcting the problem in your configuration that caused the collaboration process to fail.

This task recognizes the following parameters:


• EscalatePeriod, which is the amount of time (in days) that a failed collaboration request can wait before
an attempt is made to restart the collaboration process. If the retry fails, an error message is logged; an
escalation notification is not sent. You can specify decimals to indicate partial days. For example, a value
of 1.5 days means every 36 hours. The minimum period is 1 day.

Ariba Services Procurement Implementation Guide 129


Partitioned Scheduled Tasks Appendix C Scheduled Tasks Reference

• EscalateWarningPeriod, which is the amount of time (in days) that a failed collaboration request can wait
before an attempt is made to restart the collaboration process. If the retry fails, an error message is logged;
an escalation notification is not sent. You can specify decimals to indicate partial days. For example, a
value of 1.5 days means every 36 hours.
EscalateWarningPeriod should typically be less than the EscalatePeriod (so that the warning arrives
before the escalation occurs). If the two are equal, there is no warning. If they are set up backwards (so
that the EscalateWarningPeriod is larger than the EscalatePeriod), the task does not run at all.

This task does not have dependencies on any other scheduled task and it does not send any notification
messages.

SendSurveyNotification
RecurrenceDays = 0;
ScheduledTaskClassName = "ariba.workforce.core.SendSurveyNotification";
Schedules = {
Schedule1 = {
DayOfWeek = Weekday;
Hour = 1;
Minute = 03;
};
};
};

The SendSurveyNotification scheduled task (display name “Send Contractor Survey Notification”) sends a
notification message to the hiring manager to complete a contractor survey for a labor item. The task
searches the Ariba Buyer database for labor items in which the contract end date has passed and a contractor
survey has not been submitted. If a survey has already been submitted for a labor item, a notification is not
sent.

This task also verifies whether the hiring manager has the CreateContractorSurvey permission needed to
create the survey. If the hiring manager does not have this permission, the task assigns it to him.

This task recognizes the following parameter:


• RecurrenceDays specifies the interval (in days) for sending subsequent email notifications to the hiring
manager if a survey for a labor order has not been submitted for approval. The recurrence takes place at
the specified interval until the survey has been submitted for approval. To disable sending subsequent
email notifications, either remove this parameter or set its value to 0.

In the default configuration, this scheduled task automatically runs each weekday (at 1:03 AM).

130 Ariba Services Procurement Implementation Guide


Appendix C Scheduled Tasks Reference Partitioned Scheduled Tasks

StuckCollaborationRequests
StuckCollaborationRequests = {
MaxDaysAllowedInSendingStatus = 1;
MaxNumberOfCollaborationRequests = 100;
ScheduledTaskClassName = "ariba.collaboration.core.network.StuckCollaborationRequests";
};

The StuckCollaborationRequests scheduled task (display name “Send Stuck Collaboration Requests”)
resends collaboration requests that have become stuck in Sending status.

This task recognizes the following parameters:


• MaxDaysAllowedInSendingStatus: specifies how long a collaboration request must be in Sending status
before this scheduled task will process it.
• MaxNumberOfCollaborationRequests: specifies the maximum number of collaboration requests that will be
processed each time this task runs. If there are more stuck collaboration requests than is specified, run the
task again. Limiting the number of requests in each run improves performance.

StuckTimeSheets
StuckTimeSheets = {
MaxNumberOfTimeSheets = 100;
MaxDaysAllowedInSendingStatus = 1;
RespectTimeSheetRoutingEnablement = true;
ScheduledTaskClassName = "ariba.workforce.network.StuckTimeSheets";
};

The StuckTimeSheets scheduled task (display name “Send Stuck Time and Expense Sheets”) resends time
sheets and expense sheets that have become stuck in Sending status.

This task recognizes the following parameters:


• MaxNumberOfTimeSheets: specifies the maximum number of time sheets or expense sheets that will be
processed each time this task runs. If there are more stuck time sheets or expense sheets than is specified,
run the task again. Limiting the number of time sheets or expense sheets in each run improves
performance.
• MaxDaysAllowedInSendingStatus: specifies how long a time sheet or expense sheet must be in Sending
status before this scheduled task will process it.
• RespectTimeSheetRoutingEnablement: specifies whether to process time sheets or expense sheets only in
partitions where the Application.Workforce.TimeSheetRoutingEnabled parameter is set to true.

Ariba Services Procurement Implementation Guide 131


Partitioned Scheduled Tasks Appendix C Scheduled Tasks Reference

132 Ariba Services Procurement Implementation Guide


Appendix D Sample Files

• “Sample File Locations” on page 133


• “Sample Category Definition Files” on page 136

Sample File Locations


Ariba provides sample category driver, enumeration, integration mapping, catalog type, and category
definition files for the each category type in default configuration. This section describes where to find the
sample files in your installation.

Labor Category Files


The following table describes the sample files provided for the Labor category.

File What It Contains


config/category/LaborDrivers.csv Category drivers based on the Labor
category (for example, AdminLabor,
DemoLabor, TestFlexLabor).

config/category/LaborEnumerations.xls Enumerations for the Labor category.

ariba/variants/Plain/extensions/TempLaborIntegrationMappings.aml Integration mappings for Labor category


ariba/variants/Plain/extensions/CategoryTypeIntegrationMappings.aml definition Excel import.

config/catgory/Admin_Staff_Augmentation.xls Sample category definition files for the


config/category/IT_Staff_Augmentation.xls Labor category.
config/category/WorkforceDemoCollaborativeLabor.xls
config/category/WorkforceDemoDirectPlacementLabor.xls

Ariba Services Procurement Implementation Guide 133


Sample File Locations Appendix D Sample Files

Consulting Category Files


The following table describes the sample files provided for the Consulting category.

File What It Contains


config/category/ConsultingDrivers.csv Category drivers based on the Consulting
category (for example,
DemoConsulting).
config/category/MRCEnumerations.xls Enumerations for the Consulting and
Market Research categories.

ariba/variants/Plain/extensions/ConsultingIntegrationMappings.aml Integration mappings for Consulting


ariba/variants/Plain/extensions/CategoryTypeIntegrationMappings.aml category definition Excel import.
ariba/variants/Plain/extensions/Consulting.aml Properties for the Consulting category.
config/category/IT_ConsultingCollaborative.xls Sample category definition files for the
config/category/Mgmt_Consulting_Collaborative.xls Consulting category.
config/category/Mgmt_Consulting_NonCollaborative.xls

Print Category Files


The following table describes the sample files provided for the Print category.

File What It Contains


config/category/PrintDrivers.csv Category drivers based on the Print
category (for example, DemoPrintStock).
config/category/PrintEnumerations.xls Enumerations for the Print category.

ariba/variants/Plain/extensions/PrintIntegrationMappings.aml Integration mappings for Print category


ariba/variants/Plain/extensions/CategoryTypeIntegrationMappings.aml definition Excel import.
ariba/variants/Plain/extensions/Print.aml Properties for the Print category.
config/category/Print_Custom_Collaborative.xls Sample category definition files for the
config/category/Print_Stock_Collaborative.xls Print category.
config/category/Print_Stock_NonCollaborative.xls

134 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample File Locations

Market Research Category Files


The following table describes the sample files provided for the Market Research category.

File What It Contains


config/category/MRCEnumerations.xls Enumerations for the Consulting and
Market Research categories.

ariba/variants/Plain/extenions/MarketingIntegrationMappings.aml Integration mappings for Market


ariba/variants/Plain/extensions/CategoryTypeIntegrationMappings.aml Research category definition Excel
import.
ariba/variants/Plain/extensions/MarketResearch.aml Properties for the Market Research
category.
config/category/MarketResearchCollaboration.xls Sample category definition files for the
config/category/MarketResearchDirectPlacement.xls Market Research category.

Generic Category Files


The following table describes the sample files provided for the Generic category.

File What It Contains


ariba/variants/Plain/extenions/GenericIntegrationMappings.aml Integration mappings for Generic
ariba/variants/Plain/extensions/CategoryTypeIntegrationMappings.aml category definition Excel import.
ariba/variants/Plain/extensions/Generic.aml Properties for the Generic category.

How to Load the Sample Category Drivers


To load the sample category driver files, run the CategoryDriverPull integration event (display name “Import
Category Drivers”).

How to Load the Sample Category Definitions


 To load the sample category definitions from Ariba Administrator:
1 Choose Server Manager > Data Import/Export. select the partition/None partition, and run the Import
Category Drivers integration event to load each category driver file.
2 Choose Server Manager > Enumerations and click Import to import each enumerations file.

3 Choose Server Manager > Category Definition and click Import to import each category definition file.

4 Validate and activate each imported category definition. For more information, see Chapter 4, “Category
Definitions.”

Ariba Services Procurement Implementation Guide 135


Sample Category Definition Files Appendix D Sample Files

Sample Category Definition Files


A category definition file is a Microsoft Excel file containing a specific set of worksheets and columns that
are mapped through an integration mappings file to the fields in Ariba Administrator. For example:

Just as each category type has its own set of fields and properties, the category definition file format is
unique to each category type. Therefore, if you are creating a category definition that uses the Market
Research category, you must create the spreadsheet in the correct format for Market Research. If you create
your own custom category type, you must ensure that the integration mappings file matches the columns set
up in the category definition file.

This rest of this section describes the worksheets in the sample category definition files.

Note: Some category definition files contain all of the worksheets, and some contain only some of the
worksheets. The actual worksheet names might not be the same as the worksheet names shown in this
section.

Service Category Header Worksheet


The Service Category Header worksheet defines general information about the category, category items, and
suppliers. The columns on this worksheet correspond to the fields on the General tab when defining a
category in the Category Definition Manager.

Column Description
Name The name of the category definition. The name cannot be longer than 50
characters.

Category Driver The unique internal identifier of the category driver for the category definition.

Item Category Drivers The unique internal identifier of the category driver for the category item.

Mapping Attributes List A comma-separated list of attribute names. Mappable attributes are fields that
cause other fields to change based on the value selected, such as changing
whether a supplier is approved or required based on the value the user selects in
the Region field.

Supplier Id Domain The domain portion of the supplier’s ID, for example, buysersytemid.
Supplier Id The value portion of the supplier’s ID, for example, sid512.

Category Managers List A comma-separated list of user names. The person importing the Excel category
definition file is automatically assigned as the category definition owner. The
category definition owner is not specified in the category definition file itself.
The category definition owner can then assign other users as category definition
owners through the user interface.

A category definition owner can edit, validate, activate, and delete the category
definition. Only users specified as a category definition owner or users who have
the EditCategory permission can perform these actions.

136 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Column Description
Allow Contracted Suppliers Enter TRUE if you want any supplier with a contract for the item to be added to
the invited supplier list according to the ranking you specify in the Contracted
Supplier Ranking column.

Contracted Supplier Ranking If you entered TRUE in the Allow Contracted Suppliers column, enter a ranking
for contracted suppliers in this column. Valid values are:
• Approved - Allow contracted suppliers to be added to the list of available
suppliers.
• Preferred - Allow contracted suppliers to be selected.
• Required - Make contracted suppliers required on the requisition.
• Unapproved - Prevent contracted suppliers from being selected. Any
contracted supplier not already defined in the category definition is excluded
from collaboration.

Allow All Suppliers Enter TRUE if you want to let the requisitioner add any supplier to the invited
supplier list using the Add a new unranked supplier link in the user interface.

Following is an example of the Service Category Header worksheet:

Suppliers Worksheet
The Suppliers worksheet defines the suppliers to use during collaboration on items in this category
definition. The columns on this worksheet correspond to the fields on the Suppliers worksheet when defining
a category in the Category Definition Manager. The Number column creates an internal ID to uniquely
identify each supplier in this worksheet.

Column Description
Category The name of the category definition.

Number An internal ID that uniquely identifies each supplier in this workbook.

Supplier Id Domain The domain portion of the supplier’s ID, for example, buysersytemid.

Supplier Id The value portion of the supplier’s ID, for example, sid512.

Ariba Services Procurement Implementation Guide 137


Sample Category Definition Files Appendix D Sample Files

Column Description
Ranking The ranking for the supplier. Valid values are:
• Optional - Allow the supplier to be added to the list of available suppliers.
• Preferred - Allow the supplier to be selected.
• Required - Make the supplier required on the requisition.
• Excluded - Prevent the supplier from being selected. Any supplier not already defined
in the category definition is excluded from collaboration.

Contracted Items Only The value in this column specifies the contract requirements for the supplier.
• TRUE - Allow the supplier only for category items for which an item-level or
commodity-level contract is available. Supplier-level contracts are not included.
• FALSE - Allow the supplier for any category item on the requisition.

Following is an example of the Suppliers worksheet:

Mapped Supplier Ranking Worksheet


The Mapped Supplier Ranking worksheet defines supplier rankings by attributes for the category definition.
The Attribute columns correspond to the mapping attributes listed in the Service Category Header
worksheet. The Number column specifies the supplier. The Ranking column specifies the ranking for that
supplier based on a value in one of the Attribute columns. The Contracted Items Only column specifies the
contract requirements for this supplier based on that mapping attribute.

Column Description
Category The name of the category definition.

Number The internal ID that uniquely identifies the supplier in this workbook. The value must
match a value in the Number column on the Suppliers worksheet.

Attribute 1 The value that corresponds to the first mapping attribute specified on the Service Category
Header worksheet. If you mapped more than one attribute, add additional attribute columns,
such as Attribute 2, Attribute 3, and so on.

You must enter mappings for every possible value for each mapping attribute. Do not leave
any mapping attributes blank.

138 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Column Description
Ranking The ranking for the supplier based on the value in the Attribute column. Valid values are:
• Optional - Allow the supplier to be added to the list of available suppliers.
• Preferred - Allow the supplier to be selected.
• Required - Make the supplier required on the requisition.
• Excluded - Prevent the supplier from being selected. Any supplier not already defined in
the category definition is excluded from collaboration.

Contracted Items Only The value in this column specifies the contract requirements for the supplier based on the
value in the Attribute column.
• TRUE - Allow the supplier only for category items for which an item-level or
commodity-level contract is available. Supplier-level contracts are not included.
• FALSE - Allow the supplier for any category item on the requisition.

For example, if you defined one mapping attribute, cus_Region, and you want to specify different rankings
for suppliers based on the region, you might have rows as follows:

If you defined two mapping attributes, cus_Region and cus_ExperienceLevel, you might have rows as
follows:

You must add a column for each mapping attribute specified on the Service Category Header worksheet and
enter mappings for every possible value for each mapping attribute. Otherwise, you will receive error
messages when you try to import the workbook.

Ariba Services Procurement Implementation Guide 139


Sample Category Definition Files Appendix D Sample Files

Item Properties Worksheet


The Item Properties worksheet defines properties for each category item. There are three types of properties:
• Shared global item properties, which are header-level fields that are shared by all line items. (Shared
global item properties are referred to as shared header fields in the Category Drivers task in Ariba
Administrator.)
• Global item properties, which are properties that apply to all items within a category definition, but are set
at the line level.
• Contractible properties, which are properties that can be based on information read from the supplier
contract. For more information, see “Calculation of Contractible Properties” on page 51.

Property names appear as columns on the Properties worksheet. The following worksheet describes the
columns that appear on the Properties worksheet for all the sample categories.

Column Description
Category The name of the category definition.

ItemId A unique ID for the category item.

Category Driver The name of the category driver for the category item.

Mapping Attributes List A comma-separated list of attribute names. Mappable attributes are fields
that cause other fields to change based on the value selected, such as
changing whether a supplier is approved or required based on the value the
user selects in the Region field.

Description The description of the category item.

Short Name The name of the category item.

Supplier Part Number The ID used to identify the item in the catalog.

Supplier Auxiliary Id The auxiliary part number for the item in the catalog.

Commodity Code Domain The commodity code domain, for example, UNSPSC.

Commodity Code The system commodity code.

External For new catalog items, enter TRUE and specify the commodity code for the
item in the Commodity Code columns.

Enter FALSE to link the category item to an existing item in the catalog. The
values you enter in the Supplier columns are used to link the category item to
the existing catalog item.

In Template Only Reserved for future use. Leave this column blank or enter FALSE.

Unit of Measure The unit of measure for the category item.

Locale The default value is en_US.


Collaboration Type The collaboration type. Valid values are:
• Allowed - the item is collaborative.
• Required - collaboration is required.
• Disallowed - the item is not collaborative.

140 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Column Description
Bidding Type The open bidding type. Open bidding helps buying organizations drive down
the purchase price in a collaboration by selectively exposing part of a
supplier’s collaboration information to its competitors. Bidding information
consists a set of fields of a bid that can be made visible to the supplier users.
Valid values (from least to most visible) are:
• Closed - None of the bidding information fields are visible
• Amount - The Lowest Amount and Price fields are visible
• Rank - The Lowest Amount, Price, Proposal Rank, and Supplier Rank
fields are visible
• Supplier - The Lowest Amount, Price, Lowest Supplier, Proposal Rank,
and Supplier Rank fields are visible

Note: A supplier can never see the name of another supplier who is the
lowest bidder.
Allow Partial Acceptance Enter TRUE if buyers can accept some items on a proposal and reject others.
Enter FALSE if a buyer must accept or reject an entire proposal.

Supplier Can Add Items Enter TRUE if suppliers can add line items to the proposal, which would then
be added to the requisition if the proposal is accepted. For example, in
addition to the line item for the contractor, the supplier could add a line item
for a special fee. The supplier can only add line items from the catalog in the
buyer’s configuration.

Submit Multiple Proposals Allowed Enter TRUE if suppliers can submit more than one proposal for the same
collaboration request. For example, a supplier with three good candidates for
a collaboration request could submit three proposals, one for each candidates

Milestone Itemization Required Specifies whether itemization is required for milestone line items on
non-collaborative requisitions. If set to Yes, the preparer of the requisition
must itemize the milestone. If set to No, the preparer can choose whether to
itemize.

For collaborative requisitions, the preparer does not itemize milestones.


Instead, if this field is both visible and editable, the preparer can choose
whether supplier must itemize the milestone on their collaboration proposals.

Ariba Services Procurement Implementation Guide 141


Sample Category Definition Files Appendix D Sample Files

Column Description
Item Type The possible valid values in the default configuration are:
• _FeeItem (fixed fee)
• _MiscExpenseItem (expense)
• _MilestoneItem (milestone)
• _CatalogItem (catalog item)

If you leave this field blank, the item type will be the default, such as a
service instead of a fee, expense, or milestone. If there are custom line types
in ProcureLineType.csv in your configuration, you can specify those as
well by entering their UniqueName value.

Receiving Type The possible valid values are:


• SystemReceived (receipt is auto-generated)
• AutoReceipt (waits for due date)
• ByCount (manually received against quantity)
• ByAmount (manually received against amount)
• NoReceipt (automatically considered received)
• PCardAutoReceipt (waits for purchasing card charge or invoice to trigger
automatic receiving)
• InvoiceAutoReceipt (automatically received when purchase order or
contract item is invoiced)

For the labor category driver and its subdriver for _CatalogItem only: If you
leave this property blank, the receiving type defaults to NoReceipt when you
import the category definition. (Ariba Administrator shows the Receiving
Type as Default.)

For other categories: In Ariba Administrator, when the item type is a Fee or
Expense and Receiving Type is set to Default, default means receiving by
Amount. When the item type is Catalog Item and Receiving Type is set to
Default, default means receiving by Quantity.

Because labor items use time sheets, Ariba Buyer sets the receiving type to
NoReceipt for labor items, regardless of the value specified in this column.
Milestone items do not generate receipts.

There might be additional columns on the Properties worksheet, depending on the properties defined for the
category definition.

142 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Additional Shared Global Item and Global Item Properties


The following table describes additional shared global item and global item properties.

Column Property Type Description


Labor Category
Resume Required Global Item Specifies whether a resume must be included with a
candidate before the candidate can be accepted.

Contractor Profile Required For PO Global Item Specifies whether a candidate must be identified
before the collaboration proposal can be submitted.
If you do not enable this property, the supplier
cannot add a candidate on the collaboration
proposal.

Overtime Exempt Global Item Specifies whether the candidate does not receive a
different rate for overtime hours and specifies all
hours worked under the Regular pay code. If set to
Yes, the candidate cannot specify overtime hours.

Consulting Category
Project Description Shared Global Item A description of the project.

Expected Deliverables Shared Global Item A description of what this project is expected to
produce.

Pricing Structure Shared Global Item Specifies whether the price is based on time and
materials, a fixed fee, or both.

Market Research Category


Project Description Shared Global Item A description of the project.

Expected Deliverables Shared Global Item A description of what this project is expected to
produce.

Pricing Structure Shared Global Item Specifies whether the price is based on time and
materials, a fixed fee, or both.

Ariba Services Procurement Implementation Guide 143


Sample Category Definition Files Appendix D Sample Files

Additional Contractible Properties


The following table describes additional contractible properties.

Column Description
Labor Category
Pay Rate The rate for fees and expense items.

Pay Rate Currency The currency for the pay rate, for example, USD.

Pay Rate Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Rate The rate for fees and expense items.

Rate Currency The currency for the rate, for example, USD.

Rate Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Bill Rate The rate that the staffing agency invoices, which is the pay rate plus the
markup

Bill Rate Currency The currency for the bill rate, for example, USD.

Bill Rate Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Markup Amount The difference between the pay rate and the bill rate in amount. The
markup typically includes payroll taxes and operational expenses.

Markup Amount Currency The currency for the markup amount, for example, USD.

Markup Amount Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Markup Percent The difference between the pay rate and the bill rate in percent. The
markup typically includes payroll taxes and operational expenses.

144 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Column Description
Markup Percent Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Overtime Markup Amount The difference between the pay rate and the overtime bill rate in amount.

Overtime Markup Amount Currency The currency for the markup amount, for example, USD.

Overtime Markup Amount Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Overtime Markup Percent The difference between the pay rate and the overtime bill rate in percent.

Overtime Markup Percent Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Doubletime Markup Amount The difference between the pay rate and the doubletime bill rate in amount.

Doubletime Markup Amount The currency for the doubletime markup amount, for example, USD.
Currency

Doubletime Markup Amount The default-value qualifier used for recollaboration of a change order. Valid
Qualifier values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Doubletime Markup Percent The difference between the pay rate and the doubletime bill rate in percent.

Doubletime Markup Percent The default-value qualifier used for recollaboration of a change order. Valid
Qualifier values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Tripletime Markup Amount The difference between the pay rate and the triple time bill rate in amount.

Tripletime Markup Amount Currency The currency for the tripletime markup amount, for example, USD.

Ariba Services Procurement Implementation Guide 145


Sample Category Definition Files Appendix D Sample Files

Column Description
Tripletime Markup Amount Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Tripletime Markup Percent The difference between the pay rate and the triple time bill rate in percent.

Tripletime Markup Percent Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Overtime Pay Multiplier The factor by which the bill rate is multiplied when the hours on the time
sheet are specified as overtime hours.

Doubletime Pay Multiplier The factor by which the bill rate is multiplied when the hours on the time
sheet are specified as doubletime hours.

Doubletime Pay Multiplier Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Tripletime Pay Multiplier The factor by which the bill rate is multiplied when the hours on the time
sheet are specified as triple time hours.

Tripletime Pay Multiplier Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Allow Temp To Perm Specifies whether to allow this contractor to become a permanent
employee.

Allow Time Sheet Violations Specifies whether to allow time sheets to be submitted if they have pay
code violations.

Allow Time Sheet Summary Hours Specifies whether time sheet entries can contain just the date and total
hours worked instead of requiring the date, start time, and stop time.

Allow Expenses Specifies whether expenses are allowed.

Expense The expense amount.

Expense Currency The currency for the expense amount, for example, USD.

146 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Column Description
Expense Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Min Good Sit Days The minimum number of continuous business days this contractor must not
work (good sit period) in order to reset the maximum consecutive onsite
day count to zero. A sit day is a business day that a contractor does not
work (a non-business day that is not worked is ignored).

If you leave this column blank, the


Application.Workforce.MinGoodSitDays parameter setting is used.

Note: Because integer fields cannot be used as a contractible factor, this


field is not made available in pricing terms on a contract.

Max Consecutive On Site Days The maximum number of consecutive days this contractor can work onsite
before being required to sit (not work) for a minimum number of
continuous business days (good sit period). Consecutive onsite days
include both business days and non-business days on which a contractor
performs work.

If you leave this column blank, the


Application.Workforce.MaxConsecutiveOnSiteDays parameter setting
is used.

Note: Because integer fields cannot be used as a contractible factor, this


field is not made available in pricing terms on a contract.

Consulting Category
Rate The rate at which the buyer pays the supplier.

Rate Currency The currency for the rate, for example, USD.

Rate Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Market Research Category


Rate The rate at which the buyer pays the supplier.

Rate Currency The currency for the rate, for example, USD.

Ariba Services Procurement Implementation Guide 147


Sample Category Definition Files Appendix D Sample Files

Column Description
Rate Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Stock Print Category


Rate The rate at which the buyer pays the supplier.

Rate Currency The currency for the rate, for example, USD.

Rate Qualifier The default-value qualifier used for recollaboration of a change order. Valid
values are:
• NotToExceed
• Fixed
• Negotiable

The default qualifier is NotToExceed.

Creating Expenses, Fees, and Milestones


When creating an expense, fee, or milestone item in a Labor category definition, leave all policies set to Not
Specified except for the following:
• Collaboration Type: Specify as needed.
• Item Type: Set to fixed fee, milestone, or expense depending on which type of item you are creating. Do
not specify the item type by attribute.
• Receiving Type: Specify how to handle receiving for this item.
• Rate: Specify as needed.
• Milestone data: Specify as needed if this is a milestone item.

Additionally, you can turn off the visibility and editability for all properties except for the following as
needed:
• Collaboration Type
• Rate
• Milestone data (if applicable)

Using Stock Print Category Properties to Calculate Unit Price


To calculate unit price based on Stock Print category properties (Paper Cost, Production Cost, Ink Cost, and
so on), you must define a contract with formulas that use the amounts of these properties.

148 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Item Attributes Worksheet


The Item Attributes worksheet defines the ordering attributes (such as Region) and values (such as New
York and San Francisco) for each category item.

Column Description
Category The name of the category definition.

ItemId The category item ID. Specify the name of a category driver to set default values for all
your items.

Attribute Name The name of an attribute. Attributes are defined in the category driver file.

Attribute Value The value of the ordering attribute.

Following is an example of the Item Attributes worksheet:

Note that ordering attributes are different from mapping attributes. Ordering attributes are those fields that
require values before the user can submit the requisition. Mapping attributes are those fields that cause other
fields to change based on the value selected, such as changing whether a supplier is approved or required
based on the value the user selects in the Region field.

Important: Avoid using mixed case letters when defining attribute names and values. Ariba recommends
using all lowercase letters.

Ariba Services Procurement Implementation Guide 149


Sample Category Definition Files Appendix D Sample Files

Item Editability and Visibility Worksheet


The Item Editability and Visibility worksheet specifies editability and visibility values for individual
properties. Each line specifies a property in the Property column and indicates whether to make the property
visible and editable. It also includes groups required for editability and visibility of each item. If no group is
specified, the editability and visibility setting applies to all users.

Column Description
Category The category definition name.

ItemId The category item ID.

Property The field name of a property, for example, LineItem.Needby. Properties are
defined in the metadata XML file for the category. For more information, see
“Sample File Locations” on page 133.

Is Shared Enter TRUE if this is a permission for a SharedGlobalItemProperty.

Allow Viewing Enter TRUE if you want the property to be visible during requisition and
collaboration time.

Required Viewing Groups A comma-separated list of group unique names. These are the groups required to
view the property. If no group is specified, the visibility setting specified in the
Allow Viewing column applies to all users.

Allow Editing Enter TRUE if you want the property to be editable during requisition and
collaboration time.

Required Editing Groups A comma-separated list of group unique names. These are the groups required to
edit the property. If no group is specified, the editability setting specified in the
Allow Editing column applies to all users.

Following is an example of the Item Editability and Visibility worksheet.

150 Ariba Services Procurement Implementation Guide


Appendix D Sample Files Sample Category Definition Files

Mapped Properties Worksheet


The Mapped Properties worksheet defines contractible property values for category items based on mapping
attributes.

Column Description
Line The line number on the worksheet.

Category The name of the category definition.

ItemId The category item ID.

Attribute 1 The value that corresponds to the first mapping attribute specified on the Service Category
Header worksheet. If you mapped more than one attribute, add additional attribute columns,
such as Attribute 2, Attribute 3, and so on.

The additional columns on this worksheet vary based on the contractible properties defined for the category.
Following is an example of the Mapped Properties worksheet.

Ariba Services Procurement Implementation Guide 151


Sample Category Definition Files Appendix D Sample Files

152 Ariba Services Procurement Implementation Guide


Appendix E Metadata XML Reference

• “Object Model” on page 153


• “Conditions” on page 156
• “Actions” on page 158
• “Groups” on page 159

This chapter does not describe customizations that are standard for all approvable documents. For general
information on metadata XML customization, see the Ariba Spend Management Customization Guide.

Object Model
This section provides a brief overview of the main Ariba Services Procurement classes in the Ariba object
model. For complete information on the object model and explanations of the fields in each class, see the
Javadoc.

Classes for Contractors


The following table describes the classes for contractors.

Class Name Description


ariba.workforce.core.Contractor The unpartitioned user object that represents a contractor in Ariba
Buyer.
ariba.workforce.core.ContractorCandidate An object that represents a contractor candidate submitted by a
supplier. The object can include all the properties of the category,
including the contractor’s resume and pay rate.

Classes for Time Sheets


The following table describes the classes for time sheets.

Class Name Description


ariba.workforce.core.LaborComplianceEngineImpl An object that defines the labor compliance engine used to
compare time sheet entries to the labor laws of the
contractor’s work location.
ariba.workforce.core.TimeSheet A subclass of ariba.procure.core.Receipt that is used to
model time sheets. A TimeSheet object is a collection of
TimeSheetItem receipt items that correspond to a labor line
item on a purchase order.

Ariba Services Procurement Implementation Guide 153


Object Model Appendix E Metadata XML Reference

Class Name Description


ariba.workforce.core.TimeSheetItem A class that represents the full details of a time entry on a
time sheet.
ariba.workforce.core.TimeSheetRoutingInfo A cluster root class that is used to control routing and status
information for the time sheet.

Classes for Expense Sheets


The following table describes the classes for time sheets.

Class Name Description


ariba.workforce.core.ExpenseSheet A subclass of ariba.procure.core.Receipt that is used to model
expense sheets. An ExpenseSheet object is a collection of
ExpenseSheetItem receipt items that correspond to a labor line item
on a purchase order.
ariba.workforce.core.ExpenseSheetItem A class that represents the full details of a contractor expense item on
an expense sheet.

Classes for Categories


The following table describes the main classes for categories.

Class Name Description


ariba.procure.core.CategoryDefinitionCoreApprovable The base approvable object for category definition
requests and objects.
ariba.procure.core.CategoryDefinition A subclass of CategoryDefinitionCoreApprovable
that represents a category definition.
ariba.procure.core.CategoryDefinitionRequest A subclass of CategoryDefinitionCoreApprovable
that represents a category request, which is a staging
object for all changes to a category definition.
ariba.procure.core.CategoryItem A ClusterRoot that contains all category data
associated with a category item, including catalog
item information and category policy data.
ariba.procure.core.CategoryCatalogItem A BaseObject that contains all the fields that are
related to the properties of the category item in the
catalog.
ariba.procure.core.CategoryPropertiesMeta A BaseObject that contains information about the
visibility and editability of category properties.
ariba.procure.core.SharedGlobalItemProperties A ClusterRoot that represents the properties of a
category that are shared by all line items that belong
to this category. Each category driver that uses
header-level properties derives from this class.
ariba.procure.core.CategoryItemProperties A BaseObject that contains the global item properties
and contractible properties for a category.

154 Ariba Services Procurement Implementation Guide


Appendix E Metadata XML Reference Object Model

Class Name Description


ariba.procure.core.CategoryLineItemDetails A BaseObject that represents the category-specific
details of a category line item. This class is the super
class of the category driver classes that contain the
category line item details.
ariba.procure.core.ValueQualifier A ClusterRoot that defines the terms of an object:
Fixed, Negotiable, or Not to Exceed.
ariba.procure.core.QualifiedValue A superclass from which the classes
QualifiedBoolean, QualifiedDecimal, and
QualifiedMoney inherit. These classes represent the
values that can be qualified as Fixed, Negotiable, or
Not to Exceed.

Classes for Specific Category Drivers


Each category driver has a supporting set of Java classes. The Labor category driver classes are in
ariba.workforce.core.category. All other classes are in
ariba.spendcategory.category_name.core.category. For complete information on these classes, see the
Javadoc.

Classes for Categories Related to Contracts


The following classes in ariba.contract.core.category apply to categories related to contracts:

Class Name Description


ContractCategoryFactory A subclass of ariba.procure.core.category.
ProcureCategoryDriverFactory. This class contains object creation methods
for contract-related categories.
ContractCategoryUtil A subclass of ariba.procure.core.category.
ProcureCategoryDriverFactory. This class contains utility methods for
contract-related categories.
CategoryAutoSelectMAHook Contains the code for auto-selecting a contract for a category item.

Classes for Collaboration


The following classes in ariba.collaboration.core are the main classes relating to collaboration:

Class Name Description


CollaborationState A BaseObject that contains the collaboration state information for the
requisition and the current status of the collaboration process.
CollaborationDocument Superclass of all the collaboration documents.
CollaborationLineItem A subclass of ariba.procure.core.
ProcureLineItem. This class represents a line item in a collaboration
document. It contains all the information that is subject to collaboration and
the information that is used only during collaboration.

Ariba Services Procurement Implementation Guide 155


Conditions Appendix E Metadata XML Reference

Class Name Description


CollaborationLineItemDetails A BaseObject that is the superclass for all category driver-specific classes for
line item details that are used only during collaboration.
CollaborationRequest A subclass of CollaborationDocument. This class contains the information
about the collaboration request that is sent to the supplier.
CollaborationRequestState A BaseObject that contains the current state informaton of the collaboration
request.
CollaborationThread A ClusterRoot that contains a series of collaboration documents.
CollaborationThreadDocument A subclass of CollaborationDocument. This class is the superclass for all
collaboration documents that can be created in a collaboration thread.
CollaborationThreadState A BaseObject that contains the collaboration state information for a
collaboration thread.
Proposal A subclass of CollaborationThreadDocument. This class contains the
proposal a supplier submits in response to a collaboration request.
CounterProposal A subclass of CollaborationThreadDocument. This class contains the revised
or alternative request a buyer can create in response to a supplier’s proposal.
Reason A ClusterRoot that contains an enumerated reason for various collaboration
actions such as Accept, Reject, Decline, Cancel, and Withdraw.

Conditions
Ariba Services Procurement includes the following types of conditions:
• Editability conditions, which determine whether a user can edit individual line items.
• Visibility conditions, which determine whether a field is visible in the user interface.
• Validity conditions, which determine if a field is valid.

For information on specifying conditions, passing parameters to conditions, and using conditions to specify
constraints on field properties, see the Ariba Spend Management Customization Guide.

Category Conditions
Categories use several conditions in ariba.procure.core.condition to create a link between the settings in
the Category Definition Manager and the behavior of the field in Ariba Buyer. For example, if you create a
new field and enable its visibility to be set in the Category Definition Manager, you must add the condition
CategoryPropertyVisibility to the field to allow that field to be controlled by the setting in the Category
Definition Manager. For more information, see “Controlling Visibility and Editability in the Category” on
page 99.

Following are the conditions that create a link between fields in Ariba Buyer and their visibility, editability,
and validity settings in the Category Definition Manager:
• AggregatedCategoryPropertyEditability—specifies whether a shared global item property value can be
changed and by whom.

156 Ariba Services Procurement Implementation Guide


Appendix E Metadata XML Reference Conditions

• AggregatedCategoryPropertyVisibility—specifies whether a shared global item property value is


displayed to users.
• CategoryDefinitionCanChangeType—specifies whether the category type can be changed after items have
been added to the category definition.
• CategoryPropertyCompliance—validates a category line item property by checking the value the user
entered against the category policy.
• CategoryPropertyEditability—specifies whether a category line item property value can be changed and
by whom.
• CategoryPropertyVisibility—specifies whether a category line item property is visible and to whom. For
example, you might want to hide the pay rate from all users except purchasing agents (on the requisition)
and the supplier (on collaboration documents).
• IsRegularCategoryItem—specifies whether a category item is a default item instead of a milestone,
expense, or fixed fee.
• IsValidMilestoneItemization—verifies that the document contains milestone worksheet items when the
Milestone Itemization Required property is enabled.

Collaboration Conditions
Collaboration uses several conditions in ariba.collaboration.core.condition to determine the status of
collaboration for a particular requisition:
• CollaborationNotInProgress—verifies whether collaboration is not in progress for a given requisition.
• CollaborationPending—verifies whether collaboration is pending for a line item.
• HasCollaborated—verifies whether collaboration was completed for a line item.
• HasCollaborativeLineItems—verifies whether there are any line items on the requisition that require
collaboration.
• HasNoCollaborativeLineItems—the inverse of HasCollaborativeLineItems, verifies whether the
requisition has no line items that require collaboration.
• ProposalIsPartiallyAccepted—verifies whether the proposal allows partial acceptance.
• ShowCollaborationField—verifies whether to show a field that may still be undergoing collaboration.

Additionally, the condition ariba.procure.core.condition.IsSupplierUser, which verifies whether the user


who has punched in to Ariba Buyer is a supplier, is useful during collaboration.

Ariba Services Procurement Implementation Guide 157


Actions Appendix E Metadata XML Reference

Actions
An action is a class that performs a desired operation. Actions are bound to events with a metadata XML
construct called a trigger. A trigger runs a specified action when a specified event occurs.

For information on trigger syntax and how to use triggers in user interface customizations, see the Ariba
Spend Management Customization Guide.

Partial Acceptance Action


In the default configuration, all items on a collaboration proposal must have the Allow Partial Acceptance
property set to Yes to enable partial acceptance of the proposal. If partial acceptance is enabled, a buyer can
accept individual items on a proposal. If partial acceptance is not enabled, the buyer must accept or reject the
entire proposal.

You set the Allow Partial Acceptance property in the Category Definition Manager, and you can make it
editable so that the user creating the requisition can choose whether to allow partial acceptance. When
viewing the collaboration proposal details, the Summary tab displays a check box indicating whether partial
acceptance is allowed. In the default configuration, this box cannot be edited.

To override the default behavior of partial acceptance, you can customize the action class
SetupPartialAcceptancePolicy. This action sets the partial acceptance policy for the proposal.

Routing Failure Notification Actions


When a collaboration request is not routed correctly to a supplier, the
SendCollaborationRoutingFailureEmail action is triggered. This action sends an email notification to the
preparer of the collaborative requisition.

Similarly, when a time sheet is not routed correctly to a supplier, the SendTimeSheetRoutingFailureEmail
action is triggered and sends an email notification to the preparer of the time sheet and to the user with the
TimeSheetManager permission.

Time and Expense Sheet Processing Action


The ProcessTimeSheet action starts the processing of time and expense sheets after they have been submitted
by moving them into the Processing state.

158 Ariba Services Procurement Implementation Guide


Appendix E Metadata XML Reference Groups

Groups
This section lists several important metadata XML groups that you might use when customizing Ariba
Services Procurement. With groups used for display in any specific part of the screen, the easiest way to find
the group name is to enable the debugging tooltips for groups, as described in the Ariba Spend Management
Customization Guide.

Note that many of the groups for Ariba Services Procurement are also used in other contexts, but with a
different value source. For example, the LineItemDescription group is used for fields from requisition line
items, but it has different behavior when used for category line items.

For information on the groups used in the Category Definition Manager, see the Javadoc.

Display Groups
The following groups are used to display fields on the Line Item Details screen, at the line item level, and on
collaboration documents.

Group Description
LineItemDescription Specifies the fields that appear on the right-hand side of the
line item details page. For catalog items, the catalog
description appears here. For category items, this group is
re-used.
LineItemDetailsGeneral Specifies the ServiceLineItem fields that appear in the
General section of the line items details screen. The fields
from ReqLineItem, which are in the
LineItemGeneralFields group, display just below the
LineItemDetailsGeneral fields separated by a horizontal
line.
LineItemDetailsGeneral_Right Specifies the ServiceLineItem fields that appear in the
right column of the General section of the line items details
screen, just to the right of the LineItemDetailsGeneral
fields. This group is usually used for fields that apply to
collaboration.
LineItemGeneralFields Specifies the fields common to all categories, including the
fields from ReqLineItem, that appear in the General section
of the line item details screen. Note that fields in this group
must use a false visibility condition instead of the hidden
property to hide the field. Also note that when you specify a
field in this group, the definition you specify here overrides
the definition for this field in any other groups, so you must
re-specify all properties for this field in this group.
AggregatedCategoryItemsDetails Specifies the fields that appear in the requisition header.
With this group, you must specify a zone of left, right,
top, or bottom. (This group uses the
ARWTBLRColumnGroupView group view. For more
information on this group view, see the Ariba Spend
Management Customization Guide.)
CategoryLineItemDetailsForCandidate Specifies the fields that display candidate-specific values in
the line item details.

Ariba Services Procurement Implementation Guide 159


Groups Appendix E Metadata XML Reference

Group Description
LineItemSimpleGeneralFields Specifies the fields that appear in the item summary on the
requisition.
SupplierViewSupplierLevelGroup Specifies the top level (such as the supplier name) the buyer
sees when viewing the collaboration request details by
supplier.
SupplierViewLineItemLevelGroup Specifies the second level (such as the line item) the buyer
sees when viewing the collaboration request details by
supplier.

SupplierViewAuxLevelGroup Specifies the third level (such as the candidate) the buyer
sees when viewing the collaboration request details by
supplier.
LineItemViewLineItemLevelGroup Specifies the top level (such as the line item) the buyer sees
when viewing the collaboration request details by item.

LineItemViewSupplierLevelGroup Specifies the second level (such as the supplier) the buyer
sees when viewing the collaboration request details by item.
LineItemViewDetailLevelGroup Specifies the third level (such as the candidate) the buyer
sees when viewing the collaboration request details by item.
SupplierStatusViewSupplierLevelGroup Specifies the top level a supplier sees when viewing the
collaboration request status.

SupplierViewLineItemLevelGroup Specifies the second level a supplier sees when viewing the
collaboration request status.
SupplierViewAuxLevelGroup Specifies the third level a supplier sees when viewing the
collaboration request status.
SupplierStatusViewSupplierDetails_Left Specify the information that appears on the left and right
under the first level when the supplier views the
SupplierStatusViewSupplierDetails_Right collaboration request status.
SupplierStatusViewLineItemDetails_Left Specific the information that appears on the left and right
under the second level when the supplier views the
SupplierStatusViewLineItemDetails_Right collaboration request status.

Behavior Groups
The following groups are used to control the behavior of fields.

Group Description
CategoryDefinitionPermissionProperties Specifies the SharedGlobalItemProperties fields whose
visibility and editability can be set in the category definition.
LineItemDetailsMetaProperties Specifies the CategoryLineItemDetails fields whose visibility
and editability can be set in the category definition.
CategoryDefinitionEditItemProperties Specifies the GlobalItemProperties and ContractibleProperties
fields whose visibility, editability, and policy values can be set
in the category definition.
CollaborationMergeFields Specifies the fields that are merged from the accepted
collaboration proposal(s) onto the requisition.

160 Ariba Services Procurement Implementation Guide


Appendix E Metadata XML Reference Groups

Group Description
CandidateOverAcceptance Specifies whether to issue a warning or an error when multiple
candidates or proposals are accepted.
CategoryHeaderPrint Specifies the shared global item properties from the category
that are included when printing.
CategoryLineItemDetailsPrint Specifies the fields from the category line item details that are
included when printing.
CollaborationDetailsPrint Specifies the fields from collaboration that are included when
printing.
ContractProperties Specifies the fields that can be controlled by a contract (also
called contractible properties) and appear in contract screens.

Note: You cannot use integer fields as contractible factors. A


contractible factor is a field the user sees when creating
pricing terms for an Ariba Services Procurement item in a
contract request. For more information, see “Application of
Contract Terms” on page 52.
ContractProperties_MiscExpense Similar to ContractProperties but for Expense items.
Item

ContractProperties_FeeItem Similar to ContractProperties but for Fee items.


ContractProperties_MilestoneItem Similar to ContractProperties but for Milestone items.
CategoryHeaderExtrinsics Specifies extrinsic fields that are included on the outgoing
order to Ariba SN.
CategoryPropertyBucketClasses Specifies the classes that are considered non-leaf nodes for use
by the auto-calculation logic.
FilterInvalidInvitedSuppliers Specifies validity conditions that filter out invited suppliers if
they are not valid in the partition.

Ariba Services Procurement Implementation Guide 161


Groups Appendix E Metadata XML Reference

162 Ariba Services Procurement Implementation Guide


Appendix F Ariba Services Procurement API

• “Contractor Creation Engine” on page 163


• “Contractor Engine” on page 164
• “Labor Compliance Engine” on page 166

Contractor Creation Engine


In the default configuration, a contractor is created when a purchase order containing a line item for a
contractor is sent successfully to the supplier, and the contractor specified on the line item does not already
exist in the Ariba system. In this case, the contractor creation engine creates a new contractor object and
creates a new shared user for it.

The engine that creates the contractor from the information in the line item is the class that implements the
interface ariba.workforce.core.ContractorCreationProcessor. The default implementation of this class is
AribaContractorCreationProcessor. You can customize this class by deriving a new class from it, or by
creating a new implementation of ContractorCreationProcessor.

ContractorCreationProcess Class
The ContractorCreationProcessor class includes the following methods:

Method Description
findContractorForLineItem Looks for an existing contractor with the same contractor ID and name as
on the labor line item. If a matching Contractor is found, it returns that
object.
findUserForContractor Looks for an existing shared user to assign to the Contractor object. If a
matching shared user is found, it returns that User object.
createContractorForLineItem Creates a Contractor object using the contractor information (if available)
from the labor line item.

createUserForContractor Creates a User object for the specified Contractor using the contractor
information (if available) from the labor line item. The password adapter
for the user is specified by the Application.Workforce parameter
DefaultContractorUserPasswordAdapter.

For complete information on the ContractorCreationProcessor class and its methods, see the Javadoc.

Specifying a Custom Engine


If you create a custom contractor creation engine, set the
Application.Workforce.ContractorCreationProcessor parameter in config/Parameters.table to the name of
your implementation class. Save the file for your changes to take effect.

Ariba Services Procurement Implementation Guide 163


Contractor Engine Appendix F Ariba Services Procurement API

Processing Contractors
You can specify whether to process contractors and users immediately after a purchase order has been sent
or to wait until a scheduled task runs. You set this preference with the
Application.Workforce.UseBatchContractorCreation parameter. If set to true, the scheduled task
ProcessContractorCreation batch-processes the contractors. If set to false, the purchase order workflow
engine calls ContractorUtil.postOrderingProcessContractor to process the contractors immediately after
the purchase order is sent.

Contractor Engine
The logic for matching candidates to contractors in the system and the logic related to contractor time
tracking is defined in the ariba.workforce.core.ContractorEngine interface.

The ContractorEngine class includes the following methods:

Method Description
computeConsecutiveOnSiteDays Calculates and saves the values for consecutive onsite days and current sit days
for contractors, and the cut off date for when these calculations were last made.
For more information, see “Managing Contractor Time Tracking” on page 165.
findContractorMatchingCandidate Matches a proposed candidate with a contractor by looking for an existing
Contractor object in the system with the same contractor ID and name as on
the ContractorCandidate object. For more information, see “Matching a
Candidate to a Contractor” on page 165.
forecastConsecutiveDayCount Calculates and saves a forecast of the expected number of consecutive onsite
days for the candidate. The forecast includes the number of work days for the
proposed labor line item and the number of days the candidate has previously
worked (all previous labor orders the candidate worked on are used in the
calculation). For more information, see “Managing Contractor Time Tracking”
on page 165.

In the default configuration, the ContractorEngine interface is implemented by the


ariba.workforce.core.AribaContractorEngine class.

164 Ariba Services Procurement Implementation Guide


Appendix F Ariba Services Procurement API Contractor Engine

Matching a Candidate to a Contractor


The algorithm that matches candidates to contractors in the system is defined by the
findContractorMatchingCandidate ( ) method in the ContractorEngine interface.

In the default implementation (AribaContractorEngine class), the logic looks for a match by comparing the
name and partialGlobalID of a candidate (ContractorCandidate object) with a contractor (Contractor
object).

The match is stored in the MatchedContractor field on the ContractorCandidate object. The profile
information of the matched contractor (for example, whether the contractor has been designated as do not
hire) is then used to evaluate the candidate.

The logic for matching a candidate to a contractor can be changed by providing a customized
implementation of the findContractorMatchingCandidate ( ) method.

Managing Contractor Time Tracking


The algorithm that calculates the number of consecutive onsite days and current sit days is defined in the
computeConsecutiveOnSiteDays ( ) method in the ContractorEngine interface.

In the default implementation (AribaContractorEngine class), the logic searches time sheets (TimeSheetItem
objects) for payable time entries in the PayCode field. For each day a contractor works — whether on a
business day or a non-business day, and regardless of the number of hours in a day — the
ConsecutiveDayCount field on the Contractor object is increased by one. For each business day a contractor
does not work, the CurrentSitDayCount field on the Contractor object is increased by one. A non-business
day that is not worked does not count as a sit day.

In the default implementation, Monday through Friday are configured as business days. Business days are
configured using the following parameters:
• Application.Workforce.EndDayForWorkWeek
• Application.Workforce.StartDayForWorkWeek

The algorithm that forecasts the expected number of consecutive onsite days for a candidate is defined in the
forecastConsecutiveDayCount() method in the ContractorEngine interface.

The forecast includes the number of business days for the proposed labor line item (taken from the labor
order) for the candidate (it is assumed the candidate will work each of the proposed business days), and the
number of days the candidate has previously worked (taken from time sheets). Time sheets from all labor
orders associated with the candidate are used in the calculation. If the candidate meets the good sit period
(the minimum number of continuous sit days as set in the Application.Workforce.MinGoodSitDays
parameter), the previously worked days are not counted in the consecutive onsite days forecast.

The forecast calculation considers the delay between when a time sheet is submitted and when it is
approved. In the default implementation, the delay period is set to 15 days. Time sheets submitted prior to
the delay period must be approved in order for the data to be included in the calculation of the consecutive
onsite days forecast. Time sheets submitted during this delay period, even if not approved, are used in the
calculation. The algorithm checks the StartDate and EndDate fields on the TimeSheetItem object to determine
whether the time sheet must be approved or not to be used in the calculation. The delay period is configured
using the Application.Workforce.UnapprovedTimeSheetForecastDays parameter in config/Parameters.table,

The forecast period is from the date the last calculation of consecutive onsite and current sit days was made
(the cutoff date) to the last day of the proposed labor line item.

Ariba Services Procurement Implementation Guide 165


Labor Compliance Engine Appendix F Ariba Services Procurement API

Specifying a Custom Engine


If you create a custom contractor engine, set the Application.Workforce.ContractorEngine parameter in the
config/Parameters.table file to the name of your customized class. Save the file for your changes to take
effect.

Labor Compliance Engine


In the default configuration, the labor compliance engine is defined by the
ariba.workforce.core.LaborComplianceEngineImpl class. To override this class with a custom class, specify
the custom class with the Application.Workforce.LaborComplianceEngine parameter in
config/Parameters.table. Save the file for your changes to take effect.

The LaborComplianceEngineImpl class makes use of a default labor configuration file (and its extension file)
and a supporting DTD. When you define a custom labor compliance engine, it still uses the default labor
configuration file and extension to define billable and non-billable pay codes per labor territory or
sublocation.

To override any of the definitions in the default labor configuration file, modify the extension file
config/LaborComplianceExt.lcf. Typically, you modify this file annually to define this year’s holidays for
each territory or sublocation. If you do not need the compliance checks for the locations already specified in
this file (for example, if you do not have any offices in Mexico or Japan), you can remove those sections and
do not need to update them annually.

You can also add custom compliance checks to this file, such as specifying additional checks for the existing
territories and sublocations, or specifying the valid billable and non-billable pay codes for new locations. For
example:

<laborComplianceCheck
name="CA daily OT threshold 1"
period="daily"
payCode="Overtime"
orComplianceName="Federal Labor Standards Act weekly OT rate"
maxHoursPerPeriod="4"
overtimeHoursThreshold="8"
reason="@ariba.laborCompliance/CA_Overtime"
rateMultiplier="1.5"/>

The overtimeHoursThreshold attribute determines how many hours must be worked under the Regular pay
code before overtime applies. The maxHoursPerPeriod check specifies the maximum number of hours that
can be used with the pay code specified by the payCode attribute. The period attribute specifies whether this
check applies to a specific day of the week (such as dayOfWeek="1"), to any day of the week
(period="daily"), or to the whole week (period="weekly"). The rateMultiplier attribute is just a comment
that you can use as a reminder of what the overtime rate is.

If a time entry matches an overtimeHoursThreshold check for a specific day of the week, only checks for that
day and for the week are done. Otherwise, the daily and weekly checks (if any) are done. If any of the
overtimeHoursThreshold checks are valid, the overtime code is valid for that time entry. Conversely, all of the
MaxHoursPerPeriod checks must be valid for a time entry to be valid.

166 Ariba Services Procurement Implementation Guide


Appendix F Ariba Services Procurement API Labor Compliance Engine

For situations where it is necessary to meet only one compliance check out of many (equivalent to using an
OR condition), use the orComplianceName attribute. As each check is made, if the current check fails (for
example, maxHoursPerPeriod) but the orComplianceName check is valid, then the current check is considered
valid. orComplianceName must not reference the same value as the current check (a circular reference). The
reference must be one way or a chain.

For more details on the labor configuration file, see ariba\variants\Plain\workforce\LaborCompliance.lcf.

Warning: Do not modify this file in the ariba directory — make all modifications in the copy of the file in the
config directory. For more information about the attributes in this file, see
ariba\workforce\core\LaborCompliance.dtd.

Ariba Services Procurement Implementation Guide 167


Labor Compliance Engine Appendix F Ariba Services Procurement API

168 Ariba Services Procurement Implementation Guide


Index

A C
AcceptProposalConfirmation group 101 CandidateOverAcceptance group 161
AcceptProposalConfirmation_WithAcceptedFlag group CatalogManager permission 108
101 categories
access permissions classes for 154
DashboardAuthorized 109 classes for contracts 155
Internal 110 editability control 99
actions category conditions 156
defined 158 category drivers
failure notification 158 classes for 155
partial acceptance 158 customizing 155
time sheet processing 158 Category Manager role 112
AggregatedCategoryItemsDetails group 159 CategoryAutoSelectMAHook class 155
AggregatedCategoryPropertyEditability condition 156 CategoryCatalogItem class 154
AggregatedCategoryPropertyVisibility condition 157 CategoryDefinition class 154
AllowTimeSheetViolations parameter CategoryDefinitionCanChangeType condition 157
labor law compliance and 79 CategoryDefinitionCoreApprovable class 154
paycode compliance and 79 CategoryDefinitionPermission Properties group 160
Analyst role 112 categoryDefinitionPropertyAccess log category 92
ApprovableTypePull integration event 22 categoryDefinitionPropertyCompliance log category 93
approval rules categoryDefinitionPropertyUpdate log category 93
collaborative 62 CategoryDefinitionRequest class 154
time sheets and 86 CategoryHeaderExtrinsics group 103, 161
Ariba Buyer invoice names 85 CategoryHeaderPrint group 161
Ariba Services Procurement CategoryItem class 154
conditions 156 CategoryItemProperties class 154
installing 17 CategoryLineItemDetails class 155
AribaContractorCreationProcessor 163 CategoryLineItemDetailsFor Candidate group 159
AribaContractorCreationProcessor class 70, 163 CategoryLineItemDetailsPrint group 161
AribaContractorEngine class 70, 164 categoryProcurement log category 92
ASCCCommodityCodeParentPull integration event 20 CategoryPropertiesMeta class 154
ASCCCommodityCodePull integration event 20 CategoryPropertyBucketClasses group 161
ASCCToUNSPSCClassificationCodeMapPull CategoryPropertyCompliance condition 157
integration event 20 CategoryPropertyEditability condition 157
attachments, adding 98 CategoryPropertyVisibility condition 157
authorization permissions catgegories, visibility control 99
CreateContractorExpenseSheet 108 CheckOverAcceptance group 101
CreateRequisition 109 classes
CreateTimeSheet 109 Ariba Services Procurement 153
DashboardAuthorized 109 categories 154
EditCategory 109 categories related to contracts 155
auto-calculation collaboration 155
custom fields and 98 contractors 153
default category drivers 155
time sheets 153, 154
B ClassificationCodeDomainMetaPull integration event 21
behavior groups 160 co-employment risk
BiddingTypePull 21 calculations 74

Ariba Services Procurement Implementation Guide 169


Index

consecutive onsite days 70, 74, 147 contractor creation engine 163
current sit period 74 Contractor Password Adapter parameter 74
forecasting onsite days 70 ContractorCandidate class 153
good sit period 70, 74, 147 ContractorCreationEngine parameter 70
scheduled tasks 74 ContractorCreationProcessor class 163
collaboration 55 ContractorCreationProcessor parameter 163
approval rules 62 ContractorEngine class 164
controlling 62 ContractorEngine parameter 70, 166
customizing classes 155 ContractorExpenseTypePull integration event 20
collaboration conditions 157 ContractorPerformanceTenPointValuePull 21
collaboration log category 93 ContractorPerformanceThreePointValuePull 21
Collaboration Message Sent notification 120 contractors 67
collaboration notification messages classes for 153
Collaboration Message Sent 120 customizing 153
Collaboration Proposal Submitted 119 onboarding 67
Collaboration Proposal Withdrawn 119 paycodes and 78
Collaboration Request Declined 118 ContractorSurveyManager permission 108
Collaboration Request Routing Failure 118 ContractProperties group 161
Collaboration Proposal Submitted notification 119 ContractProperties_FeeItem group 161
Collaboration Proposal Withdrawn notification 119 ContractProperties_MilestoneItem group 161
Collaboration Request Declined notification 118 ContractProperties_MiscExpenseItem group 161
Collaboration Request Routing Failure notification 118 contracts
collaboration requests 55 classes for categories related to 155
collaboration team CounterProposal class 156
customizing 102 createContractorForLineItem method 163
defining 102 CreateContractorSurvey permission 109
CollaborationDetailsPrint group 161 CreateInvoicesForTimeSheets scheduled task 82, 83, 86,
CollaborationDocument class 155 125
CollaborationLineItem class 155 CreateRequisition permission 109
CollaborationLineItemDetails class 156 CreateTimeSheet permission 108, 109
CollaborationMergeFields group 160 createUserForContractor method 163
CollaborationNotInProgress condition 157 creating
CollaborationPending condition 157 field tips 102
CollaborationReasonPull integration event 22 invoices for time sheets 77, 88
CollaborationRequest class 156 time sheets 87
CollaborationRequestState class 156 CSV files, modifying 19
CollaborationState class 155 customizations
collaborationTeam rule 62 adding file attachment fields 98
CollaborationThread class 156 auto-calculating fields 98
CollaborationThreadDocument class 156 creating field tips 102
CollaborationThreadState class 156 defining collaboration team 102
CollaborationTypePull integration event 20 editability of fields 99
collaborative requisitions orders 103
scheduled tasks 61 visibility of fields 99
Commodity Manager role. See Category Manager role customizing
CommodityExportMapPull integration event 22 labor configuration file 103
computeConsecutiveOnSiteDays method 164 orders 103
ComputeConsecutiveOnSiteDays scheduled task 74, over-acceptance 101
124 supplier filtering 101
conditions CustomRankedSupplier field 101
categories 156 CXMLProcessUndeliveredPayloads scheduled task 61,
category 156 126
collaboration 157 time sheets and 86
configuration
time sheets 78
ContractCategoryFactory class 155 D
ContractCategoryUtil class 155 DashboardAuthorized permission 109
Contractor class 153 DefaultContractorUserPasswordAdapter parameter 69,

170 Ariba Services Procurement Implementation Guide


Index

163 display 159


DeferredTimeSheets scheduled task 82 metadata XML 159
display groups 159
do not hire
adding contractor to list 71 H
AribaContractorEngine class 164 HasCollaborated condition 157
viewing the list 71 HasCollaborativeLineItems condition 157
HasNoCollaborativeLineItems condition 157
hiding links from suppliers 102
E
editability
conditions 156 I
controlling 99 installing Ariba Services Procurement 17
EditCategory permission 109 integration events
endCollaboration rule running from Ariba Buyer Administrator 20
defined 63 time sheets 80
EndDayForWorkWeek parameter Internal permission 110
time sheets and 79 Internal role 113
expense sheets invoice names, time sheets and 85
creating 87 invoices
creating invoices for 88 converting expense sheets 88
ExpenseSheet class 154 converting time sheets 77
ExpenseSheetItem class 154 IsError parameter 101
IsRegularCategoryItem condition 157
IsValidMilestoneItemization condition 157
F Item Attributes worksheet 149
FailedCollaborationRequests scheduled task 61 Item Editability and Visibility worksheet 150
FailedTimeSheets scheduled task 82
failure notification actions 158
field tips 102 J
fields JavaScript TimeSheet Rules rule set 75, 83, 89
collaboration team definition 102
customizing 102
editability of 99 L
enforcing validation on 100 labor configuration file, customizing 103
tips 102 LaborComplianceEngine parameter
visability of 99 paycode compliance and 79
file attachment fields time sheets and 79
adding 98 LaborComplianceEngineImpl class 153
customizing 98 LaborPayCodeMapPull integration event
FilterInvalidInvitedSuppliers group 101, 161 configuration 22
findContractorForLineItem method 163 LaborPayCodePull integration event 20
findContractorMatchingCandidate method 164 launchCollaboration rule
findUserForContractor 163 approval rules and 62
findUserForContractor method 163 LineItemDescription group 159
forecastConsecutiveDayCount method 164 LineItemDetailsGeneral group
display groups and 159
LineItemDetailsGeneral_Right group 159
G LineItemDetailsMetaProperties group 160
global permissions LineItemGeneralFields_Category Driver group 159
DashboardAuthorized 109 LineItemSimpleGeneralFields group 160
Internal 110
global roles
Analyst 112 M
Internal 113 manager permissions
groups 159 CatalogManager 108
behavior 160 ExpenseSheetManager 108

Ariba Services Procurement Implementation Guide 171


Index

TimeSheetManager 111 JavaScript Contractor Survey Requester Rules 75


WorkforceManager 111 JavaScript Expense Sheet Rules 89
Mapped Item Properties worksheet 151 JavaScript Time Sheet Rules 83
Mapped Supplier Ranking worksheet 138
MasterAgreementCoreApprovable class 153
MaxConsecutiveOnSiteDays parameter 70, 74, 147 S
MessageKey parameter 101 scheduled tasks
metadata XML collaborative requisitions 61
groups 159 contractors 74
MinGoodSitDays parameter 70, 74, 147 time sheets 82, 89
SendCollaborationRoutingFailureEmail action 158
SendSurveyNotification scheduled task 130
N SendTimeSheetRoutingFailureEmail action 158
nametables 101 Service Category Header worksheet 136
notification messages SetupPartialAcceptancePolicy action 158
recipients 117 SharedGlobalItemProperties class 154
ShowCollaborationField condition 157
SimpleMapTypePull integration event 21
O StartDayForWorkWeek parameter
object model 153 timesheets and 79
onboarding contractors 67 StuckCollaborationRequests scheduled task 62, 131
orders, customizing 103 StuckTimeSheets scheduled task 82
over-acceptance, customizing 101 summary hours time sheet entry
specifying 78
supplier organization names 86
P SupplierRankingPull integration event 21
partial acceptance actions 158 suppliers
pay codes 78 customizing 102
time sheets and 78 filtering 101
preCollaboration rule Suppliers worksheet 137
approval rules and 62 SupplierViewLineItemLevelGroup group 160
ProcessContractorCreation scheduled task 74, 128, 164 SupplierViewSupplierLevelGroup group 160
contractor processing and 69
ProcessTimeSheet action 158
ProcureLineTypePull integration event 22 T
Proposal class 156 tax APIs 84
ProposalIsPartiallyAccepted condition 157 time sheet entries
pay codes 78
time sheet processing action 158
Q time sheets 77, 87
QualifiedValue class 155 approval rules 86
classes for 153, 154
configuring 78
R creating invoices for 77
Reason class 156 integration events 80
RecomputeConsecutiveOnSiteDays scheduled task 74, invoice names 85
128 scheduled tasks 82, 89
ReportMetaPull integration event 22 TimeSheet class 153
ReportQueryPull integration event 22 TimeSheetItem class 154
requisition header fields, adding properties as 99 TimeSheetManager permission 108, 111
respectable attribute 97 TimeSheetRoutingEnabled parameter 80
RetryFailedCollaborationLaunch scheduled task 62, 129 TimeSheetRoutingInfo class 154
roles triggers 158
Analyst 112
Category Manager 112 U
Internal 113
rule sets UnapprovedTimeSheetForecastDays parameter 71

172 Ariba Services Procurement Implementation Guide


Index

UnapprovedTimeSheetRoutingDeferDays parameter 80
UseBatchContractorCreation parameter 69, 164
User Profile Request document 67
user-entered values, preserving 97

V
validation of fields, enforcing 100
validity conditions 156
ValueQualifier class 155
ValueQualifierPull integration event 21
ViewContractorSurvey permission 111
visibility
conditions 156
controlling 99

W
workforce log category 93
WorkforceManager permission 111

Ariba Services Procurement Implementation Guide 173


Index

174 Ariba Services Procurement Implementation Guide

You might also like