jdeGT_FetchData/jdeGT_FetchDataEx
Last Modified: B9 | October 2, 2020
This function will retrieve one record from the Media Object table (F00165).
Syntax
JDERTN(JDEDB_RESULT) JDEWINAPI jdeGT_FetchData(
HREQUEST hRequestGT,
LPMODATA *lpMOData
BOOL bConvRTFText);
JDERTN(JDEDB_RESULT) JDEWINAPI jdeGT_FetchDataEx(
HREQUEST hRequestGT,
JCHAR *szObjectName,
JCHAR *szGTKey,
LPMODATA *lpMOData
BOOL bConvRTFText);
Parameters
Parameter Notes Usage
hRequestGT Input/Required GT table handle to be closed
and released.
szObjectName Output Object name (OBNM) -
Character array
szGTKey Output Generic Text Key in the string
format (TXKY) – character
array.
*lpMOData Output Allocated memory for data
bConvRTFText Input TRUE = Convert any RTF text
to plain text.
Return Value
Return Value Description
JDEDB_PASSED Return value if this API succeeds
JDEDB_FAILED Return value if this API fails
Example
Example #1:
JDEDB_RESULT JDBReturn = JDEDB_PASSED;
HREQUEST hRequestGT = NULL;
HUSER hUser = NULL;
JCHAR szFromDatasource[51] = _J(“Business Data – Adev733o”);
JCHAR szObjectName[11] = _J(“ABGT”);
493192510.doc 1
jdeGT_FetchData
JCHAR szFormatKey[255] = _J(“1”);
JCHAR szLang[3] = _J(“”);
LPMODATA lpGTData = NULL;
JDBReturn = JDB_InitBhvr(.., &hUser);
JDBReturn = jdeGT_OpenTable (hUser, szFromDatasource, szObjectName, &hRequestGT);
if (JDBReturn == JDEDB_PASSED)
{
JDBReturn = jdeGT_SelectDataKeyStr (hRequest, szObjectName, szFormatKey, szLang,
OBJ_JDEOLE);
}
if (JDBReturn == JDEDB_PASSED)
{
JDBReturn = jdeGT_FetchData(hRequest, lpGTData, FALSE;
while (JDBReturn = JDEDB_PASSED)
{
jdeGT_DeleteDataKeyStr(hRequest, szObjectName, szFormatKey, lpGTData->nSeq);
jdeGTFreeMOData(lpGTData, 1);
JDBReturn = jdeGT_FetchData(hRequest, lpGTData, FALSE;
}
}
jdeGTFreeMOData(lpGTData, 1);
jdeGT_CloseTable(hRequestGT);
JDB_FreeBhvr(hUser);
return;
Example #2:
JDEDB_RESULT JDBReturn = JDEDB_PASSED;
HREQUEST hRequestGT = NULL;
HUSER hUser = NULL;
JCHAR szFromDatasource[51] = _J(“Business Data – Adev733o”);
JCHAR szObjectName[11] = _J(“ABGT”);
DSABGT dsAbGT = {0};
JCHAR szLang[3] = _J(“”);
LPMODATA lpGTData = NULL;
JDBReturn = JDB_InitBhvr(.., &hUser);
ParseNumericString(dsAbGT.mnAddressNumber, _J(“1”));
JDBReturn = jdeGT_OpenTable (hUser, szFromDatasource, szObjectName, &hRequestGT);
if (JDBReturn == JDEDB_PASSED)
{
JDBReturn = jdeGT_SelectData(hRequest, szObjectName, &dsAbGT, szLang, OBJ_JDEOLE);
}
if (JDBReturn == JDEDB_PASSED)
{
JDBReturn = jdeGT_FetchData(hRequest, lpGTData, FALSE;
while (JDBReturn = JDEDB_PASSED)
B9 January, 2002 2
jdeGT_FetchData
{
jdeGT_DeleteData(hRequest, szObjectName, &dsAbGT, lpGTData->nSeq);
jdeGTFreeMOData(lpGTData, 1);
JDBReturn = jdeGT_FetchData(hRequest, lpGTData, FALSE;
}
}
jdeGTFreeMOData(lpGTData, 1);
jdeGT_CloseTable(hRequestGT);
JDB_FreeBhvr(hUser);
return;
Example #2:
JDEDB_RESULT JDBReturn = JDEDB_PASSED;
HREQUEST hRequestGT = NULL;
HUSER hUser = NULL;
LPMODATA lpGTData = NULL;
JCHAR szGTKey[256] = _J("");
JCHAR szObjName[11] = _J("");
JDBReturn = JDB_InitBhvr(lpBhvrCom, &hUser,(JCHAR *) NULL,
JDEDB_COMMIT_AUTO
);
if (lpDS->idHRequestGT == NULL)
{
JDBReturn = jdeGT_OpenTable (hUser, lpDS->szFromDatasource,
lpDS->szObjectName, &hRequestGT);
lpDS->idHRequestGT = (ID) jdeStoreDataPtr(hUser, hRequestGT);
else
{
hRequestGT = (HREQUEST) jdeRetrieveDataPtr(hUser, lpDS->idHRequestGT);
if (hRequstGT)
{
JDBReturn = jdeGT_SelectData(hRequest, lpDS->szObjectName,
NULL, lpDS->szLang, OBJ_JDEOLE);
if (JDBReturn == JDEDB_PASSED)
{
JDBReturn = jdeGT_FetchDataEx(hRequest, szObjName, szGTKey, lpGTData, TRUE);
if (JDBReturn = JDEDB_PASSED)
{
jdeStrncpy(lpDS->szGTKeyData, szGTKey, 255);
jdeStrncpy(lpDS->szTextData, lpGTData->pData, 255);
jdeGTFreeMOData(lpGTData, 1);
else
{
jdeRemoveDataPtr(hUser, lpDS->idHRequestGT);
lpDS->idHRequestGT = 0L;
}
}
else
{
jdeRemoveDataPtr(hUser, lpDS->idHRequestGT);
lpDS->idHRequestGT = 0L;
}
B9 January, 2002 3
jdeGT_FetchData
if (hRequestGT && lpDS->idHRequestGT == 0)
{
jdeGT_CloseTable(hRequestGT);
}
JDB_FreeBhvr(hUser);
return;
Additional Notes
This API must be invoke after jdeGT_OpenTable() api is used.
This API is used for multiple access of the table within one function scope.
MODATA (or LPMODATA) Data Structure definition:
MODATA, *LPMODATA
Data Type Data Description Note
int nSeq Sequence number from
MOSEQN
MOTYPE nMOType Media Object Type
JCHAR szUser[11] User name
JDEDATE jdDate Date updated
MATH_NUMERIC mnTime Time updated
BOOL bRTFData TRUE = RTF Text
FALSE = Plain Text or others
JCHAR szItemName[GT_ITNM Item name
SIZE]
JCHAR szQueueName[GT_Q
UESIZE]
JCHAR szFileName[GT_FILES
IZE]
PJSTR pData Allocate memory for text and
shortcut media object type.
MOTYPE definition:
DEFINE TYPE NOTE
OBJ_JDEALL All Media Object Types
OBJ_RTFTEXT Text Media Object
OBJ_JDEIMAGE Image Media Object
OBJ_JDEOLE OLE Media Object
OBJ_MISCJDESHORTCUT Shortcut Media Object
OBJ_MISCIMAGEVENDOR Third party vendor
OBJ_MISCHTML HTML/URL/File Media Object
B9 January, 2002 4
jdeGT_FetchData
See Also
Function Name Description
jdeGT_OpenTable Open F00165 and return the table handle
jdeGT_CloseTable Close F00165 and release table handle
jdeGT_SelectData Select data from F00165 table
jdeGT_SelectDataKeyStr Select data from F00165 table with formatted string
(TXKY)
jdeGT_FetchData Retrieve record from F00165
jdeGT_UpdateData Update record to F00165
jdeGT_UpdateDataKeyStr Update record to F00165 with formatted string (TXKY)
jdeGT_InsertData Insert record to F00165
jdeGT_InsertDataKeyStr Insert record to F00165 with formatted string (TXKY)
jdeGT_DeleteData Delete record from F00165
jdeGT_DeleteDataKeyStr Delete record from F00165 with formatted string
(TXKY)
B9 January, 2002 5