Patch level :10.0 nuovo CD
Files correlati : Ricompilazione Demo : [ ] Commento :sistemato problema conversione con file aventi nomi lunghi (chiave con nome lungo di conseguenza e scrittura dei gen sputtanata) git-svn-id: svn://10.65.10.50/trunk@17563 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
fecd62abff
commit
7d477f0e05
@ -488,18 +488,17 @@ HIDDEN void do_key(const char *fname, RecDes *r, TAG4INFO *tag_info, int n_keys)
|
||||
xvt_str_make_upper(tiname);
|
||||
for (i=0; ((i < MaxKeys) && (i < n_keys)); i++)
|
||||
{
|
||||
tag_info[i].name=(char *)u4alloc(9);
|
||||
tag_info[i].name=(char *)u4alloc(_MAX_FNAME);
|
||||
tag_info[i].expression=(char *)u4alloc(256);
|
||||
tag_info[i].filter=(char*)u4alloc(20);
|
||||
tag_info[i].filter=(char*)u4alloc(32);
|
||||
tag_info[i].descending=0;
|
||||
if (r->Ky[i].DupKeys)
|
||||
tag_info[i].unique=0;
|
||||
else
|
||||
tag_info[i].unique= i == 0 ? e4unique : r4unique_continue;
|
||||
tag_info[i].unique= i == 0 ? e4unique : r4unique_continue;
|
||||
strcpy((char *)tag_info[i].filter,".NOT. DELETED()"); /* Not available for DBIII and CLIPPER */
|
||||
strcpy((char *)tag_info[i].name,tiname) ;
|
||||
if (strlen(tiname) < 8)
|
||||
strcat((char *)tag_info[i].name," ");
|
||||
strcat((char *)tag_info[i].name," ");
|
||||
tag_info[i].name[strlen(tag_info[i].name)-1] = '0' + i + 1;
|
||||
for (j=0; j < r->Ky[i].NkFields; j++)
|
||||
{
|
||||
@ -544,8 +543,8 @@ HIDDEN void do_key(const char *fname, RecDes *r, TAG4INFO *tag_info, int n_keys)
|
||||
case _longzerofld:
|
||||
{
|
||||
char ts[8];
|
||||
strcat((char *)tag_info[i].expression,",");
|
||||
sprintf(ts,"%d",r->Fd[nf].Len);
|
||||
strcat((char *)tag_info[i].expression,",");
|
||||
strcat((char *)tag_info[i].expression,ts);
|
||||
strcat((char *)tag_info[i].expression,",0)");
|
||||
}
|
||||
@ -805,14 +804,16 @@ int DB_build(const char * filename, RecDes *r)
|
||||
|
||||
FIELD4INFO field_info[MaxFields+1]; /* Numero di campi in un record */
|
||||
TAG4INFO tag_info[MaxKeys+1]; /* Numero di chiavi in un file */
|
||||
DATA4 *dbuilded;
|
||||
DATA4 *dbuilded = NULL;
|
||||
int rt=0,i;
|
||||
const char *ff = find_slash_backslash(filename);
|
||||
|
||||
memset(field_info, 0, sizeof(field_info));
|
||||
memset(tag_info, 0, sizeof(tag_info));
|
||||
|
||||
for (i=0; ((i<r->NFields) && (i<MaxFields)); i++) /* Construct field_info */
|
||||
{
|
||||
field_info[i].name = (char*)u4alloc(12);
|
||||
field_info[i].name = (char*)u4alloc(16); // In realtà basterebbero 12
|
||||
strcpy(field_info[i].name,r->Fd[i].Name);
|
||||
field_info[i].len = r->Fd[i].Len;
|
||||
field_info[i].dec = r->Fd[i].Dec;
|
||||
@ -858,7 +859,9 @@ int DB_build(const char * filename, RecDes *r)
|
||||
rt=code_base.errorCode;
|
||||
else
|
||||
rt=d4close(dbuilded);
|
||||
if (u4switch() & 2 || u4switch() & 8) /* Rebuild filename.cgp for CLIPPER AND DBIII only */
|
||||
|
||||
/* Non abbiamo mai usato e spariamo mai useremo questo genere di files!!!!
|
||||
if (u4switch() & 2 || u4switch() & 8) //Rebuild filename.cgp for CLIPPER AND DBIII only
|
||||
{
|
||||
FILE* fp;
|
||||
char xx[81];
|
||||
@ -872,7 +875,7 @@ int DB_build(const char * filename, RecDes *r)
|
||||
fprintf(fp,"%s\n",tag_info[j].name);
|
||||
fclose(fp);
|
||||
}
|
||||
}
|
||||
}*/
|
||||
if (rt!=0)
|
||||
rt=code_base.errorCode;
|
||||
for (i=0; ((i < MaxFields) && (i < r->NFields)); i++)
|
||||
|
Loading…
x
Reference in New Issue
Block a user