1 定义或者声明方法

int method(char *arg1,char* arg2...);

  实现方法

int method(char *arg1,char* arg2...)

    EXEC SQL BEGIN DECLARE SECTION;

        char *arg1;

        char* arg2;

   EXEC SQL END DECLARE SECTION;

 {

    EXEC SQL BEGIN DECLARE SECTION;

    定义自己的变量。仅仅有此处定义的局部变量能够在sql中直接使用。

    EXEC SQL END DECLARE SECTION;

    初始化变量

     memset(sqlbuf,0x00,sizeof(sqlbuf));

     strncpy(from,to);

     deccvdbl(0,&decimal类型变量);

     return 0;

 }

 2 在.h中定义结构体

   如头文件test.h 内容例如以下:

    ...

    EXEC SQL BEGIN DECLARE SECTION;

    typedef struct  LYNAME{

        decimal x ;     

        char y[1+1];

        char z[1+1];       

        int u;

    }x;

    EXEC SQL END DECLARE SECTION;

    ...

    正确引用结构体LYNAME,需使用下边的引入方式

    EXEC SQL include 相对路径/test.h;

    而不是

    #include<test.h>

    

3 经常使用的打印日志方法

  printf("[%s][%d] GetTaxData start\n",__FILE__, __LINE__);

  txlog(LOG_INFO,"current ywrq[%s] =%s\n",__FILE__, __LINE__,x,y);

  #define etxlog(loglevel,format,args...) txlog(loglevel,format,__FILE__,__LINE__,##args);txlogflush()

  #define eetxlog(loglevel,format) txlog(loglevel,format,__FILE__,__LINE__);txlogflush()

  eetxlog(LOG_INFO,"INFO:SSNjbbzlZCZRDZ end.FAILED");

  sprintf(pOutbuf,"FAILED:SELECT NJGRJH.jhbh[%s]qybh[%s]grbh[%s]sqlcode[%d]"

                ,tb_njdl.jhbh,tb_njdl.qybh,val[0],sqlca.sqlcode);

  etxlog(LOG_ERROR,"%s",pOutbuf);

  fprintf(fpLog,"%s|%d|%d|%s|%d|%s\n",strSerial,tb_njdl.clcs,nErrNum++,"数据库错误",nLineCnt,"数据库错误");

 

  4 打印decimal公共方法

 void PrintDecimalToString(ptr_val,desc)

EXEC SQL BEGIN DECLARE SECTION;

        decimal *ptr_val;

        char *desc;

EXEC SQL END DECLARE SECTION;

{

  char decimalResult[30];

  memset(decimalResult,0x00,sizeof(decimalResult));    

  dectoasc(ptr_val,decimalResult,29,8);//将decmail值变成asc码

  txlog(LOG_INFO,"%s = [%s]\n",__FILE__, __LINE__,desc,decimalResult);

  printf("[%s][%d] %s=[%s] \n",__FILE__, __LINE__,desc,decimalResult);

}

esql开发总结的更多相关文章

  1. 避免重复造轮子的UI自动化测试框架开发

    一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览 ...

  2. App开发:模拟服务器数据接口 - MockApi

    为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现Moc ...

  3. 使用HTML5开发Kinect体感游戏

    一.简介 我们要做的是怎样一款游戏? 在前不久成都TGC2016展会上,我们开发了一款<火影忍者手游>的体感游戏,主要模拟手游章节<九尾袭来 >,用户化身四代,与九尾进行对决, ...

  4. Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记

    以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...

  5. Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记

    以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...

  6. Android请求网络共通类——Hi_博客 Android App 开发笔记

    今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...

  7. Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境

    一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...

  8. 构建一个基本的前端自动化开发环境 —— 基于 Gulp 的前端集成解决方案(四)

    通过前面几节的准备工作,对于 npm / node / gulp 应该已经有了基本的认识,本节主要介绍如何构建一个基本的前端自动化开发环境. 下面将逐步构建一个可以自动编译 sass 文件.压缩 ja ...

  9. 读书笔记:《HTML5开发手册》--HTML5新的结构元素

    读书笔记:<HTML5开发手册> (HTML5 Developer's CookBook) 虽然从事前端开发已有很长一段时间,对HTML5标签也有使用,但在语义化上面理解还不够清晰.之前在 ...

随机推荐

  1. LightOJ--1152--Hiding Gold(二分图奇偶建图)(好题)

    Hiding Gold Time Limit: 2000MS   Memory Limit: 32768KB   64bit IO Format: %lld & %llu Submit Sta ...

  2. B1567 [JSOI2008]Blue Mary的战役地图 二分答案+hash

    一开始以为是dp,后来看了一下标签...二分答案?之前也想过,但是没往下想,然后之后的算法就顺理成章,先求出第一个地图的所有子矩阵的hash值,然后求第二个,在上一个地图例二分查找,然后就没了. 算法 ...

  3. J2EE7与Servlet3.x

    J2EE7结构图 JWS:即Java Web Service,指与webservice相关的JavaEE技术部分,webservice是一种基于XML的独立的.跨平台的.互操作的应用程序,XML又包含 ...

  4. [源码管理] ubuntu中svn简明用法:服务器搭建+客户端使用

    本文是对网络上前人的优秀文章加以实践验证后所整理(修正或补充) 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subve ...

  5. 46.Qt 使用OpenGL绘制立方体

    main.cpp #include <QApplication> #include <iostream> #include "vowelcube.h" in ...

  6. c++ stl swap

    好久没写了,简单水一下吧! 一个是最近没怎么刷题,圣诞,元旦,leetcode暂停的比赛两周,自己最近沉迷于打游戏,没有好好抓住时间. 其实最近看了一点书,是侯捷的 <stl源码剖析>,有 ...

  7. P1629 邮递员送信(未完成)

    题目描述 有一个邮递员要送东西,邮局在节点1.他总共要送N-1样东西,其目的地分别是2~N.由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有M条道路,通过每条道路需要一定的时间.这个邮递员每 ...

  8. go开发和运行环境的配置

    1.运行环境的下载.安装.配置: 下载:http://www.golangtc.com/download  官网下载经常被墙屏蔽,所以就从golang中国下载; 安装及其配置:http://jingy ...

  9. Spark的协同过滤.Vs.Hadoop MR

    基于物品的协同过滤推荐算法案例在TDW Spark与MapReudce上的实现对比,相比于MapReduce,TDW Spark执行时间减少了66%,计算成本降低了40%. 原文链接:http://w ...

  10. PhotoZoom Classic 7中的新功能

    众所周知PhotoZoom Classic是家庭使用理想的放大图像软件.目前很多用户还在使用PhotoZoom Classic 6,对于PhotoZoom Classic 7还是有点陌生.其实在6代衍 ...