点击查看详细介绍

UF_get_customer_default() 函数的参数解释说明、函数详细用法,以及实例代码演示

misnn 8年前 718 0

购买与咨询 NX 二次开发视频教程,请联系微信号:13890821008  QQ号:85585969  


函数结构:
UF_get_customer_default
(
char * name,
int units,
char * * default_value
)

函数说明:
该例程从数据库检索一个客户的默认值。有可以从查询出现几个不同的条件数据库:1)记录,发现其单位相匹配。功能返回成功(0)2)记录没有被发现。如果单位给出的是英制或公制不返回任何结果,函数返回一个失败(1)。如果给定的单位是无的第二和/或第三尝试与单位ENGLISH THEN公制来代替。结果这些尝试可以是任何的上述条件。如果指定公制或英制单位进行,这一功能自动添加_MU或_EU到输入名称。例如,如果指定公制和输入名称“UG_gridSpacingY”功能搜索对于“UG_gridSpacingY_MU”。如果指定单位无,此功能搜索的名称规定。如果没有找到名字将其与_EU再次搜索附加到名称。如果名称仍然没有找到,那么它追加_MU的名称为它最后的搜索。

函数参数:
第1个参数为输入:
输入char * 字符类型的参数,参数的变量格式为name,模块ID和默认的名称

第2个参数为输入:
输入int 整数型的参数,参数的变量格式为units,单位列举如下:0=无1=公制2= ENGLISH

第3个参数为输出:
输出char * * 字符类型的参数,参数的变量格式为default_value,包含默认值的字符串。如果默认值为NULL,则该值没有被发现或发生错误。免费使用时不再需要释放内存。

UF_get_customer_default函数实例代码演示:
下面的例子是Y网格间距。
[quote]
#include <stdio.h>
#include <uf.h>
#define UF_CALL(X) (report( __FILE__, __LINE__, #X, (X)))
static int report( char *file, int line, char *call, int irc)
{
if (irc)
{
char messg[133];
printf("%s, line %d: %s\n", file, line, call);
(UF_get_fail_message(irc, messg)) ?
printf(" returned a %d\n", irc) :
printf(" returned error %d: %s\n", irc, messg);
}
return(irc);
}
static void do_ugopen_api(void)
{
char name[]="UG_gridSpacingY";
int units=METRIC;
char *default_value=NULL;
int status=0;
char message[133];
status = UF_get_customer_default(name,units,&default_value);
switch (status)
{
case 0:
printf("Default value for %s is %s\n",name,default_value);
break;
case 1:
printf("Default value for %s is not found\n",name);
break;
default:
UF_get_fail_message(status,message);
printf("ERROR: %s\n",message);
break;
}
UF_free(default_value);
}
/*ARGSUSED*/
void ufusr(char *param, int *retcode, int paramLen)
{
if (!UF_CALL(UF_initialize()))
{
do_ugopen_api();
UF_CALL(UF_terminate());
}
}
int ufusr_ask_unload(void)
{
return (UF_UNLOAD_IMMEDIATELY);
}



[/quote]

0

最新回复 (0)
请登录后发表新帖