Mapper
calfma_qtrly.c
Go to the documentation of this file.
1 #include <sqlhdr.h>
2 #include <sqliapi.h>
3 #line 1 "calfma_qtrly.ec"
4 #include "prototypes_new.h"
5 /*
6  * EXEC SQL include sqlca.h;
7  */
8 #line 2 "calfma_qtrly.ec"
9 
10 #line 2 "calfma_qtrly.ec"
11 #line 1 "/opt/informix/incl/esql/sqlca.h"
12 /****************************************************************************
13  *
14  * Licensed Material - Property Of IBM
15  *
16  * "Restricted Materials of IBM"
17  *
18  * IBM Informix Client SDK
19  * Copyright IBM Corporation 1997, 2008. All rights reserved.
20  *
21  * Title: sqlca.h
22  * Description: SQL Control Area
23  *
24  ***************************************************************************
25  */
26 
27 #ifndef SQLCA_INCL
28 #define SQLCA_INCL
29 
30 #include "ifxtypes.h"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 typedef struct sqlca_s
37  {
38  int4 sqlcode;
39 #ifdef DB2CLI
40  char sqlerrm[600]; /* error message parameters */
41 #else /* DB2CLI */
42  char sqlerrm[72]; /* error message parameters */
43 #endif /* DB2CLI */
44  char sqlerrp[8];
45  int4 sqlerrd[6];
46  /* 0 - estimated number of rows returned */
47  /* 1 - serial value after insert or ISAM error code */
48  /* 2 - number of rows processed */
49  /* 3 - estimated cost */
50  /* 4 - offset of the error into the SQL statement */
51  /* 5 - rowid after insert */
52 #ifdef _FGL_
53  char sqlawarn[8];
54 #else
55  struct sqlcaw_s
56  {
57  char sqlwarn0; /* = W if any of sqlwarn[1-7] = W */
58  char sqlwarn1; /* = W if any truncation occurred or
59  database has transactions or
60  no privileges revoked */
61  char sqlwarn2; /* = W if a null value returned or
62  ANSI database */
63  char sqlwarn3; /* = W if no. in select list != no. in into list or
64  turbo backend or no privileges granted */
65  char sqlwarn4; /* = W if no where clause on prepared update, delete or
66  incompatible float format */
67  char sqlwarn5; /* = W if non-ANSI statement */
68  char sqlwarn6; /* = W if server is in data replication secondary mode */
69  char sqlwarn7; /* = W if database locale is different from proc_locale
70  = W if backend XPS and if explain avoid_execute is set
71  (for select, insert, delete and update only)
72  */
73  } sqlwarn;
74 #endif
76 
77 /* NOTE: 4gl assumes that the sqlwarn structure can be defined as
78  * sqlawarn -- an 8 character string, because single-char
79  * variables are not recognized in 4gl.
80  *
81  * If this structure should change, the code generated by 4gl compiler
82  * must also change
83  */
84 
85 #define SQLNOTFOUND 100
86 
87 #ifndef IFX_THREAD
88 #ifdef DB2CLI
89 #define sqlca ifmxsqlca
90 extern struct sqlca_s sqlca;
91 #else /* DB2CLI */
92 extern struct sqlca_s sqlca;
93 #endif /* DB2CLI */
94 
95 #ifndef DRDAHELP
96 extern int4 SQLCODE;
97 #endif
98 
99 extern char SQLSTATE[];
100 #else /* IFX_THREAD */
101 extern int4 * ifx_sqlcode(void);
102 extern struct sqlca_s * ifx_sqlca(void);
103 /* ifx_sqlstate() declared in sqlhdr.h */
104 #define SQLCODE (*(ifx_sqlcode()))
105 #define SQLSTATE ((char *)(ifx_sqlstate()))
106 #define sqlca (*(ifx_sqlca()))
107 #endif /* IFX_THREAD */
108 
109 #ifdef __cplusplus
110 }
111 #endif
112 
113 #endif /* SQLCA_INCL */
114 
115 #line 103 "/opt/informix/incl/esql/sqlca.h"
116 #line 3 "calfma_qtrly.ec"
117 
118 /*
119  * EXEC SQL BEGIN DECLARE SECTION;
120  */
121 #line 4 "calfma_qtrly.ec"
122 #line 5 "calfma_qtrly.ec"
123 int eyr, emo, edy;
124 int byr, bmo, bdy;
125 extern struct fma_qrtly_rec
126  {
127  char id[6];
128  char drain[2];
129  char pos[2];
130  char cgroup[2];
131  char pe1[2];
132  char pe2[2];
133  char dur[2];
134  char t[2];
135  char s[2];
136  char e[2];
137  char p[2];
138  int vcal_yr;
139  int vmon;
140  int vzday;
141  int ccal_yr;
142  int cmon;
143  int czday;
144  int ctime;
145  double z00;
146  double z06;
147  double z12;
148  double z18;
149  char qz00[2];
150  char qz06[2];
151  char qz12[2];
152  char qz18[2];
154 /*
155  * EXEC SQL END DECLARE SECTION;
156  */
157 #line 39 "calfma_qtrly.ec"
158 
159 
160 extern struct data_rec {
161  char id[9];
162  char source[9];
163  char pe1;
164  char pe2;
165  char dur;
166  char t;
167  char s;
168  char e;
169  char p;
170  int zdate;
171  int ztime;
172  int czdate;
173  int cztime;
174  int idur;
175  double codp;
176  char lwal;
177  int idote;
178  int irev;
179  double value;
180  double values[96];
181  char lwals[96];
182  char pedtsep[8];
184 
186 
188 
189 int calfma_qtrly(char *hb5,char *dparm,char *parm,struct stim begin_date,struct stim
190 end_date, struct stim q_date,struct stn_values *stn_values)
191 
192 {
193 
194 int i,jtotal,k,atime,iclear;
195 int etime,btime;
196 int hour,min;
197 int zdate,hh,qlen;
198 time_t tim,tim2;
199 struct tm *gmtim;
200 int fdate;
201 
202 
203 /*
204  * EXEC SQL BEGIN DECLARE SECTION;
205  */
206 #line 84 "calfma_qtrly.ec"
207 #line 85 "calfma_qtrly.ec"
208 int edate, bdate;
209 int month, day, year;
210  char sparm[10];
211 int fyear, fmonth, fday, fhour, fminute, ftime;
212  char shb5[6];
213  char pe1[2];
214  char pe2[2];
215  char dur[2];
216  char t[2];
217  char s[2];
218  char e[2];
219  char p[2];
220  char drain[2], pos[2], cgroup[2];
221 /*
222  * EXEC SQL END DECLARE SECTION;
223  */
224 #line 99 "calfma_qtrly.ec"
225 
226 
227 pe1[1]=0;
228 pe2[1]=0;
229 dur[1]=0;
230 t[1]=0;
231 s[1]=0;
232 e[1]=0;
233 p[1]=0;
234 
235 strcpy(shb5,hb5);
236 
237 pe1[0]=parm[0];
238 pe2[0]=parm[1];
239 dur[0]=parm[2];
240 t[0]=parm[3];
241 s[0]=parm[4];
242 e[0]=parm[5];
243 p[0]=parm[6];
244 
245 eyr=end_date.year;
246 emo=end_date.month;
247 edy=end_date.day;
248 etime=end_date.hour*10000+
249  end_date.minute*100;
250 
251 byr=begin_date.year;
252 bmo=begin_date.month;
253 bdy=begin_date.day;
254 btime=begin_date.hour*10000+
255  begin_date.minute*100;
256 
257 year=byr;
258 month=bmo;
259 day=bdy;
260 
261 fyear=q_date.year;
262 fmonth=q_date.month;
263 fday=q_date.day;
264 fhour=q_date.hour;
265 fminute=q_date.minute;
266 ftime=fhour*10000+fminute*100;
267 
268 jtotal=0;
269 
270 iclear=0;
271 
272 drain[0]=dparm[0];
273 pos[0]=dparm[1];
274 cgroup[0]=dparm[2];
275 
276 drain[1]=0;
277 pos[1]=0;
278 cgroup[1]=0;
279 
280 for(;;) {
281 
282 
283 /*
284  * EXEC SQL select *
285  * into :fma_qtrly_rec
286  * from calfmaqtrly
287  * where id=:shb5 and
288  * pe1=:pe1 and
289  * pe2=:pe2 and
290  * dur=:dur and
291  * t=:t and
292  * s=:s and
293  * e=:e and
294  * p=:p and
295  * drain=:drain and
296  * pos=:pos and
297  * cgroup=:cgroup and
298  * vcal_yr=:year and
299  * vmon=:month and
300  * vzday=:day and
301  * ccal_yr=:fyear and
302  * cmon=:fmonth and
303  * czday=:fday and
304  * ctime=:ftime;
305  */
306 #line 157 "calfma_qtrly.ec"
307  {
308 #line 177 "calfma_qtrly.ec"
309  static const char *sqlcmdtxt[] =
310 #line 177 "calfma_qtrly.ec"
311  {
312 #line 177 "calfma_qtrly.ec"
313  "select * from calfmaqtrly where id = ? and pe1 = ? and pe2 = ? and dur = ? and t = ? and s = ? and e = ? and p = ? and drain = ? and pos = ? and cgroup = ? and vcal_yr = ? and vmon = ? and vzday = ? and ccal_yr = ? and cmon = ? and czday = ? and ctime = ?",
314  0
315  };
316 #line 177 "calfma_qtrly.ec"
317 static ifx_cursor_t _SQ0 = {0};
318  static ifx_sqlvar_t _sqibind[] =
319  {
320  { 100, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
321  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
322  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
323  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
324  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
325  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
326  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
327  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
328  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
329  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
330  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
331  { 102, sizeof(year), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
332  { 102, sizeof(month), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
333  { 102, sizeof(day), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
334  { 102, sizeof(fyear), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
335  { 102, sizeof(fmonth), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
336  { 102, sizeof(fday), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
337  { 102, sizeof(ftime), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
338 #line 177 "calfma_qtrly.ec"
339  };
340  static ifx_sqlvar_t _sqobind[] =
341  {
342  { 100, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
343  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
344  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
345  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
346  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
347  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
348  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
349  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
350  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
351  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
352  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
353  { 102, sizeof((fma_qtrly_rec).vcal_yr), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
354  { 102, sizeof((fma_qtrly_rec).vmon), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
355  { 102, sizeof((fma_qtrly_rec).vzday), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
356  { 102, sizeof((fma_qtrly_rec).ccal_yr), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
357  { 102, sizeof((fma_qtrly_rec).cmon), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
358  { 102, sizeof((fma_qtrly_rec).czday), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
359  { 102, sizeof((fma_qtrly_rec).ctime), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
360  { 105, sizeof((fma_qtrly_rec).z00), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
361  { 105, sizeof((fma_qtrly_rec).z06), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
362  { 105, sizeof((fma_qtrly_rec).z12), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
363  { 105, sizeof((fma_qtrly_rec).z18), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
364  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
365  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
366  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
367  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
368 #line 177 "calfma_qtrly.ec"
369  };
370 #line 177 "calfma_qtrly.ec"
371  _sqibind[0].sqldata = shb5;
372 #line 177 "calfma_qtrly.ec"
373  _sqibind[1].sqldata = pe1;
374 #line 177 "calfma_qtrly.ec"
375  _sqibind[2].sqldata = pe2;
376 #line 177 "calfma_qtrly.ec"
377  _sqibind[3].sqldata = dur;
378 #line 177 "calfma_qtrly.ec"
379  _sqibind[4].sqldata = t;
380 #line 177 "calfma_qtrly.ec"
381  _sqibind[5].sqldata = s;
382 #line 177 "calfma_qtrly.ec"
383  _sqibind[6].sqldata = e;
384 #line 177 "calfma_qtrly.ec"
385  _sqibind[7].sqldata = p;
386 #line 177 "calfma_qtrly.ec"
387  _sqibind[8].sqldata = drain;
388 #line 177 "calfma_qtrly.ec"
389  _sqibind[9].sqldata = pos;
390 #line 177 "calfma_qtrly.ec"
391  _sqibind[10].sqldata = cgroup;
392 #line 177 "calfma_qtrly.ec"
393  _sqibind[11].sqldata = (char *) &year;
394 #line 177 "calfma_qtrly.ec"
395  _sqibind[12].sqldata = (char *) &month;
396 #line 177 "calfma_qtrly.ec"
397  _sqibind[13].sqldata = (char *) &day;
398 #line 177 "calfma_qtrly.ec"
399  _sqibind[14].sqldata = (char *) &fyear;
400 #line 177 "calfma_qtrly.ec"
401  _sqibind[15].sqldata = (char *) &fmonth;
402 #line 177 "calfma_qtrly.ec"
403  _sqibind[16].sqldata = (char *) &fday;
404 #line 177 "calfma_qtrly.ec"
405  _sqibind[17].sqldata = (char *) &ftime;
406 #line 177 "calfma_qtrly.ec"
407  _sqobind[0].sqldata = (fma_qtrly_rec).id;
408 #line 177 "calfma_qtrly.ec"
409  _sqobind[1].sqldata = (fma_qtrly_rec).drain;
410 #line 177 "calfma_qtrly.ec"
411  _sqobind[2].sqldata = (fma_qtrly_rec).pos;
412 #line 177 "calfma_qtrly.ec"
413  _sqobind[3].sqldata = (fma_qtrly_rec).cgroup;
414 #line 177 "calfma_qtrly.ec"
415  _sqobind[4].sqldata = (fma_qtrly_rec).pe1;
416 #line 177 "calfma_qtrly.ec"
417  _sqobind[5].sqldata = (fma_qtrly_rec).pe2;
418 #line 177 "calfma_qtrly.ec"
419  _sqobind[6].sqldata = (fma_qtrly_rec).dur;
420 #line 177 "calfma_qtrly.ec"
421  _sqobind[7].sqldata = (fma_qtrly_rec).t;
422 #line 177 "calfma_qtrly.ec"
423  _sqobind[8].sqldata = (fma_qtrly_rec).s;
424 #line 177 "calfma_qtrly.ec"
425  _sqobind[9].sqldata = (fma_qtrly_rec).e;
426 #line 177 "calfma_qtrly.ec"
427  _sqobind[10].sqldata = (fma_qtrly_rec).p;
428 #line 177 "calfma_qtrly.ec"
429  _sqobind[11].sqldata = (char *) &(fma_qtrly_rec).vcal_yr;
430 #line 177 "calfma_qtrly.ec"
431  _sqobind[12].sqldata = (char *) &(fma_qtrly_rec).vmon;
432 #line 177 "calfma_qtrly.ec"
433  _sqobind[13].sqldata = (char *) &(fma_qtrly_rec).vzday;
434 #line 177 "calfma_qtrly.ec"
435  _sqobind[14].sqldata = (char *) &(fma_qtrly_rec).ccal_yr;
436 #line 177 "calfma_qtrly.ec"
437  _sqobind[15].sqldata = (char *) &(fma_qtrly_rec).cmon;
438 #line 177 "calfma_qtrly.ec"
439  _sqobind[16].sqldata = (char *) &(fma_qtrly_rec).czday;
440 #line 177 "calfma_qtrly.ec"
441  _sqobind[17].sqldata = (char *) &(fma_qtrly_rec).ctime;
442 #line 177 "calfma_qtrly.ec"
443  _sqobind[18].sqldata = (char *) &(fma_qtrly_rec).z00;
444 #line 177 "calfma_qtrly.ec"
445  _sqobind[19].sqldata = (char *) &(fma_qtrly_rec).z06;
446 #line 177 "calfma_qtrly.ec"
447  _sqobind[20].sqldata = (char *) &(fma_qtrly_rec).z12;
448 #line 177 "calfma_qtrly.ec"
449  _sqobind[21].sqldata = (char *) &(fma_qtrly_rec).z18;
450 #line 177 "calfma_qtrly.ec"
451  _sqobind[22].sqldata = (fma_qtrly_rec).qz00;
452 #line 177 "calfma_qtrly.ec"
453  _sqobind[23].sqldata = (fma_qtrly_rec).qz06;
454 #line 177 "calfma_qtrly.ec"
455  _sqobind[24].sqldata = (fma_qtrly_rec).qz12;
456 #line 177 "calfma_qtrly.ec"
457  _sqobind[25].sqldata = (fma_qtrly_rec).qz18;
458 #line 177 "calfma_qtrly.ec"
459  sqli_slct(ESQLINTVERSION, &_SQ0,sqlcmdtxt,18,_sqibind,26,_sqobind,0,(ifx_literal_t *)0,(ifx_namelist_t *)0,0);
460 #line 177 "calfma_qtrly.ec"
461  }
462 
463  if(sqlca.sqlcode < 0) {
464 
465  printf("sql error %d\n",sqlca.sqlcode);
466 
467  return(sqlca.sqlcode);
468 
469  }
470 
471  if(sqlca.sqlcode==100) {
472 
473  iclear++;
474  change_dateffmaq(&fyear,&fmonth,&fday,&ftime);
475 
476  if(iclear==17) {
477 
478  fyear=q_date.year;
479  fmonth=q_date.month;
480  fday=q_date.day;
481  fhour=q_date.hour;
482  fminute=q_date.minute;
483  ftime=fhour*10000+fminute*100;
484 
485 
486  if(year==eyr && month==emo && day==edy)
487  break;
488 
490 
491  iclear=0;
492 
493  }
494 
495  continue;
496 
497 
498  }
499 
500 
501  if(sqlca.sqlcode == 0) {
502 
503  /* printf("found %s %d %d %d %d %d %d %d\n",
504  shb5,year,month,day,fyear,fmonth,fday,ftime);*/
505 
506  iclear=0;
507 
508  get_fma06_array();
509 
510  for(k=3;k>=0;k--) {
511 
512  hour=k;
513  atime=hour*60000;
514 
517 
518  if(year==eyr && month==emo && day==edy &&
519  atime < etime)
520  break;
521 
522  if(year==byr && month==bmo && day==bdy &&
523  atime > btime)
524  continue;
525 
526  if(data_record.values[k] < -98)
527  continue;
528 
530  stn_values[jtotal].zdate=zdate;
531  stn_values[jtotal].cdate=fdate;
532  stn_values[jtotal].qual= data_record.lwals[k];
533 
534  stn_values[jtotal].ctime=ftime;
535  stn_values[jtotal++].ztime=atime;
536 
537  }
538 
539 
540  }
541 
542  if(jtotal > 9600)
543  break;
544 
545  if(year==eyr && month==emo && day==edy)
546  break;
547 
549 
550 
551  }
552 
553 return(jtotal);
554 
555 }
556 /*
557 int get_fma06_array()
558 {
559 
560  data_record.values[0] = fma_qtrly_rec.z00;
561  data_record.values[1] = fma_qtrly_rec.z06;
562  data_record.values[2] = fma_qtrly_rec.z12;
563  data_record.values[3] = fma_qtrly_rec.z18;
564  data_record.lwals[0] = fma_qtrly_rec.qz00[0];
565  data_record.lwals[1] = fma_qtrly_rec.qz06[0];
566  data_record.lwals[2] = fma_qtrly_rec.qz12[0];
567  data_record.lwals[3] = fma_qtrly_rec.qz18[0];
568 
569  return(0);
570 }
571 void change_datefmaq(int *year,int *month, int*day)
572 
573 {
574 
575 extern int mday[];
576 char buf[10];
577 XmString btn_text;
578 Arg args[10];
579 
580 if (!((*year)%4))
581  mday[1]=29;
582 else
583  mday[1]=28;
584 
585 (*day)--;
586 
587 if(*day <= 0) {
588 
589  (*month)--;
590  if(*month==0) {
591 
592  (*year)--;
593  *month=12;
594 
595  }
596 
597  *day=mday[*month-1];
598 
599  }
600 
601 else if(*day > mday[*month-1]) {
602 
603  *(month)++;
604 
605  if(*month > 12) {
606 
607  (*year)++;
608  *month=1;
609 
610  }
611 
612  *day=1;
613 
614  }
615 
616 
617 }
618 
619 void change_dateffmaq(int *year,int *month, int *day,int *ztime)
620 
621 {
622 
623 extern int mday[];
624 char buf[10];
625 
626 if (!((*year)%4))
627  mday[1]=29;
628 else
629  mday[1]=28;
630 
631 *ztime=*ztime-10000;
632 
633 if(*ztime < 0) {
634 
635  *ztime=230000;
636  (*day)--;
637 
638  }
639 
640 if(*day <= 0) {
641 
642  (*month)--;
643  if(*month==0) {
644 
645  (*year)--;
646  *month=12;
647 
648  }
649 
650  *day=mday[*month-1];
651 
652  }
653 
654 else if(*day > mday[*month-1]) {
655 
656  *(month)++;
657 
658  if(*month > 12) {
659 
660  (*year)++;
661  *month=1;
662 
663  }
664 
665  *day=1;
666 
667  }
668 
669 
670 return;
671 
672 }
673 
674 */
675 
676 #line 390 "calfma_qtrly.ec"
int emo
Definition: calfma_qtrly.c:123
struct data_rec data_record
int bdy
Definition: calfma_qtrly.c:124
int eyr
Definition: calfma_qtrly.c:123
int edy
Definition: calfma_qtrly.c:123
int bmo
Definition: calfma_qtrly.c:124
struct fma_qrtly_rec fma_qtrly_rec
int4 SQLCODE
struct sqlca_s ifx_sqlca_t
char SQLSTATE[]
struct sqlca_s sqlca
int byr
Definition: calfma_qtrly.c:124
void change_dateffmaq()
void change_datefmaq()
int calfma_qtrly(char *hb5, char *dparm, char *parm, struct stim begin_date, struct stim end_date, struct stim q_date, struct stn_values *stn_values)
Definition: calfma_qtrly.c:189
static int i
int hour
Definition: display_data.c:26
int day
Definition: display_data.c:26
int year
Definition: display_data.c:26
int month
Definition: display_data.c:26
int get_fma06_array()
Definition: fma_qtrly.c:570
printf("fbuf is %s\n", fbuf)
int k
Definition: mapp2h.h:48
char source[9]
Definition: calfma_qtrly.c:162
double values[96]
Definition: calfma_qtrly.c:180
char lwals[96]
Definition: calfma_qtrly.c:181
char pedtsep[8]
Definition: calfma_qtrly.c:182
double codp
Definition: calfma_qtrly.c:175
double value
Definition: calfma_qtrly.c:179
char cgroup[2]
Definition: calfma_qtrly.c:130
char sqlwarn5
Definition: db.c:65
char sqlwarn3
Definition: db.c:61
char sqlwarn4
Definition: db.c:63
char sqlwarn7
Definition: db.c:67
char sqlwarn1
Definition: db.c:57
char sqlwarn6
Definition: db.c:66
char sqlwarn2
Definition: db.c:59
char sqlwarn0
Definition: db.c:56
Definition: db.c:43
long sqlerrd[6]
Definition: db.c:47
struct sqlca_s::sqlcaw_s sqlwarn
long sqlcode
Definition: db.c:44
char sqlerrm[72]
Definition: db.c:45
char sqlerrp[8]
Definition: db.c:46
Definition: misc.h:93
int minute
Definition: misc.h:99
int day
Definition: misc.h:97
int year
Definition: misc.h:95
int hour
Definition: misc.h:98
int month
Definition: misc.h:96
char qual
Definition: hydro_data.h:36
int ctime
Definition: misc_new.h:199
int cdate
Definition: misc_new.h:198
float value
Definition: hydro_data.h:35
tim()
Definition: tim.c:4