You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
329 lines
8.2 KiB
329 lines
8.2 KiB
/*==============================================================================
|
|
Copyright (c) 2003-2005 UGS Corporation
|
|
Unpublished - All Rights Reserved
|
|
==============================================================================*/
|
|
|
|
/**
|
|
@file
|
|
|
|
This report.h file should be included in every report program,
|
|
and all the global definitions should reside here.
|
|
*/
|
|
|
|
/* */
|
|
|
|
#ifndef REPORT_H
|
|
#define REPORT_H
|
|
|
|
#include <fclasses/tc_string.h>
|
|
#include <fclasses/tc_time.h>
|
|
#include <tc/tc_startup.h>
|
|
#include <sa/tcfile.h>
|
|
#include <tccore/workspaceobject.h>
|
|
#include <ae/ae.h>
|
|
#include <sa/sa.h>
|
|
#include <tc/folder.h>
|
|
#include <ss/ss_const.h>
|
|
#include <fclasses/tc_stat.h>
|
|
#include <fclasses/tc_errno.h>
|
|
#include <fclasses/tc_stdlib.h>
|
|
#include <fclasses/tc_stdio.h>
|
|
|
|
|
|
/**
|
|
@defgroup REPORT Report
|
|
@ingroup USER_EXITS
|
|
@{
|
|
*/
|
|
|
|
/** Lines per page */
|
|
#define NEW_PAGE 64
|
|
|
|
#define EMPTY -1
|
|
|
|
#define ITEM 0
|
|
#define ITEMREVISION 1
|
|
|
|
/**
|
|
@name For Reports 9 through 12
|
|
@{
|
|
*/
|
|
#define NULLERR -11
|
|
#define NO_HDR 0
|
|
#define NEWPAGE_HDR 1
|
|
#define ADMIN_HDR 2
|
|
#define INFO_HDR 3
|
|
#define NULL_STRING "\0"
|
|
/** @} */
|
|
|
|
/** Names of Attributes to Print */
|
|
#define WSOM_name "Name"
|
|
|
|
/** @if DOX_IGNORE
|
|
Was "Item id"
|
|
@endif */
|
|
#define WSOM_item_id "ID"
|
|
|
|
/** @if DOX_IGNORE
|
|
Was "Revision id"
|
|
@endif */
|
|
#define WSOM_revision_id "Revision"
|
|
|
|
#define WSOM_description "Description"
|
|
#define WSOM_date_created "Date Created"
|
|
#define WSOM_group "Group ID"
|
|
|
|
/**
|
|
@name For Report on Items By Dataset
|
|
@{
|
|
*/
|
|
#define WSOM_release_date "Date Released"
|
|
#define WSOM_application "Application"
|
|
#define WSOM_classn "Classification"
|
|
#define WSOM_owner "Owner ID"
|
|
#define WSOM_rel_status "Release Status"
|
|
#define WSOM_obj_type "Type"
|
|
#define WSOM_version "Version Number"
|
|
/** @} */
|
|
|
|
/** @if DOX_IGNORE
|
|
Used in report10_itk.c
|
|
@endif */
|
|
#define REP10_spec_folder "Specification Folder"
|
|
|
|
typedef struct report_entry
|
|
{
|
|
const char* attr;
|
|
int index;
|
|
int indent;
|
|
int width;
|
|
int n_char;
|
|
} report_entry;
|
|
|
|
|
|
/** Structure for storing Admin. Data */
|
|
typedef struct admindata_s {
|
|
char Job_Name[WSO_name_size_c+1];
|
|
char Item_Crtd_Dt[WSO_name_size_c+1];
|
|
char Item_Owner[SA_user_size_c+1];
|
|
char Res_Uname[SA_user_size_c+1];
|
|
char Res_Dt[WSO_name_size_c+1];
|
|
char Res_Reason[WSO_name_size_c+1];
|
|
}AdminData;
|
|
|
|
/** Structure for storing report13 data */
|
|
typedef struct report13_s{
|
|
char Job_Name[WSO_name_size_c+1];
|
|
char Procedure[WSO_name_size_c+1];
|
|
char Target_object[WSO_name_size_c+1];
|
|
}Report13_Data;
|
|
|
|
#include <user_exits/libuser_exits_exports.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
extern USER_EXITS_API void USER_set_print_hdr_flag(int flag);
|
|
|
|
extern USER_EXITS_API void USER_set_head_width(int width);
|
|
|
|
extern USER_EXITS_API void USER_set_rep4_header(const char *headerString, int index);
|
|
|
|
/** Group Name of Report #8 */
|
|
extern USER_EXITS_API void USER_set_rep8_group(const char *group_name);
|
|
|
|
/** Group Name used for Reports */
|
|
extern USER_EXITS_API void USER_set_rep_group_name(const char *group_name);
|
|
|
|
/** Owner Name used for Reports */
|
|
extern USER_EXITS_API void USER_set_rep_owner_name(const char *owner_name);
|
|
|
|
extern USER_EXITS_API int NonReleased_Item_Report (void);
|
|
|
|
/** @if DOX_IGNORE
|
|
report3_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Released_Item_Report (
|
|
logical prompt_for_input, /**< (I) */
|
|
const char* tasktype_name /**< (I) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report4_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Employee_Sum_Report (
|
|
logical prompt_for_input, /**< (I) */
|
|
int attr_ct, /**< (I) */
|
|
int* attr_array /**< (I) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report5_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Item_Summary_Report (void);
|
|
|
|
/** @if DOX_IGNORE
|
|
report6_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int By_Proj_Item_Summary_Report (void);
|
|
|
|
/** @if DOX_IGNORE
|
|
report7_itk.c (in CXX) a C++ declaration needed for now!!!
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Users_and_Release_Levels_Report (
|
|
const char* group_name /**< (I) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report8_itk.c
|
|
@endif */
|
|
|
|
/**
|
|
Produces the summary report for objects which are in process with
|
|
workflow process_templates and owned by requested group.
|
|
<br>Report depicts one to one relationship between objects, process templates and tasks.
|
|
<br><br><b>Restrictions:</b>
|
|
The output device must be set through the call to #setOutputDevice, in order to print reports on the required device.
|
|
<br><br><b>Return Values:</b>
|
|
<ul>
|
|
<li>#ITK_ok on success: the requested group exists and the summary report is generated.</li>
|
|
<li>#SA_group_not_found if no group exists with the requested name.</li>
|
|
<li>#SA_finding_group if more than one group exist with the requested name.</li>
|
|
</ul>
|
|
*/
|
|
|
|
extern USER_EXITS_API int Access_Levels_Report (
|
|
const char* group_name /**< (I) Name of the group for which summary report is asked */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report9_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Mass_Storage_Report (
|
|
const char* owner_name, /**< (I) */
|
|
const char* group_name /**< (I) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report10_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Object_Inquiry (
|
|
const char* item_folder_id, /**< (I) */
|
|
const char* item_version_id /**< (I) */
|
|
);
|
|
|
|
extern USER_EXITS_API int Object_Search (
|
|
tag_t ivf_tag /**< (I) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report11_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int ItemsByDataset (
|
|
const char* dsetName, /**< (I) */
|
|
const char* dsetType, /**< (I) */
|
|
const char* owner_name, /**< (I) */
|
|
const char* group_name /**< (I) */
|
|
);
|
|
|
|
extern USER_EXITS_API int Get_Item_AdminData(
|
|
tag_t dset_tag, /**< (I) */
|
|
WSO_descriptor_t info, /**< (I) */
|
|
AdminData* admin_data /**< (O) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report12_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API int Object_By_Group(
|
|
char* group_name /**< (I) */
|
|
);
|
|
|
|
/** @if DOX_IGNORE
|
|
report13_itk.c
|
|
@endif */
|
|
|
|
|
|
|
|
|
|
extern USER_EXITS_API int Job_Status(
|
|
char* job_name /**< (I) */
|
|
);
|
|
|
|
/**
|
|
This is a not like the other reports that are shown on the
|
|
list of reports at the UIF level so we will not give it a
|
|
number. See Import_Export_Report function in replib_itk.c
|
|
for details.
|
|
*/
|
|
|
|
extern USER_EXITS_API int Import_Export_Report(
|
|
const char* reportStr /**< (I) */
|
|
);
|
|
|
|
|
|
/** @if DOX_IGNORE
|
|
replib_itk.c
|
|
@endif */
|
|
|
|
extern USER_EXITS_API void store_entry_index (
|
|
WSO_descriptor_t* info,
|
|
report_entry* ps,
|
|
int n_limit
|
|
);
|
|
|
|
extern USER_EXITS_API int print_report (
|
|
WSO_descriptor_t* info,
|
|
report_entry* ps,
|
|
int n_limit,
|
|
int align_mode
|
|
);
|
|
|
|
extern USER_EXITS_API int print_a_row (
|
|
char* arow,
|
|
report_entry* ps,
|
|
int n_limit
|
|
);
|
|
|
|
extern USER_EXITS_API char* infoman_itoa (
|
|
int n
|
|
);
|
|
|
|
extern USER_EXITS_API void setNewReport(void);
|
|
|
|
extern USER_EXITS_API void setReportOption(
|
|
int rpt_option_in /**< (I) */
|
|
);
|
|
|
|
extern USER_EXITS_API void setOutputDevice(
|
|
FILE* device_out
|
|
);
|
|
|
|
extern USER_EXITS_API FILE* getOutputDevice(void);
|
|
|
|
extern USER_EXITS_API void Print_Item_AdminData(
|
|
AdminData admin_data,
|
|
report_entry* ps,
|
|
int n_limit
|
|
);
|
|
|
|
/** @} */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#include <user_exits/libuser_exits_undef.h>
|
|
|
|
#endif
|