MAPGIS¶þ´Î¿ª·¢½²Òå

int _ViewCurAtt1(CATT_STRU *stru,char *att,char *titleName,short ai=0);

²ÎÊý£ºÈë¿Ú ai - ¹¤×÷ÇøºÅ¡£

aType ¨C ÊôÐÔÀàÐÍ i ¨C Ö¸¶¨¼Ç¼ºÅ

*titleName ¨C ´°¿Ú±êÌâ

*stru ¨C ÊôÐԽṹ *att ¨C ÊôÐÔ

³ö¿Ú ÎÞ

·µ»ØÖµ ³É¹¦·µ»ØÊôÐÔ´°¿Ú¾ä±ú£¬Ê§°Ü·µ»ØNULL¡£

¸öº¯Êý±à¼­¡¢ä¯ÀÀÖ¸¶¨¼Ç¼µÄµ±Ç°ÊôÐÔ£¬ºóÁ½¸öº¯Êý¿É±à¼­¡¢ä¯ÀÀËùÓмǼµÄµ±Ç°ÊôÐÔ¡£

˵Ã÷£º·µ»Ø0,IDYES,IDNO,IDCANCEL£¬Ö»Óе±ÏÔʾ´°¿ÚÈ¡Ïûºó£¬ÕâЩº¯Êý²Å·µ»Ø¡£Ç°Á½

×ֶβÙ×÷

¸ù¾Ý×Ö¶ÎÃû³ÆÈ¡×Ö¶ÎÐòºÅ

short _GetFldNo(CATT_STRU *stru,char *fldName);

²ÎÊý£ºÈë¿Ú *stru - ÊôÐԽṹ *fldName- ×Ö¶ÎÃû³Æ

³ö¿Ú ÎÞ

·µ»ØÖµ ³É¹¦·µ»Ø×Ö¶ÎÐòºÅ£¬Ê§°Ü·µ»Ø0¡£ ¸ù¾Ý×Ö¶ÎÃû³ÆÈ¡ÊýÖµÐÍ×Ö¶ÎÖµ

double _GetFld(char *att,CATT_STRU *stru,char *fldName,short *type=NULL£¬short

*isBlank=NULL); short _GetField(char *att,CATT_STRU *stru,char *fldName,char *fldBuf,long bufLen,short *isBlank); ²ÎÊý£ºÈë¿Ú att - ÊôÐԼǼ stru - ÊôÐԽṹ

*fldName- ×Ö¶ÎÃû³Æ

*fldBuf ¨C ·µ»Ø×Ö¶ÎÄÚÈݵĻº³åÇøÖ¸Õë¡£ bufLen ¨C fldBuf»º³åÇø×Ö½Ú³¤¶È¡£ *type - ·µ»Ø×Ö¶ÎÀàÐ͵ıäÁ¿µØÖ·,Èô²»ÐèÒª·µ»Ø×Ö¶ÎÀàÐÍ£¬¿ÉÉèÖà ΪNULL¡£

*isBlank ¨C ·µ»Ø×Ö¶ÎÊÇ·ñΪ¿ÕµÄ±äÁ¿µØÖ·¡£ ³ö¿Ú *fldBuf ¨C ·µ»Ø×Ö¶ÎÄÚÈÝ

*type - ·µ»Ø×Ö¶ÎÀàÐÍ

*isBlank ¨C ·µ»Ø×Ö¶ÎÊÇ·ñΪ¿Õ

·µ»ØÖµ _GetFld º¯Êý·µ»Ø×Ö¶ÎÖµ£¬Òò´Ë£¬ÈôfldName×Ö¶ÎÊÇ·ÇÊýÖµÐÍ×ֶΣ¬

¸Ãº¯Êý·µ»Ø0£»_GetFieldº¯Êý·µ»Ø1/0£¬·Ö±ð±íʾ³É¹¦ºÍʧ°Ü£¬¸Ãº¯Êýͨ¹ýfldBuf·µ»Ø×ֶεĶþ½øÖÆÄÚÈÝ£¬Òò´Ë£¬×Ö¶ÎÀàÐÍ¿ÉÒÔÊÇÈÎÒâÀàÐÍ¡£

˵Ã÷£ºÊýÖµÐÍ×ֶΰüÀ¨£ºBYTE_TYPE(×Ö½ÚÐÍ),SHORT_TYPE(¶ÌÕûÐÍ),LONG_TYPE(³¤ÕûÐÍ),FLOAT_TYPE(¸¡µãÐÍ),DOUBLE_TYPE(Ë«¾«¶ÈÐÍ),BOOL_TYPE(²¼¶ûÐÍ)¡£Ç°Ò»¸öº¯Êýͨ¹ýº¯Êý·µ»ØÖµ£¬ºóÒ»¸öº¯Êýͨ¹ýµØÖ··µ»ØÖµ¡£ ¸ù¾Ý×Ö¶ÎÐòºÅÈ¡ÊýÖµÐÍ×Ö¶ÎÖµ

double _GetFldOnNumb(char *att,CATT_STRU *stru,short fldi,short *type=NULL,short

*isBlank=NULL);

short _GetFieldOnNumb(char *att,CATT_STRU *stru,short fldi,char *fldBuf,long bufLen,short *isBlank); ²ÎÊý£ºÈë¿Ú *att - ÊôÐԼǼ *stru - ÊôÐԽṹ

fldi - ×Ö¶ÎÐòºÅ£¬´Ó0¿ªÊ¼£¬µÚÒ»¸ö×Ö¶ÎÐòºÅΪ0¡£

bufLen - ×Ö¶ÎÄÚÈÝ»º³åÇø³¤¶È

³ö¿Ú *fldBuf ¨C ×Ö¶ÎÄÚÈÝ»º³åÇø *type - ·µ»Ø×Ö¶ÎÀàÐ͵ıäÁ¿µØÖ·,Èô²»ÐèÒª·µ»Ø×Ö¶ÎÀàÐÍ£¬¿ÉÉèÖÃΪ

*isBlank ¨C ·µ»Ø×Ö¶ÎÊÇ·ñΪ¿ÕµÄ±äÁ¿µØÖ·

NULL¡£

˵Ã÷£ºÕâÁ½¸öº¯ÊýµÄ¹¦ÄÜ·Ö±ðºÍ_GetFldº¯ÊýºÍ_GetFieldº¯ÊýÏàͬ£¬²»Í¬Ö®´¦ÔÚÓÚÕâÁ½¸öº¯ÊýÊǸù¾Ý×Ö¶ÎÐòºÅÈ¡×Ö¶ÎÄÚÈÝ£¬×Ö¶ÎÐòºÅ´Ó0¿ªÊ¼¡£ÆäÓà×¢ÒâÊÂÏîÇë²ÎÔÄ_GetFldº¯ÊýºÍ_GetFieldº¯Êý¡£

¸ù¾Ý×Ö¶ÎÃû³ÆÉèÖÃ×Ö¶ÎÖµ

short _SetFld(char *att,CATT_STRU *stru,char *fldName,char *realVal); ²ÎÊý£ºÈë¿Ú *att - ÊôÐԼǼ *stru - ÊôÐԽṹ *fldName- ×Ö¶ÎÃû³Æ£¬ÓÃÀ´Ö¸¶¨ÒªÐ޸ĵÄ×ֶΡ£

*realVal - ×Ö¶ÎÕæÖµµØÖ·£¬¸Ãº¯ÊýÓôËÕæÖµÌæ»»attÖÐÔ­À´µÄ×Ö¶ÎÖµ¡£

³ö¿Ú ÎÞ

·µ»ØÖµ 1=³É¹¦£¬0=ʧ°Ü ˵Ã÷£º¸Ãº¯Êý½ö½ö°ÑrealValֵдµ½attËùÖ¸ÄÚ´æ¿Õ¼äÉÏ£¬ÈôÒªÓÀ¾ÃÐÞ¸ÄÊôÐÔ×Ö¶ÎÖµ£¬»¹

±ØÐëµ÷ÓÃ_WriteAttº¯Êý½«ÊôÐÔ¼Ç¼дµ½¹¤×÷ÇøÖС£

VBº¯Êý£ºDeclare Function bSetFld(att As Byte, stru As CATT_STRU, fldName As String, realVal As Any) As Integer

¸ù¾Ý×Ö¶ÎÃû³Æ½«×Ö·û´®ÉèÖÃΪ×Ö¶ÎÖµ

short _SetFldFromStr(char *att,CATT_STRU *stru,char *fldName,char *strVal); ²ÎÊý£ºÈë¿Ú *att - ÊôÐԼǼ *stru - ÊôÐԽṹ

*fldName- ×Ö¶ÎÃû³Æ£¬ÓÃÀ´Ö¸¶¨ÒªÐ޸ĵÄ×ֶΡ£ *strVal - ×Ö·û´®µØÖ·£¬¸Ãº¯Êý½«´Ë×Ö·û´®×ª»»³É×Ö¶ÎÃû³ÆËùÈ·¶¨µÄ×Ö

¶ÎÀàÐÍÖµ£¬Ìæ»»attÖÐÔ­À´µÄ×Ö¶ÎֵλÖá£

³ö¿Ú ÎÞ

·µ»ØÖµ 1=³É¹¦£¬0=ʧ°Ü

˵Ã÷£º¸Ãº¯Êý½ö½öÐÞ¸ÄattÉϵÄ×Ö¶ÎÖµ£¬ÈôÒªÓÀ¾ÃÐÞ¸ÄÊôÐÔ×Ö¶ÎÖµ£¬»¹±ØÐëµ÷ÓÃ_WriteAtt

º¯Êý½«ÊôÐÔ¼Ç¼дµ½¹¤×÷ÇøÖС£

VBº¯Êý£ºDeclare Function bSetFldFromStr(att As Byte, stru As CATT_STRU, fldName

As String, strVal As String) As Integer

¸ù¾Ý×Ö¶ÎÐòºÅÉèÖÃ×Ö¶ÎÖµ

short _SetFldOnNumb(char *att,CATT_STRU *stru,short fldi,char *realVal); ²ÎÊý£ºÈë¿Ú *att - ÊôÐԼǼ *stru - ÊôÐԽṹ *fldi - ×Ö¶ÎÐòºÅ£¬ÓÃÀ´Ö¸¶¨ÒªÐ޸ĵÄ×ֶΡ£

*realVal - ×Ö¶ÎÕæÖµµØÖ·£¬¸Ãº¯ÊýÓôËÕæÖµÌæ»»attÖÐÔ­À´µÄ×Ö¶ÎÖµ¡£

³ö¿Ú ÎÞ

·µ»ØÖµ 1=³É¹¦£¬0=ʧ°Ü

˵Ã÷£º¸Ãº¯Êý½ö½öÐÞ¸ÄattÉϵÄ×Ö¶ÎÖµ£¬ÈôÒªÓÀ¾ÃÐÞ¸ÄÊôÐÔ×Ö¶ÎÖµ£¬»¹±ØÐëµ÷ÓÃ_WriteAttº¯Êý½«ÊôÐÔ¼Ç¼дµ½¹¤×÷ÇøÖС£

VBº¯Êý£ºDeclare Function bSetFldOnNumb(att As Byte, stru As CATT_STRU, ByVal fldi As Integer, realVal As Any) As Integer

¸ù¾Ý×Ö¶ÎÐòºÅ½«×Ö·û´®ÉèÖÃΪ×Ö¶ÎÖµ

short _SetFldOnNumbFromStr(char *att,CATT_STRU *stru,short fldi,char *strVal); ²ÎÊý£ºÈë¿Ú *att - ÊôÐԼǼ

*stru - ÊôÐԽṹ

*fldi - ×Ö¶ÎÐòºÅ£¬ÓÃÀ´Ö¸¶¨ÒªÐ޸ĵÄ×ֶΡ£

*strVal - ×Ö·û´®µØÖ·£¬¸Ãº¯Êý½«´Ë×Ö·û´®×ª»»³É×Ö¶ÎÃû³ÆËùÈ·¶¨µÄ×Ö

¶ÎÀàÐÍÖµ£¬Ìæ»»attÖÐÔ­À´µÄ×Ö¶ÎֵλÖá£

³ö¿Ú ÎÞ

·µ»ØÖµ 1=³É¹¦£¬0=ʧ°Ü

˵Ã÷£º¸Ãº¯Êý½ö½öÐÞ¸ÄattÉϵÄ×Ö¶ÎÖµ£¬ÈôÒªÓÀ¾ÃÐÞ¸ÄÊôÐÔ×Ö¶ÎÖµ£¬»¹±ØÐëµ÷ÓÃ_WriteAttº¯Êý½«ÊôÐÔ¼Ç¼дµ½¹¤×÷ÇøÖС£

VBº¯Êý£ºDeclare Function bSetFldOnNumbFromStr(att As Byte, stru As CATT_STRU,

ByVal fldi As Integer, strVal As String) As Integer

½«ÊôÐԼǼÖеÄ×Ö¶ÎÄÚÈÝת»»³ÉASCIIÂë

short _CvtFldToString(CATT_STRU *stru,char *att,short fldi,char *ptStr,short

ptLen,short *fldType,short *isBlank);

short _CvtFldToString1(CATT_STRU *stru,char *att,char *fldName,char

*ptStr,short ptLen,short *fldType,short *isBlank);

²ÎÊý£ºÈë¿Ú *stru ¨C ÊôÐԽṹ *att ¨C ÊôÐÔ

*fldName¨C ×Ö¶ÎÃû fldi ¨C ×ֶκÅ

ptLen ¨C ×Ö·û´®»º³åÇø³¤¶È£¬ÒªÇó±È×ֶεÄ×Ö½Ú³¤¶È¶à1¸ö×Ö½Ú£¬ÒÔ±ã´æ·Å×Ö·û´®¡£

*ptStr ¨C ·µ»Ø×Ö·û´®µÄ»º³åÇøµØÖ·

*fldType ¨C ·µ»Ø×Ö¶ÎÀàÐ͵ıäÁ¿µØÖ·£»Èô²»ÐèÒª£¬¿ÉÉèÖÃΪNULL *isBlank ¨C ·µ»ØÊÇ·ñΪ¿ÕµÄ±äÁ¿µØÖ·

³ö¿Ú *ptStr ¨C ·µ»Ø×Ö·û´®ÄÚÈÝ *fldType ¨C ·µ»Ø×Ö¶ÎÀàÐÍ

*isBlank

¨C ·µ»Ø×Ö¶ÎÊÇ·ñΪ¿Õ

·µ»ØÖµ 1=³É¹¦£¬0=ʧ°Ü ˵Ã÷£º½«struºÍattÊôÐԼǼÖеÚfldiºÅ×Ö¶ÎÄÚÈÝת»»³ÉASCIIÂëÌîµ½ptStrÖУ¬ptLenÒª>=32£¬ptStrµÄ³¤¶ÈÒ»°ãÒªÇó±È×ֶεÄ×Ö½Ú³¤¶È(fieldlength)¶à1¸ö×Ö½Ú£¬ÒÔ±ã´æ·Å×Ö·û´®½áÊø·û(ÈôÊÇSTR_TYPEµÄ»°)¡£ÈôfldType=NULL,Ôò²»·µ»Ø×Ö¶ÎÀàÐÍ£¬ÈôisBlank=NULL,Ôò²»·µ»Ø¿ÕÖµ±êÖ¾(5.0°æÉèΪNULL)¡£ ͳ¸ÄÊôÐԼǼ×Ö¶Î long _RepLstRcdFld0(short ai,short aType£¬long *ptLst,char *ptRepFldFlag, char

*attExp,void *grpPad, void *grpInf,char *repAtt);

²ÎÊý£ºÈë¿Ú ai ¨C ¹¤×÷ÇøºÅ

aType - ÊôÐÔÀàÐÍ

*ptLst - ½«Òª½øÐÐÌæ»»µÄ¼Ç¼ºÅ±í£¬ptLst[0]=¸öÊý£¬ptLst[1]...pt[ptLst[0]]=

¼Ç¼ºÅ£¬ÈôptLst=NULLÔòͳ¸ÄËùÓмǼ¡£

*ptRepFldFlag - Ìæ»»×ֶοª¹Ø£»ptRepFldFlag[i]¶ÔÓ¦i(´Ó0¿ªÊ¼)ºÅ×ֶΣ¬

1=Ìæ»»£¬0=²»Ìæ»»

*attExp *grpPad ½á¹¹£¬

ÆäÓàÀàÍÆ¡£¿ÉΪNULL¡£

*grpInf - ͼÐβÎÊýµØÖ·£¬ÈçaType=LINʱ£¬*grpInfΪLIN_INFO½á¹¹£¬ÆäÓà

ÀàÍÆ¡£¿ÉΪNULL¡£

*repAtt - Ìæ»»Öµ¼Ç¼Êý¾Ý

³ö¿Ú ÎÞ

·µ»ØÖµ ³É¹¦ÔòÌæ»»ptLst±íËùÁмǼµÄÖ¸¶¨×ֶΣ¬·µ»ØÍ³¸ÄµÄ¼Ç¼Êý£¬Ê§°Ü·µ

»Ø0¡£ ×Ö¶Îͳ¸Ä

short _RepLstRcdFld(short ai,short aType,long *ptLst,char *titleName); ²ÎÊý£ºÈë¿Ú ai ¨C ¹¤×÷ÇøºÅ

aType - ͳ¸ÄÊôÐÔÀàÐÍ

*titleName¨Cͳ¸ÄÊôÐÔÖµÌõ¼þÊäÈë´°¿Ú±êÌâ

*ptLst - ͳ¸Ä¼Ç¼ºÅ±í£¬ptLst[0]=¸öÊý£¬ptLst[1]...pt[ptLst[0]]=¼Ç¼ºÅ£¬

ÈôptLst=NULLÔòͳ¸ÄËùÓмǼ ³ö¿Ú ÎÞ

·µ»ØÖµ ³É¹¦=1£¬Ê§°Ü=0

ͳ¸Ä×Ö¶ÎÖµ

short _ModLstRcdFldVal(short ai,short aType,long *ptLst,short fldI,char *fldVal);

²ÎÊý£ºÈë¿Ú ai

¨C ¹¤×÷ÇøºÅ

- ÊôÐÔÌõ¼þ±í´ïʽ×Ö·û´®,¿ÉΪNULL,¼´ÎÞÊôÐÔÌõ¼þ - ͼÐβÎÊý¿ª¹ØµØÖ·£¬ÈçaType=LINʱ£¬*grpPadΪLIN_PAD

aType - ͳ¸ÄÊôÐÔÀàÐÍ

*ptLst - ͳ¸Ä¼Ç¼ºÅ±í£¬ptLst[0]=¸öÊý£¬ptLst[1]...pt[ptLst[0]]=¼Ç¼ºÅ£¬

ÈôptLst=NULLÔòͳ¸ÄËùÓмǼ fldI - ͳ¸Ä×ֶκÅ

*fldVal - ·µ»ØÍ³¸Ä×Ö¶ÎÓòÖµµØÖ·

³ö¿Ú ÎÞ

·µ»ØÖµ ³É¹¦=1£¬Ê§°Ü=0

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ìæ»»Îª@)