• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 3399
2005.01.21 (03:39:46)
Long Raw 의 데이타 처리는 BLOB 처리하는 Type 이 따로 있어요

다음과 같이 테스트를 진행 할 수 있을 겁니다.

int ret;
int i;
char TB_Mime[255];
int blob_size;
char *Blob;
FILE *fp;
TBA_DATA tba_data[1];

ret = TBAPI_Init(tba_data, "/home/toinb/toinb_api/message.ko","/tmp/Toinb_api.log");
if ( ret < 0 )
{
        fprintf(stderr,"ERROR: [%d : %s]\n",TBAPI_GetErrorNo(tba_data),TBAPI_GetErrorMsg(tba_data));
}

ret = TBAPI_SetArg(tba_data,"jpg_id=lee001",',','=');
ret = TBAPI_GetData(tba_data,"210.124.184.4","6001",30,"get_jpg_blob(O:output=out)");
ret = TBAPI_GetColumnBlob(tba_data, "out",i, "TB_Blob", (void **)&Blob, &blob_size);
ret = TBAPI_GetColumnString(tba_data, "out",i, "TB_mime", TB_Mime, sizeof (TB_Mime), TB_STRING);

printf ("blob size[%d]\n", blob_size);
printf ("blob mime[%s]\n", TB_Mime);

fp = fopen("/tmp/blob.jpg","w");
ret = fwrite(Blob,1,blob_size,fp);
fclose(fp);

TBAPI_Free(tba_data);

일반적으로 위의 작업을 수행하려면 BLOB 만 처리하는 Service가 따로 존재 해야 해요

그래서 그 BLOB 서비스를 URL 로 가져와서 처리를 해야 하는 방법이 있어요

위의 소스가 얼마나 도움이 될런지 모르겠지만,

1) BLOB 처리 하는 Service

2) 데이타를 처리하는 Service 에서 URL 타입으로 BLOB 처리하는 Service 콜해서 처리

2번에서 아래의 부분에 TB_URL 를 추가 해야 하고

콜은 이벤트에서 다음과 같이 처리할 수 있습니다.

...
strcpy(tmp_url, "/edu_demo?toinb_dataid4=Data_Long_sl02&Num1=");
...

tmp_url은 URL 타입으로 선언한 헤더이고요....

도움이 되었으면 합니다.

>* 고객시스템명 : 사내시스템
>* TOInB 버전 : 5.0
>* 서버 Platform : IBM P690, oracle 8i
>* 문의 유형(질문/요청/참조) : C에서 TOInB API Library 관련문의
>* 내용 :
>
>C에서 API Library를 이용하여 transaction을 생성합니다.
>그런데, 이때 long raw를 저장하려고 하는데 도통 어떻게 해야 할지 모르겠네요
>
>html에서는 쉽게 예제도 있고 한데, C에서는 어떻게 해야 할지 샘플있으면 부탁드립니다.
>
>long raw이외는 다음과 같이 했고, 별 문제 없이 잘됩니다.
>
>      TBAPI_CreateDatatable(tba_data, "input1");
>      TBAPI_SetFormat(tba_data, "input1", TB_NORMAL_COL, "Edi_seq", TB_STRING, 11, 0);
>      TBAPI_SetFormat(tba_data, "input1", TB_NORMAL_COL, "Bal_resno", TB_STRING, 13, 0) ;
>      TBAPI_SetFormat(tba_data, "input1", TB_NORMAL_COL, "Bal_hname", TB_STRING, 20, 0);
>      TBAPI_SetFormat(tba_data, "input1", TB_NORMAL_COL, "Bal_deptnm", TB_STRING, 24, 0);
>      TBAPI_SetFormat(tba_data, "input1", TB_NORMAL_COL, "Bal_jikwi", TB_STRING, 20, 0);
>      TBAPI_SetFormat(tba_data, "input1", TB_NORMAL_COL, "Confirmer_cnt", TB_STRING, 2, 0);
>
>      TBAPI_PutColumnString(tba_data, "input1", "Edi_seq", ls_var1[0], strlen(ls_var1[0]), TB_STRING);
>      TBAPI_PutColumnString(tba_data, "input1", "Bal_resno", ls_var1[1], strlen(ls_var1[1]), TB_STRING);
>      TBAPI_PutColumnString(tba_data, "input1", "Bal_hname", ls_var1[2], strlen(ls_var1[2]), TB_STRING);
>      TBAPI_PutColumnString(tba_data, "input1", "Bal_deptnm", ls_var1[3], strlen(ls_var1[3]), TB_STRING);
>      TBAPI_PutColumnString(tba_data, "input1", "Bal_jikwi", ls_var1[4], strlen(ls_var1[4]), TB_STRING);
>      TBAPI_PutColumnString(tba_data, "input1", "Confirmer_cnt", ls_var1[5], strlen(ls_var1[5]), TB_STRING);
>
>      TBAPI_InsertRow(tba_data, "input1", TB_JOB_INSERT);  
>    
>      TBAPI_Connect(tba_data, "XXX.XXX.XXX.XXX", "XXXX", 6);
>
>      TBAPI_SendData(tba_data, "AAA_t01(I:input1=input1)");
>      int ret = TBAPI_ReceiveData(tba_data);
>
번호 제목 닉네임 조회 등록일
17 SO sql 길이 제한에 관해
조성제
3133 2004-12-17
16 SO sql 길이 제한에 관해
정병호
3277 2004-12-22
15 TOInB API Library Reference관련문의
조성제
3152 2004-12-16
Selected TOInB API Library Reference관련문의
박지훈
3399 2005-01-21
13 Tr_connectSE() 함수에서 서버접속이 안되는건 왜 그러죠?
장영수
3022 2004-12-13
12 Tr_connectSE() 함수에서 서버접속이 안되는건 왜 그러죠?
이장환
3195 2004-12-15
11 SOB 업그레이드 요청
공정민
3095 2004-12-10
10 [q]기존 온라인 메뉴얼은 제공을 하지 않나요??
전용태
3096 2004-12-08
9 [q]기존 온라인 메뉴얼은 제공을 하지 않나요??
관리자
3195 2004-12-09
8 reporter관련 전체출력.문제.. 파일
전성연
3098 2004-12-01
7 reporter관련 전체출력.문제..
관리자
3216 2004-12-02
6 Report
황과장
3278 2004-12-01
5 Report
정병호
3312 2004-12-01
4 Report
황과장
3115 2004-12-01
3 Report
황과장
3132 2004-12-01
2 TOInB 다운로드에 없는 내용입니다
김정호
3180 2004-11-24
1 TOInB 다운로드에 없는 내용입니다
관리자
3616 2004-11-24
Tag List
XE Login