Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #144795

Pro*c compile and nested structure

Newsgroups comp.lang.c
Date 2019-06-13 02:23 -0700
Message-ID <ae271cd6-e174-4882-ab14-e59dfab203e2@googlegroups.com> (permalink)
Subject Pro*c compile and nested structure
From WalkeR Park <walker.ykpark@gmail.com>

Show all headers | View raw


Hello, I just make a code based on Pro*c of Oracle....
but It did return strange Error. 
It did not recognize topTag structure(rec),
and In topTag structure, timestamp structure is included but
did not recognize....
I set pcscfg.cfg file like this,
(PARSE=PARTIAL
CODE=CPP
MODE=ORACLE
DBMS=v8)

regards.



#### *.pc file
===============================================================
EXEC SQL INCLUDE sqlca;

EXEC SQL BEGIN DECLARE SECTION;

typedef struct _timestamp
{
    signed short    year;
    unsigned short  month;
    unsigned short  day;
    unsigned short  hour;
    unsigned short  minute;
    unsigned short  second;
    unsigned int    fraction;
} timestamp;

typedef struct _top_tag
{
        unsigned short                  shop_cd;
        unsigned short                  tag_id;
        unsigned short                  tag_typ_cd;
        char                            tag_ip_addr[40+1];
        char                            tag_mac_addr[20+1];
        unsigned int                    tag_port_num;
        char                            tag_bcd_val[20+1];
        char                            rgstr_id[30+1];

        struct timestamp         rgst_dtm;

        unsigned short          curr_dnload_upgr_file_ver_num;
        unsigned short          curr_upgr_file_ver_num;
        char                    last_chgr_id[30+1];

       struct timestamp     last_chg_dtm;
       unsigned short          tag_chg_cl_cd;
} topTag;

EXEC SQL END DECLARE SECTION;

int selectTopTag(unsigned short shop_code, unsigned short tag_id, topTag *top_tag, char *conn_name)
{
    EXEC SQL BEGIN DECLARE SECTION;

    struct topTag rec;
    char *H_conn_name;

    EXEC SQL END DECLARE SECTION;

    H_conn_name = conn_name;

    memset(&rec, 0x00, sizeof(topTag));

    /* SELECT */
    EXEC SQL AT :H_conn_name
        SELECT
                SHOP_CD,
                TO_NUMBER(TAG_ID),
                TO_NUMBER(TAG_TYP_CD),
                TAG_IP_ADDR,
                UPPER(TAG_MAC_ADDR),
                TAG_PORT_NUM,
                TAG_BCD_VAL,
                RGSTR_ID,
                RGST_DTM,
                CURR_DNLOAD_UPGR_FILE_VER_NUM,
                CURR_UPGR_FILE_VER_NUM,
                LAST_CHGR_ID,
                LAST_CHG_DTM,
                TO_NUMBER(TAG_CHG_CL_CD)
        INTO :rec
        FROM TOP_TAG
        WHERE SHOP_CD = :shop_code AND
                  TO_NUMBER(TAG_ID) = :tag_id;

        if (sqlca.sqlcode == SQL_SUCCESS)
        {
                memcpy(top_tag, &rec, sizeof(topTag));
                return 1;
        }
        else if (sqlca.sqlcode == SQL_NO_DATA)
                return 0;
        else    /* SQL_ERROR 또는 SQL_SUCCESS_WITH_INFO */
                return -1;
}
===============================================================


#### Result : 
===============================================================
Pro*C/C++: Release 12.2.0.1.0 - Production on Thu Jun 13 18:12:03 2019

Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.

System default option values taken from: /usr/lib/oracle/12.2/client64/precomp/admin/pcscfg.cfg

Semantic error at line 116, column 8, file toptag.pc:
        INTO :rec
.......1
PCC-S-02420, Incomplete (or missing) type specification
Semantic error at line 118, column 19, file toptag.pc:
        WHERE SHOP_CD = :shop_code AND
..................1
PCC-S-02322, found undefined identifier
Semantic error at line 119, column 26, file toptag.pc:
                  TO_NUMBER(TAG_ID) = :tag_id;
.........................1
PCC-S-02322, found undefined identifier
make: *** [toptag.o] Error 1
===============================================================

Back to comp.lang.c | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

Pro*c compile and nested structure WalkeR Park <walker.ykpark@gmail.com> - 2019-06-13 02:23 -0700
  Re: Pro*c compile and nested structure Ben Bacarisse <ben.usenet@bsb.me.uk> - 2019-06-13 11:16 +0100

csiph-web