Hi WhippingBoy
Thanks for the info
At last I used the api, but not at low level like you, I followed the example on Doc ID 639974.1 and also on bsfn B3101930 - GT4311 Insert Generic Text
and created my own insert on GT4211A
here it is, maybe it is useful for others
***************** start of .c *********************
#include <jde.h>
#define b5600001
/*****************************************************************************
* Source File: B5600002
*
* Description: Funciones de Fundamentos Comunes
*
* History:
* Date Programmer SAR# - Description
* ---------- ---------- -------------------------------------------
* 18/09/2013 C. Lorenzo TRID-2161 Retrofit 9.1
*
* Copyright (c) SUMTEC, S.L. 2013
*
* This unpublished material is proprietary to SUMTEC, S.L.
* All rights reserved. The methods and techniques described herein are
* considered trade secrets and/or confidential. Reproduction or
* distribution, in whole or in part, is forbidden except by express
* written permission of SUMTEC, S.L.
****************************************************************************/
/**************************************************************************
* Notes:
*
**************************************************************************/
#include <b5600001.h>
/**************************************************************************
* Business Function: InsertaTextoenGT4211A
*
* Description: Inserta Texto en Media Object GT4211A
*
* Parameters:
* LPBHVRCOM lpBhvrCom Business Function Communications
* LPVOID lpVoid Void Parameter - DO NOT USE!
* LPDSD5600002 lpDS Parameter Data Structure Pointer
*
*************************************************************************/
JDEBFRTN (ID) JDEBFWINAPI InsertaTextoenGT4211A (
LPBHVRCOM lpBhvrCom,
LPVOID lpVoid,
LPDSD5600002 lpDS
)
{
/************************************************************************
* Variable declarations
************************************************************************/
ID idJDEDBReturn = JDEDB_PASSED; /* DB API Return Code */
HUSER hUser = (HUSER)NULL;
/************************************************************************
* Declare structures
************************************************************************/
DSGT4211A ClaveMediaObject = {0};
/************************************************************************
* Declare pointers
************************************************************************/
/************************************************************************
* Check for NULL pointers
************************************************************************/
if ((lpBhvrCom == (LPBHVRCOM) NULL) ||
(lpVoid == (LPVOID) NULL) ||
(lpDS == (LPDSD5600002) NULL))
{
jdeErrorSet (lpBhvrCom, lpVoid, (ID) 0, _J("4363"), (LPVOID) NULL);
return ER_ERROR;
}
/************************************************************************
* Set pointers
************************************************************************/
/************************************************************************
* Initialize Behavior Routine
************************************************************************/
idJDEDBReturn = JDB_InitBhvr(
(void *)lpBhvrCom,
&hUser,
(JCHAR *) NULL,
JDEDB_COMMIT_AUTO
);
if (idJDEDBReturn != JDEDB_PASSED)
{
jdeSetGBRError(lpBhvrCom, lpVoid, (ID) 0, _J("3143"));
return ER_ERROR;
}
/************************************************************************
* Main Processing
************************************************************************/
// Preparo la clave en la estructura
MathCopy(&ClaveMediaObject.mnLinenumber, &lpDS->Linea_LNID);
MathCopy(&ClaveMediaObject.mnSalesOrderNumber, &lpDS->NumeroPedido_DOCO);
jdeStrncpy(ClaveMediaObject.szSalesOrderkeyCompany, lpDS->Compania_KCOO, DIM(ClaveMediaObject.szSalesOrderkeyCompany)-1);
jdeStrncpy(ClaveMediaObject.szSalesOrdertype, lpDS->TipoPedido_DCTO, DIM(ClaveMediaObject.szSalesOrdertype)-1);
// Inserto el media Object
ModifyGenericText(_J("GT4211A"), 0, &ClaveMediaObject, lpDS->Texto_LNGTEXT);
/************************************************************************
* Function Clean Up
************************************************************************/
return (ER_SUCCESS);
}
************************* END of .c **************************
****************** start of .h ******************
/*****************************************************************************
* Header File: B5600001.h
*
* Description: Funciones de Fundamentos Comunes
*
* History:
* Date Programmer SAR# - Description
* ---------- ---------- -------------------------------------------
* 18/09/2013 C. Lorenzo TRID-2161 Retrofit 9.1
*
*
* Copyright (c) SUMTEC, S.L. 2013
*
* This unpublished material is proprietary to SUMTEC, S.L.
* Company. All rights reserved. The methods and techniques described
* herein are considered trade secrets and/or confidential. Reproduction
* or distribution, in whole or in part, is forbidden except by express
* written permission of SUMTEC, S.L.
****************************************************************************/
#ifndef __B5600001_H
#define __B5600001_H
/**
* TYPEDEF for Data Structure
* D5600002 : Inserta Texto en media Object GT4211A
*
* Copyright Oracle USA
*
* This is a JDEdwards EnterpriseOne generated file.
* Do not modify this file.
* Only re-generate with the appropriate tool.
* Generation Date : 19/09/2013
*/
#ifndef DATASTRUCTURE_D5600002
#define DATASTRUCTURE_D5600002
typedef struct tagDSD5600002
{
JCHAR Compania_KCOO[6];
JCHAR TipoPedido_DCTO[3];
MATH_NUMERIC NumeroPedido_DOCO;
MATH_NUMERIC Linea_LNID;
JCHAR Texto_LNGTEXT[50001];
} DSD5600002 , *LPDSD5600002;
#define IDERRCompania_KCOO_4 4L
#define IDERRTipoPedido_DCTO_5 5L
#define IDERRNumeroPedido_DOCO_6 6L
#define IDERRLinea_LNID_7 7L
#define IDERRTexto_LNGTEXT_9 9L
#endif /* DATASTRUCTURE_D5600002 */
/**
* TYPEDEF for Data Structure
* GT4211A :
*
* Copyright Oracle USA
*
* This is a JDEdwards EnterpriseOne generated file.
* Do not modify this file.
* Only re-generate with the appropriate tool.
* Generation Date : 19/09/2013
*/
#ifndef DATASTRUCTURE_GT4211A
#define DATASTRUCTURE_GT4211A
typedef struct tagDSGT4211A
{
MATH_NUMERIC mnSalesOrderNumber;
JCHAR szSalesOrdertype[3];
JCHAR szSalesOrderkeyCompany[6];
MATH_NUMERIC mnLinenumber;
} DSGT4211A , *LPDSGT4211A;
#define IDERRmnSalesOrderNumber_1 1L
#define IDERRszSalesOrdertype_2 2L
#define IDERRszSalesOrderkeyCompany_3 3L
#define IDERRmnLinenumber_4 4L
#endif /* DATASTRUCTURE_GT4211A */
/*****************************************************************************
* Source Preprocessor Definitions
****************************************************************************/
#if defined (JDEBFRTN)
#undef JDEBFRTN
#endif
#if defined (WIN32)
#if defined (WIN32)
#define JDEBFRTN(r) __declspec(dllexport) r
#else
#define JDEBFRTN(r) __declspec(dllimport) r
#endif
#else
#define JDEBFRTN(r) r
#endif
/*****************************************************************************
* Business Function Prototypes
****************************************************************************/
JDEBFRTN (ID) JDEBFWINAPI InsertaTextoenGT4211A (LPBHVRCOM lpBhvrCom, LPVOID lpVoid, LPDSD5600002 lpDS);
#endif /* B5600002.h */
********************** end of .h ********************
Best Regards