Exemple #1
0
int clip_ODBC_IN_DATE(ClipMachine* mp){
	char* str = _clip_parc(mp,1);
	if(str){
		_clip_retdc(mp,*((short*)str),*((short*)str+1),*((short*)str+2));
	}
	return 0;
}
Exemple #2
0
int
clip_DATE(ClipMachine * ClipMachineMemory)
{
   int yy, mm, dd;

#ifdef _WIN32
   SYSTEMTIME st;

   GetLocalTime(&st);
   yy = st.wYear;
   mm = st.wMonth;
   dd = st.wDay;
#else
   struct tm *sysTime;

   sysTime = _clip_sysdate();
   yy = sysTime->tm_year + 1900;
   mm = sysTime->tm_mon + 1;
   dd = sysTime->tm_mday;
   free(sysTime);
#endif

   if (_clip_parinfo(ClipMachineMemory, 1) == NUMERIC_type_of_ClipVarType)
      yy = _clip_parni(ClipMachineMemory, 1);
   if (_clip_parinfo(ClipMachineMemory, 2) == NUMERIC_type_of_ClipVarType)
      mm = _clip_parni(ClipMachineMemory, 2);
   if (_clip_parinfo(ClipMachineMemory, 3) == NUMERIC_type_of_ClipVarType)
      dd = _clip_parni(ClipMachineMemory, 3);

   _clip_retdc(ClipMachineMemory, yy, mm, dd);
   return 0;
}
Exemple #3
0
int clip_PG_IN_DATE(ClipMachine* mp){
	PG_ROWSET* rowset = (PG_ROWSET*)_clip_fetch_c_item(
		mp,_clip_parni(mp,1),_C_ITEM_TYPE_SQL);
	char* date;
	int len;

	if(!rowset){
		_clip_trap_err(mp,0,0,0,subsys,ER_NOROWSET,er_norowset);
		return 1;
	}
	if(rowset->binary){
		date = _clip_parcl(mp,2,&len);
		if(date){
			_clip_retdj(mp,*((int*)date)+2451545);	// 2451545 - julian date
		}											// for 01/01/2000
	} else {
		int m,d,y;
		date = _clip_parc(mp,2);
		if(date){
			y = atoi(date);
			m = atoi(date+5);
			d = atoi(date+8);
			_clip_retdc(mp,y,m,d);
		} else {
			_clip_retdj(mp,0);
		}
	}
	return 0;
}
Exemple #4
0
int
clip_GTK_CALENDARGETDATE(ClipMachine * ClipMachineMemory)
{
   C_widget *ccal = _fetch_cw_arg(ClipMachineMemory);

   guint     year, month, day;

   CHECKCWID(ccal, GTK_IS_CALENDAR);
   gtk_calendar_get_date(GTK_CALENDAR(ccal->widget), &year, &month, &day);
   _clip_retdc(ClipMachineMemory, year, month + 1, day);
   return 0;
 err:
   return 1;
}
Exemple #5
0
int
clip_MS_IN_DATE(ClipMachine * mp)
{
	char *date = _clip_parc(mp, 1);
	int day, mon, year;

	if (date)
	{
		date[10] = 0;
		day = atoi(&date[8]);
		date[7] = 0;
		mon = atoi(&date[5]);
		date[4] = 0;
		year = atoi(date);
		_clip_retdc(mp, year, mon, day);
	}
	return 0;
}
Exemple #6
0
int
clip_MS_IN_TIMESTAMP(ClipMachine * mp)
{
	char *date = _clip_parc(mp, 1);
	int day, mon, year;

	if (date)
	{
		date[8] = 0;
		day = atoi(&date[6]);
		date[6] = 0;
		mon = atoi(&date[4]);
		date[4] = 0;
		year = atoi(date);
		_clip_retdc(mp, year, mon, day);
	}
	return 0;
}
Exemple #7
0
int
clip_EOY(ClipMachine * ClipMachineMemory)
{
   int dd, mm, yy, ww;

   struct tm *sysTime;

   int numpar = _clip_parinfo(ClipMachineMemory, 0);

   _clip_pardc(ClipMachineMemory, 1, &yy, &mm, &dd, &ww);
   if (numpar == 0)
   {
      sysTime = _clip_sysdate();
      yy = sysTime->tm_year + 1900;
      mm = sysTime->tm_mon + 1;
      dd = sysTime->tm_mday;
      free(sysTime);
   }
   _clip_retdc(ClipMachineMemory, yy, 12, 31);
   return 0;
}
Exemple #8
0
int clip_PG_IN_ABSTIME(ClipMachine* mp){
	PG_ROWSET* rowset = (PG_ROWSET*)_clip_fetch_c_item(
		mp,_clip_parni(mp,1),_C_ITEM_TYPE_SQL);
	char* date;
	int len;
	struct tm* time;

	if(!rowset){
		_clip_trap_err(mp,0,0,0,subsys,ER_NOROWSET,er_norowset);
		return 1;
	}
	if(rowset->binary){
		date = _clip_parcl(mp,2,&len);
		time = gmtime((time_t*)date);
		_clip_retdc(mp,time->tm_year+1900,time->tm_mon+1,time->tm_mday);
	} else {
		date = _clip_parc(mp,2);
//		_pg_in_date(mp,rowset->conn->datestyle,rowset->conn->textdate,date);
	}
	return 0;
}