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.

258 lines
7.7 KiB

//Copyright 2020 Siemens Digital Industries Software
//==================================================
//Copyright $2020.
//Siemens Product Lifecycle Management Software Inc.
//All Rights Reserved.
//==================================================
//Copyright 2020 Siemens Digital Industries Software
/*==================================================================================================
File description:
This file contains the declaration for the Business Object, TransactionElement
Filename: TransactionElement.hxx
Module: transactionprocessing
@BMIDE autogenerated
==================================================================================================*/
#ifndef TEAMCENTER__TRANSACTIONPROCESSING__TRANSACTIONELEMENT__HXX
#define TEAMCENTER__TRANSACTIONPROCESSING__TRANSACTIONELEMENT__HXX
#include <unidefs.h>
#include <vector>
#include <string>
#include <common/tc_deprecation_macros.h>
#include <mrocore/HierarchicalWSO.hxx>
#include <transactionprocessing/libtransactionprocessing_exports.h>
namespace Teamcenter
{
namespace transactionprocessing
{
class TransactionElement;
}
}
namespace Teamcenter
{
namespace transactionprocessing
{
class TransactionElementImpl;
}
}
namespace Teamcenter
{
namespace transactionprocessing
{
class TransactionElementDelegate;
}
}
namespace Teamcenter
{
namespace transactionprocessing
{
class TransactionElementDispatch;
}
}
namespace Teamcenter
{
namespace transactionprocessing
{
class TransactionElementGenImpl;
}
}
namespace Teamcenter
{
class RootObjectImpl;
}
class TRANSACTIONPROCESSING_API Teamcenter::transactionprocessing::TransactionElement
: public ::Teamcenter::mrocore::HierarchicalWSO
{
public:
/**
* Get the Interface Name
* @return - return desc for getInterfaceName
*/
static const std::string& getInterfaceName();
///
/// Getter for a Tag Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getActivity_cost( tag_t &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getApproval( std::string &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getDisposition( std::string &value, bool &isNull ) const;
///
/// Getter for a Date Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getDisposition_date( date_t &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getDispositioned_by( std::string &value, bool &isNull ) const;
///
/// Getter for a Date Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getDue_date( date_t &value, bool &isNull ) const;
///
/// Getter for a Date Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getInitiation_date( date_t &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getMropurpose( std::string &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getTransaction_element_type( std::string &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 8.0.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getTransaction_id( std::string &value, bool &isNull ) const;
///
/// Approval operation
/// @version Teamcenter 8.0.1
/// @param strucRoot - Root of the Service Group or Service Event structure
/// @return - success or failure
///
int approval( tag_t strucRoot );
///
/// Approval process
/// @version Teamcenter 8.0.1
/// @return - Success or failure
///
int approvalProcess( );
///
/// processes the part movements
/// @version Teamcenter 8.0.1
/// @param serviceEvents - service event vector
/// @param partMovements - part movement vectors
/// @return - returns success or failure
///
int processPartMovements( std::vector< tag_t > &serviceEvents, std::vector< tag_t > &partMovements );
///
/// The operation determines if the given object is a subtype of the given Business Object.
/// @version Teamcenter 9.1
/// @param inputObject - Object to be validated
/// @param typeName - Type name to validate if the object is a subtype of it.
/// @param result - Return true if the object is subtype of the given type.
/// @return - Return true if the given object is a subtype of the given Business Object.
///
int stp0isObjSubTypeof( tag_t inputObject, std::string &typeName, bool *result );
///
/// validate objects prior to the approval
/// @version Teamcenter 8.0.1
/// @return - success or failure
///
int validateApproval( );
protected:
// Method to initialize
virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
/**
* Constructor
*/
TransactionElement();
/**
* Destructor
*/
virtual ~TransactionElement();
private:
// Getter method for the Implementation Object
TransactionElementImpl* getTransactionElementImpl() const;
// Setter method for the Implementation Object
::Teamcenter::RootObjectImpl* setTransactionElementImpl( ::Teamcenter::RootObjectImpl* impl );
// Method to set the delete impl boolean
void setDeleteImpl( bool del );
// Pointer to the Implementation object
TransactionElementImpl* m_transactionelementImpl;
// Flag to indicate if Implementation object needs to be deleted
bool m_deleteImpl;
/**
* Name of the Business Object
*/
static std::string name;
/**
* Private default constructor. We do not want this class instantiated without the business object passed in.
* @param TransactionElement - desc for TransactionElement parameter
*/
TransactionElement( const TransactionElement& );
TransactionElement& operator=( const TransactionElement& );
friend class TransactionElementDelegate;
friend class TransactionElementDispatch;
friend class TransactionElementGenImpl;
};
#include <transactionprocessing/libtransactionprocessing_undef.h>
#endif // TEAMCENTER__TRANSACTIONPROCESSING__TRANSACTIONELEMENT__HXX