DHC log 2009-1-7

        9号是按要求返校的日子,院长太够意思了,让同在北京的我和另一个同学把需要的材料发过去就行了,十分感谢啊.

 

        开了个实习证明准备明天给老师发过去.

 

        今天看了一天的前台,基本搞明白了,明天继续努力.

 

<?xml version="1.0" encoding="GBK" ?>
<TRANSACTION RIGHTS="00100000" TITLE="3201 一般存款"
 xmlns="http://www.otd.org/MENU" xmlns:W3CNS="http://www.w3c.org">

<!--
COMMSEND标签的内容是一段脚本,这段脚本在交易被提交前(非callserver函数)被执行
-->
<COMMSEND>"{
   commsend_001();
   commsend_101();
}"
</COMMSEND>

<!--
COMMRECV标签的内容是一段脚本,这段脚本在交易被提交且返回数据已经被解析到FD系列变量之后执行
-->
<COMMRECV>"{
   commrecv_001();
}"
</COMMRECV>


<!--
RERUN属性,其值为TRUE表示再一次进入此交易时脚本被执行,为FALSE表示再一次进入此交易时脚本不被执行,缺省为FALSE
-->
<FIRSWORK RERUN="FALSE">"{
   showmsg('Hello'); <!-- showmsg()函数,在窗口底部的提示栏显示指定内容 --> <!-- -->
}"
</FIRSTWORK>

<!--
<VARIABLE>标签有一个属性UPLOOP可以为"TRUE"或者"FALSE"表示是否允许按上箭头从第一个输入项跳到最后一个输入项,默认为FALSE。
-->

<VARIABLE UPLOOP="TRUE">

<!--
FUNCTIONS属性列出依附于此<ITEM>的函数,这些函数的名称都只有一个字符,有的用于限制输入,有的用于数据检查,有的用于数据转换,还有的用于条件判断和跳转。
 -->

 <ITEM LINE="3"  COL="3" TYPE="%-44s" FUNCTIONS="T(3201储蓄存款)"/> <!-- 1. T(XXXX),XXXX可以是常量或者其他变量,此函数的作用是把XXXX赋给当前变量 -->
 <ITEM LINE="4"  COL="3"  TYPE="%-74s" FUNCTIONS="T(─────────────────────────────────────)"/>
 <ITEM NAME="#TXNO" TYPE="%-4s" FUNCTIONS="T($TXNO=2201)"/> <!-- 2. T(ITEM=XXXX),ITEM是一个变量的名称,XXXX是常量或者变量,此函数的作用是把XXXX的值赋给ITEM。 -->
 <ITEM NAME="#MSGTYPE" TYPE="%-5s" FUNCTIONS="T($MSGTYPE=03001)"/>
 
 <BLOCK NAME="ACTINFO" LINE="7" COL="5" VISABLE="FALSE">
    <IMPORT>SVACTINFO.IMP</IMPORT>
 </BLOCK>
<!--
·BLOCK标签是VARIABLE的子节点
·BLOCK的内容由一系列ITEM标签组成,此标签用于把这些ITEM进行分组,使它们具有某些相同的属性
·BLOCK必须有NAME属性,用来标识不同的BLOCK
·BLOCK可以有LINE和COL属性,标识其下属变量的基准起始行和起始列
·BLOCK可以有VISABLE属性,用来控制其下属所有变量的可见性
·BLOCK下属变量不必有VISABLE属性,如果有且为TRUE,那么当BLOCK被隐藏时,此变量仍是可见的
-->


 <ITEM LINE="18"  COL="5" TYPE="%-10s" FUNCTIONS="T(交易金额:)"/>
 <ITEM NAME="#TXAMT" LINE="18"  COL="15" TYPE="%17.2f" INPUT="TEXT" FUNCTIONS="J(#LTXAMT)"/> <!-- INPUT属性表示此ITEM的输入类型,3) TEXT,文本框,可以在指定位置显示,可以输入 -->
 <!-- J函数执行另外一个变量中的函数, 函数形如J(ITEM),ITEM为要跳到的变量名称 -->
 <ITEM NAME="#LTXAMT" TYPE="%-16s" FUNCTIONS="X(#TXAMT)"/> <!-- X函数把数字转换为用","分割的计数方式赋给当前<ITEM> -->
 <ITEM LINE="21" COL="59"  TYPE="%-6s" FUNCTIONS="T(确  定)" INPUT="SUBMIT"/>
  <!-- INPUT属性表示此ITEM的输入类型,6) SUBMIT,提交按钮,它不响应按下事件,而是在按下时直接把交易提交 -->
</VARIABLE>
<!--
关于TYPE的用法:
TYPE属性是<ITEM>的数据类型。
基本类型有三种,s-表示字符串,d-表示数字串,f-表示浮点型。
如果属性的第一个字符为"-"表示为左对齐,否则为右对齐。
基本类型之前可以跟长度,对于f型变量还可以指定整数和小数为数。
例如:"%-20s"表示长度为20的左对齐的字符串,"%13.2f"表示总长为13(含小数点)小数位数为2的浮点型变量。
-->


<REQUEST>
<!--
<REQUEST>配置发送的数据包格式,它有两个主要的属性:TYPE表示数据包的格式,
"8583"表示为8583数据包,此时<REQUEST>不需要有内容,TYPE为"TITA"为自定义格式,
此时<REQUEST>的内容为输入变量的组合。
默认为8583;NAME属性表示REQUEST的名字,
当存在多个REQUEST时用于区分它们,当只有一个REQUEST时可以不指定NAME
-->
</REQUEST>

<RESPONSE> <!-- <RESPONSE>标签配置输出打印的格式 -->
  
  
   <!--
   <PACKAGE>配置返回数据的格式,它的格式如下所示:
 
 CKPT|@actno|@custname|@txamt|@prodname|@txday|@brno|@custno|||||@avbal
 
 其中CKPT为标识字符,
 用于和返回的文件内容进行匹配,
 具体方法是按行扫描返回文件,
 找到以CKPT开头的行则把此行内容按|分割字段的格式依次赋给CKPT后面指定的这些@变量,
 对于不需要的字段可以不写变量名,
 需要注意的是在文件中在标识符CKPT和第一个变量@actno之间是没有|符号的 //???????
 
 <PACKAGE>标签有如下属性:
 ·DEVICE-打印介质
 PRINTER---打印机
 SCREEN----屏幕
 MSR---------磁条
 ·LINESPACE-行间距
 ·DESC-打印时的提示信息
 ·CHECK-打印之前的判断条件,如果条件不符合则不打印
 格式为  变量名=值   或者  变量名?值
 变量必须为#变量或者$变量
   -->
  
   <!--PRINTER---打印机,DESC-打印时的提示信息-->
   <PACKAGE DEVICE="PRINTER" DESC="请打印存款凭条">
   CKPT|@actno|@custname|@txamt|@prodname|@txday|@brno|@custno|||||@avbal
   </PACKAGE>
  
   <!-- <PRINT>标签的内容是一段脚本,
   它在找到每一个与PACKAGE匹配的行时执行,
   它可能会被执行多次,在PRINT脚本中可以使用PACKAGE中的@变量
   -->
   <PRINT>"{
       $KINDNO='00';
       print( 3,20,'存款凭条');
       print( 4, 6,'机 构 号:/[[5  ]/]       操 作 员:[4 ]      流 水 号:[6   ]
',@brno ,$TLRNO,$FD4);
print( 5, 6,'存款帐号:/[[19               ]/]',@actno);
print( 6, 6,'存款户名:[60]',@custname);
       print(10, 6,'存款金额:[16]',ltrim(comma(@txamt,16)));
       print(12, 6,'帐户余额:[16]',ltrim(comma(@avbal,16)));
   }"
   </PRINT>
  
</RESPONSE>

<IMPORT>CXCZ.IMP</IMPORT>
</TRANSACTION>

 

又学了个C语言的函数:

#include <stdio.h>
#include <string.h>
main(){
char *s="Golden Global View";

clrscr();

memset(s,'F',6);
printf("%s",s);

getchar();
return 0;
}

 

运行结果:

FFFFFF Global View

 

你可能感兴趣的:(DHC log 2009-1-7)