コード例 #1
0
ファイル: Unit1.cpp プロジェクト: rogertl/cbuilder
void __fastcall TForm1::NMFTP1ConnectionFailed(TObject *Sender)
{
  Memo2->Lines->Insert(0,Now().TimeString()+" 连接FTP服务器失败");
  BitBtn3->Enabled=true;
}
コード例 #2
0
ファイル: Unit1.cpp プロジェクト: rogertl/cbuilder
void __fastcall TForm1::NMFTP1Connect(TObject *Sender)
{
//ShowMessage("连接成功");
Memo2->Lines->Insert(0,Now().TimeString()+" 连接FTP成功。");
BitBtn3->Enabled=false;
BitBtn4->Enabled=true;


Memo2->Lines->Insert(0,Now().TimeString()+" 开始生成接驳文件。");

AnsiString DateChoose = "dt>'"+DateTimePicker1->Date.DateString()+" 00:00:00' and dt<'"+DateTimePicker1->Date.DateString()+" 23:59:59'";
// ShowMessage(DateChoose);
AnsiString sqlstr = "select * from TicketPay where 1=1 and "+DateChoose ;
 //ADOConnection1->Connected = true;
 ADOQuery1->Close();
 ADOQuery1->SQL->Clear();
 ADOQuery1->SQL->Add(sqlstr);
 ADOQuery1->Open();
 //ADOQuery1->Active =true;
 //Edit1->Text = IntToStr(ADOQuery1->RecordCount);
 //Memo1->Clear();
 if(ADOQuery1->RecordCount==0)
 {
 Memo2->Lines->Insert(0,Now().TimeString()+" 所选日期无接驳记录,请确认是否已进行当日结算,上传终止。");
 NMFTP1->Disconnect();
 return;
 }


 AnsiString InsertString;
 Form2->Memo1->Lines->Clear();

 AnsiString  date1,date2,formati,pay_value;
 int i=0,p=0;

for(ADOQuery1->First();!ADOQuery1->Eof;ADOQuery1->Next())
 {
 //ShowMessage(ADOQuery1->FieldByName("dt")->AsString);
 //InsertString=ADOQuery1->FieldValues['dt'];
 InsertString=ADOQuery1->FieldByName("dt")->AsString;
 pay_value=ADOQuery1->FieldByName("pay_value")->AsString;
 //ShowMessage(InsertString);
 date1 = FormatDateTime("yyyy",InsertString)+"/"+FormatDateTime("mm",InsertString)+"/"+FormatDateTime("dd",InsertString);
 date2 = FormatDateTime("hhmm",InsertString);
 //rmati=Format("%010d",ARRAYOFCONST(i));
i++;
 //ShowMessage(10-IntToStr(i).Length());
int p=10-IntToStr(i).Length();
formati=IntToStr(i);
for(p;p>0;p=p-1)
{
     formati="0"+formati;
     //ShowMessage(formati);
}



 Form2->Memo1->Lines->Add(Edit2->Text+"\t"+Edit3->Text+"\t"+date1+"\t"+date2+"\t"+formati+"\t"+Edit2->Text+"01"+"\t\t"+pay_value+"\t"+"0.00\t0.00\t0.00\t0.00\t"+pay_value);

// ADOQuery1->Next();
 }
 Form2->Memo1->Lines->SaveToFile("temp.txt");
 if(FileExists("temp.txt"))
 {
 Memo2->Lines->Insert(0,Now().TimeString()+" 接驳临时文件生成成功。");
 }
 else
 {
   Memo2->Lines->Insert(0,Now().TimeString()+" 接驳临时文件生成失败,上传终止。");
   NMFTP1->Disconnect();
   return;
 }

AnsiString InsertString2= DateTimePicker1->Date.DateString();
AnsiString datelist = FormatDateTime("yyyy",InsertString2)+FormatDateTime("mm",InsertString2)+FormatDateTime("dd",InsertString2);
AnsiString FileName=Edit2->Text+ datelist +".txt";

 Memo2->Lines->Insert(0,Now().TimeString()+" 开始上传文件。");
  NMFTP1->Upload("temp.txt",FileName);
  Memo2->Lines->Insert(0,Now().TimeString()+" 清理临时文件。");
  DeleteFile("temp.txt");
  if(!FileExists("temp.txt"))
        Memo2->Lines->Insert(0,Now().TimeString()+" 成功清理临时文件。");
  else
        Memo2->Lines->Insert(0,Now().TimeString()+" 清理临时文件失败,请执行手动删除。");

 NMFTP1->Disconnect();
}
コード例 #3
0
ファイル: Unit1.cpp プロジェクト: rogertl/cbuilder
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
        StatusBar1->Panels->Items[1]->Text = Now();
}
コード例 #4
0
ファイル: tools.cpp プロジェクト: Firmeware/max-tdt
bool cTimeMs::TimedOut(void)
{
  return Now() >= begin;
}
コード例 #5
0
ファイル: tools.cpp プロジェクト: Firmeware/max-tdt
uint64_t cTimeMs::Elapsed(void)
{
  return Now() - begin;
}
コード例 #6
0
void ClimatologyDialog::OnNow( wxCommandEvent& event )
{
    Now();
    RefreshRedraw();
}
コード例 #7
0
ファイル: tools.cpp プロジェクト: Firmeware/max-tdt
void cTimeMs::Set(int Ms)
{
  begin = Now() + Ms;
}
コード例 #8
0
ファイル: profile_util.hpp プロジェクト: lcnja/cpfs-os
 /**
  * Read the elapsed time since creation of the stop watch, in
  * microseconds.
  */
 uint64_t ReadTimerMicro() {
   return (Now() - start_time_).total_microseconds();
 }
コード例 #9
0
void __fastcall TBatchCollectDataThread::AnalyzeDataFunc()
{
	int recordNUM = (int)receivebuf[7]*256+(int)receivebuf[8];
	if((recordNUM<128)&&(recordNUM>0)&&(0x20 == receivebuf[0])&&(0x03 == receivebuf[1])
	  &&(DWPassword[0] == receivebuf[2])&&(DWPassword[1] == receivebuf[3])
	  &&(PosNumber == ((int)receivebuf[12]*256+(int)receivebuf[5]))
	  &&(0x23 == receivebuf[4]))
	{
	//分析数据
		String insqlstr = "";
        String AddinPosinsqlstr = "";
        String Watersqlstr = "";
        String Errorinsqlstr = "";
		int PosNumber = (int)receivebuf[12]*256+(int)receivebuf[5];

		int RecordIndexPos;
		int tmpKH;
		int tmpXFCS;
		double tmpYE;
		double tmpXFJE;
		String tmpDATESTR;
		String tmpXFLX;
		String tmpSQLSTR;

		unsigned char instr[4];
		unsigned char outstr[6];
		ZeroMemory(instr, 4);
		ZeroMemory(outstr, 6);

		String updatetimestr = DateTimeToStr(Now());

		for (int i = 0; i < (int)receivebuf[8]; i++)
		{
			RecordIndexPos = 14 + i*16;
			tmpKH = (int)receivebuf[RecordIndexPos]*256*256 + (int)receivebuf[RecordIndexPos+1]*256 + (int)receivebuf[RecordIndexPos+2];
			tmpXFCS = (int)receivebuf[RecordIndexPos+3]*256+(int)receivebuf[RecordIndexPos+4];
			tmpYE = ((double)receivebuf[RecordIndexPos+5]*256*256+(double)receivebuf[RecordIndexPos+6]*256+(double)receivebuf[RecordIndexPos+7])/100;
			tmpXFJE = ((double)receivebuf[RecordIndexPos+8]*256*256+(double)receivebuf[RecordIndexPos+9]*256+(double)receivebuf[RecordIndexPos+10])/100;

			instr[0] = receivebuf[RecordIndexPos+11];
			instr[1] = receivebuf[RecordIndexPos+12];
			instr[2] = receivebuf[RecordIndexPos+13];
			instr[3] = receivebuf[RecordIndexPos+14];
			if(GetnormaldateFunc)
			{
			//这里进行时间判断
				if(0 != GetnormaldateFunc(instr, outstr))
				{
				/*	outstr[0] = '0';
					outstr[1] = '1';
					outstr[2] = '1';
					outstr[3] = '0';
					outstr[4] = '0';
					outstr[5] = '0';            */
					tmpDATESTR = DateTimeToStr(Now());
				}
				else
				{
					tmpDATESTR = "20"+IntToHex((int)outstr[0], 2)+"-"+
									  IntToHex((int)outstr[1], 2)+"-"+
									  IntToHex((int)outstr[2], 2)+" "+
									  IntToHex((int)outstr[3], 2)+":"+
									  IntToHex((int)outstr[4], 2)+":"+
									  IntToHex((int)outstr[5], 2);
				}
			}
			else
			{
			/*	outstr[0] = '0';
				outstr[1] = '1';
				outstr[2] = '1';
				outstr[3] = '0';
				outstr[4] = '0';
				outstr[5] = '0';
				tmpDATESTR = "20"+IntToHex((int)outstr[0], 2)+"-"+
							 IntToHex((int)outstr[1], 2)+"-"+
							 IntToHex((int)outstr[2], 2)+" "+
							 IntToHex((int)outstr[3], 2)+":"+
							 IntToHex((int)outstr[4], 2)+":"+
							 IntToHex((int)outstr[5], 2);    */
				tmpDATESTR = DateTimeToStr(Now());
			}

			String UpdateTime = updatetimestr;

			try
			{
				StrToDateTime(tmpDATESTR);
			}
			catch(...)
			{
				tmpDATESTR = DateTimeToStr(Now());
			}

			if(StrToDateTime(tmpDATESTR)>Now())
			{
				tmpDATESTR = DateTimeToStr(Now());
			}
			else
			{
				TDateTime tmpdt = StrToDateTime(tmpDATESTR);
				tmpdt = IncYear(tmpdt, 1);
				if(tmpdt<Now())
				{
					tmpDATESTR = DateTimeToStr(Now());
				}
			}

			if(0 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "X";
			else if(1 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "Y";
			else if(2 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "B";
			else if(3 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "I";
			else if(4 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "L";
			else if(5 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "M";
			else if(6 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "O";
			else if(7 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "P";
			else if(250 == receivebuf[RecordIndexPos+15])
				tmpXFLX = "Z";
			else if(65 == receivebuf[RecordIndexPos+15]) //breakfast
                tmpXFLX = "S";
			else if(66 == receivebuf[RecordIndexPos+15]) //lunch
                tmpXFLX = "D";
			else if(67 == receivebuf[RecordIndexPos+15]) //supper
				tmpXFLX = "F";
			else if(68 == receivebuf[RecordIndexPos+15]) //night
                tmpXFLX = "G";
            else if(249 == receivebuf[RecordIndexPos+15])
            	tmpXFLX = "W";
			else tmpXFLX = "E";

            if("W" == tmpXFLX)
            {
                //analyze water data;
                int jqh;
                int waterkh;
                double xf1;
                double xf2;
                xf1 = ((double)receivebuf[RecordIndexPos+0]+(double)receivebuf[RecordIndexPos+1]*256+
                        (double)receivebuf[RecordIndexPos+2]*256*256+(double)receivebuf[RecordIndexPos+3]*256*256*256)/100;
                xf2 = ((double)(receivebuf[RecordIndexPos+4]^0xff)+(double)(receivebuf[RecordIndexPos+5]^0xff)*256+
                        (double)(receivebuf[RecordIndexPos+6]^0xff)*256*256+(double)(receivebuf[RecordIndexPos+7]^0xff)*256*256*256)/100;
                if(xf1 == xf2)
                {
                    jqh = (int)receivebuf[RecordIndexPos+8]*256+(int)receivebuf[RecordIndexPos+9];
                    waterkh = (int)receivebuf[RecordIndexPos+10]*256*256*256+
                    		(int)receivebuf[RecordIndexPos+11]*256*256+(int)receivebuf[12]*256+
                            (int)receivebuf[RecordIndexPos+13];
                //    String tjsqlstr = "insert into WTJ values(:JH,:CJKH,:XFZE,:SCSJ)";
                    String watertmpsqlstr = "insert into WTJ values(";
                    watertmpsqlstr += jqh;
                    watertmpsqlstr += ",";
                    watertmpsqlstr += waterkh;
                    watertmpsqlstr += ",";
                    watertmpsqlstr += xf1;
                    watertmpsqlstr += ",'";
					watertmpsqlstr += DateTimeToStr(Now());
                    watertmpsqlstr += "')";
					Watersqlstr += watertmpsqlstr;
				//	MessageBox(SDIAppForm->Handle, watertmpsqlstr.t_str(), "WTJstr", MB_OK|MB_ICONERROR);
				}

				//end analyze;
            }
            else
            {
                String F_bhstr;
                bool errortag = false;
                UpdateDataBaseQuery->Close();
                tmpSQLSTR = "select * from CARD_F where KH = '";
                tmpSQLSTR += tmpKH;
                tmpSQLSTR += "'";
                UpdateDataBaseQuery->SQL->Clear();
                UpdateDataBaseQuery->SQL->Add(tmpSQLSTR);
                UpdateDataBaseQuery->Open();
                if(!UpdateDataBaseQuery->IsEmpty())
                {
                 //	SerialNum = UpdateDataBaseQuery->FieldByName("BH")->AsAnsiString.Trim();

                    String tmpsqlstr = "insert into MX Values('";
                    tmpsqlstr += UpdateDataBaseQuery->FieldByName("BH")->AsAnsiString.Trim();
                    tmpsqlstr += "',";
                    tmpsqlstr += tmpKH;
                    tmpsqlstr += ",";
                    tmpsqlstr += tmpYE;
                    tmpsqlstr += ",";
                    tmpsqlstr += tmpXFJE;
                    tmpsqlstr += ",";
                    tmpsqlstr += tmpXFCS;
                    tmpsqlstr += ",'";
                    tmpsqlstr += tmpDATESTR;
                    tmpsqlstr += "',";
                    tmpsqlstr += PosNumber;
                    tmpsqlstr += ",0,'";
                    tmpsqlstr += tmpXFLX;
                    tmpsqlstr += "','";
                    tmpsqlstr += OperatorName;
                    tmpsqlstr += "','";
                    tmpsqlstr += updatetimestr;
                    tmpsqlstr += "')";
                    insqlstr += tmpsqlstr;

                    if("I" == tmpXFLX)
                    {
                        String tempaddinpossqlstr = "insert into CK Values(";
                        tempaddinpossqlstr += tmpKH;
                        tempaddinpossqlstr += ",'";
                        tempaddinpossqlstr += UpdateDataBaseQuery->FieldByName("BH")->AsAnsiString.Trim();
                        tempaddinpossqlstr += "',";
                        tempaddinpossqlstr += tmpYE;
                        tempaddinpossqlstr += ",1,";
                        tempaddinpossqlstr += tmpXFJE;//PosNumber;
                        tempaddinpossqlstr += ",0,";
                        tempaddinpossqlstr += tmpXFJE;//tmpXFLX;
                        tempaddinpossqlstr += ",0,";
                        tempaddinpossqlstr += tmpXFJE;
                        tempaddinpossqlstr += ",";
                        tempaddinpossqlstr += tmpXFCS;
                        tempaddinpossqlstr += ",'";
                        tempaddinpossqlstr += tmpDATESTR;
                        tempaddinpossqlstr += "',";
                        tempaddinpossqlstr += PosNumber;
                        tempaddinpossqlstr += ",1,'I','";
                        tempaddinpossqlstr += OperatorName;
                        tempaddinpossqlstr += "')";
                        AddinPosinsqlstr += tempaddinpossqlstr;
                    }
                /*
                    if("E" == tempXFLX)
                    {
                        String tmperrorsqlstr = "insert into MX Values('";
                        tmperrorsqlstr += UpdateDataBaseQuery->FieldByName("BH")->AsAnsiString.Trim();
                        tmperrorsqlstr += "',";
                        tmperrorsqlstr += tmpKH;
                        tmperrorsqlstr += ",";
                        tmperrorsqlstr += tmpYE;
                        tmperrorsqlstr += ",";
                        tmperrorsqlstr += tmpXFJE;
                        tmperrorsqlstr += ",";
                        tmperrorsqlstr += tmpXFCS;
                        tmperrorsqlstr += ",'";
                        tmperrorsqlstr += tmpDATESTR;
                        tmperrorsqlstr += "',";
                        tmperrorsqlstr += PosNumber;
                        tmperrorsqlstr += ",0,'";
                        tmperrorsqlstr += tmpXFLX;
                        tmperrorsqlstr += "','";
                        tmperrorsqlstr += OperatorName;
                        tmperrorsqlstr += "','";
                        tmperrorsqlstr += updatetimestr;
                        tmperrorsqlstr += "')";
                        Errorinsqlstr += tmperrorsqlstr;
                    }          */

                    if("E"!=tmpXFLX)
        			{
                        if(UpdateDataBaseQuery->FieldByName("SYCS")->AsInteger < tmpXFCS)
                        {
                            UpdateDataBaseQuery->Edit();
                            UpdateDataBaseQuery->FieldByName("SYCS")->AsInteger = tmpXFCS;
                            UpdateDataBaseQuery->FieldByName("SF_YE")->AsFloat = tmpYE;
                            UpdateDataBaseQuery->FieldByName("SFYEDT")->AsString = tmpDATESTR;
                            UpdateDataBaseQuery->Post();
                        }
                    }
                    F_bhstr = UpdateDataBaseQuery->FieldByName("BH")->AsString;
                }
                else
                    errortag = true;
                UpdateDataBaseQuery->Close();

                if("E"!=tmpXFLX)
                {
                    tmpSQLSTR = "select * from CARD_F where KH = '";
                    tmpSQLSTR += tmpKH;
                    tmpSQLSTR += "' and BH='";
                    tmpSQLSTR += F_bhstr;
                    tmpSQLSTR += "'";
                    UpdateDataBaseQuery->SQL->Clear();
                    UpdateDataBaseQuery->SQL->Add(tmpSQLSTR);
                    UpdateDataBaseQuery->Open();
                    if(!UpdateDataBaseQuery->IsEmpty())
                    {
                        if(UpdateDataBaseQuery->FieldByName("SYCS")->AsInteger < tmpXFCS)
                        {
                            UpdateDataBaseQuery->Edit();
                            UpdateDataBaseQuery->FieldByName("SYCS")->AsInteger = tmpXFCS;
                            UpdateDataBaseQuery->FieldByName("SF_YE")->AsFloat = tmpYE;
                            UpdateDataBaseQuery->FieldByName("SFYEDT")->AsString = tmpDATESTR;
                            UpdateDataBaseQuery->Post();
                        }
                    }
                    else
						errortag = true;
					UpdateDataBaseQuery->Close();

					tmpSQLSTR = "select * from CARD where KH = '";
                    tmpSQLSTR += tmpKH;
                    tmpSQLSTR += "' and BH='";
                    tmpSQLSTR += F_bhstr;
                    tmpSQLSTR += "'";
                    UpdateDataBaseQuery->SQL->Clear();
                    UpdateDataBaseQuery->SQL->Add(tmpSQLSTR);
                    UpdateDataBaseQuery->Open();
                    if(!UpdateDataBaseQuery->IsEmpty())
                    {
                        if(UpdateDataBaseQuery->FieldByName("SYCS")->AsInteger < tmpXFCS)
                        {
                            UpdateDataBaseQuery->Edit();
                            UpdateDataBaseQuery->FieldByName("SYCS")->AsInteger = tmpXFCS;
                            UpdateDataBaseQuery->FieldByName("SF_YE")->AsFloat = tmpYE;
                            UpdateDataBaseQuery->FieldByName("SFYEDT")->AsString = tmpDATESTR;
                            UpdateDataBaseQuery->Post();
                        }
                    }
                    else
						errortag = true;
					UpdateDataBaseQuery->Close();
                }

                //进度显示
                poscollectedrecordcount++;// += recordNUM;
                ValidCProgressBar->Position = currentcount/nodecount*100+(100/nodecount*poscollectedrecordcount/posallrecordcount);
            }

		}
		//数据入库

		Sleep(100);
//		MessageBox(SDIAppForm->Handle, insqlstr.t_str(), "Error", MB_OK|MB_ICONERROR);
//		MessageBox(SDIAppForm->Handle, IntToStr(insqlstr.Length()).t_str(), "Error", MB_OK|MB_ICONERROR);
        if(insqlstr.Length()>0)
        {
            UpdateDataBaseQuery->Close();
            UpdateDataBaseQuery->SQL->Clear();
            UpdateDataBaseQuery->SQL->Add(insqlstr);
            UpdateDataBaseQuery->ExecSQL();
            UpdateDataBaseQuery->Close();
        }

        Sleep(100);
        if(AddinPosinsqlstr.Length()>0)
        {
			UpdateDataBaseQuery->Close();
            UpdateDataBaseQuery->SQL->Clear();
            UpdateDataBaseQuery->SQL->Add(AddinPosinsqlstr);
            UpdateDataBaseQuery->ExecSQL();
            UpdateDataBaseQuery->Close();
        }

        Sleep(100);
        if(Watersqlstr.Length()>0)
        {
			UpdateDataBaseQuery->Close();
            UpdateDataBaseQuery->SQL->Clear();
            UpdateDataBaseQuery->SQL->Add(Watersqlstr);
            UpdateDataBaseQuery->ExecSQL();
            UpdateDataBaseQuery->Close();
        }

		String prooutstr = tmpcaptionstr;
		prooutstr += "已采集入库";
		prooutstr += poscollectedrecordcount;
		prooutstr += "条";
		ValidInfoPanel->Caption = prooutstr;
/*		DWORD writelen;
		WriteFile(hStoreToFile, receivebuf, 2048, &writelen, NULL);     */
	//	BatchDataSaveToFileStream<<receivebuf<<endl;
		for(int i = 0; i < 2048; i++)
			BatchDataSaveToFileStream<<receivebuf[i];
	}
}
コード例 #10
0
ファイル: profile_util.hpp プロジェクト: lcnja/cpfs-os
 /**
  * Start / restart the stop watch.
  */
 void Start() {
   start_time_ = Now();
 }
コード例 #11
0
ファイル: FileCache.cpp プロジェクト: Andy-1954/XCSoar
 /**
  * Is this date in the future?
  */
 gcc_pure
 bool IsFuture() const {
   return mtime > Now();
 }
コード例 #12
0
//---------------------------------------------------------------------------
void __fastcall TXFTJALLExportThread::Execute()
{
	//---- Place thread code here ----
    ValidEXBTN->Enabled = false;
    ValidPreBTN->Enabled = false;
    ValidEBTN->Enabled = false;
    ValidQBTN->Enabled = false;

    Variant ExcelApp;
	try
	{
		ExcelApp = CreateOleObject("Excel.Application");
	}
	catch(...)
	{
		MessageBox(XFTJQFrm->Handle, "错误:您的系统中可能没有安装Excel!", "Error in launch Excel!", MB_OK|MB_ICONERROR);
        ValidEXBTN->Enabled = true;
        ValidPreBTN->Enabled = true;
        ValidEBTN->Enabled = true;
		return;
	}

    ValidQuery->Open();
    String DTX = "";
    String path = GlobalPath;
    String Templatepath;
    ValidQuery->First();
    int allrecord = ValidQuery->RecordCount;
    for(int i = 0; i <65531; i++)
    {
        DTX += ValidQuery->FieldByName("qdate")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("ZSFZE")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("ZSFCS")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("BFSFZE")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("BFCS")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("LHSFZE")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("LHCS")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("SUSFZE")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("SUCS")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("NTSFZE")->AsAnsiString.Trim();
        DTX += "\t";
        DTX += ValidQuery->FieldByName("NTCS")->AsAnsiString.Trim();
        DTX += "\n";
        Validprogress->Position = i*100/allrecord;
        ValidQuery->Next();
        if(ValidQuery->Eof)
            break;
    }

    Templatepath = path + "\\ExportXLSTemplate\\XFTJALLMXTemplate.xlt";
    ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str());
    Variant WB = ExcelApp.OlePropertyGet("ActiveWorkBook");
    Variant ST = WB.OlePropertyGet("Sheets", 1);

    ST.OlePropertyGet("Cells",2,2).OlePropertySet("Value", ValidBHStr.t_str());
    ST.OlePropertyGet("Cells",2,5).OlePropertySet("Value", ValidBMStr.t_str());
    ST.OlePropertyGet("Cells",2,9).OlePropertySet("Value", ValidBeginDatestr.t_str());
    ST.OlePropertyGet("Cells",3,2).OlePropertySet("Value", ValidCZYStr.t_str());
    ST.OlePropertyGet("Cells",3,5).OlePropertySet("Value", DateTimeToStr(Now()).t_str());
    ST.OlePropertyGet("Cells",3,9).OlePropertySet("Value", ValidEndDatestr.t_str());

    ST.OlePropertyGet("Cells",5,2).OlePropertySet("Value", ValidZZE.t_str());
    ST.OlePropertyGet("Cells",6,2).OlePropertySet("Value", ValidZZCS.t_str());

    ST.OlePropertyGet("Cells",5,4).OlePropertySet("Value", ValidBZE.t_str());
    ST.OlePropertyGet("Cells",6,4).OlePropertySet("Value", ValidBZCS.t_str());

    ST.OlePropertyGet("Cells",5,6).OlePropertySet("Value", ValidLZE.t_str());
    ST.OlePropertyGet("Cells",6,6).OlePropertySet("Value", ValidLZCS.t_str());

    ST.OlePropertyGet("Cells",5,8).OlePropertySet("Value", ValidSZE.t_str());
    ST.OlePropertyGet("Cells",6,8).OlePropertySet("Value", ValidSZCS.t_str());

    ST.OlePropertyGet("Cells",5,10).OlePropertySet("Value", ValidNZE.t_str());
    ST.OlePropertyGet("Cells",6,10).OlePropertySet("Value", ValidNZCS.t_str());

    Variant RE = ST.OlePropertyGet("Range", "A9").OleFunction("Select");
    Clipboard()->Clear();
    Clipboard()->SetTextBuf(DTX.c_str());
    ST.OleFunction("Paste");
    Clipboard()->Clear();

    ExcelApp.OlePropertyGet("Columns").OleFunction("AutoFit");
    WB.OleFunction("SaveAs", Validsavepath.t_str());
    ExcelApp.OleFunction("Quit");
    ExcelApp = Unassigned;
    Validprogress->Position = 100;
    MessageBox(XFTJQFrm->Handle, "数据已完成导出!", "Successfully!", MB_OK|MB_ICONINFORMATION);

    ValidEXBTN->Enabled = true;
    ValidPreBTN->Enabled = true;
    ValidEBTN->Enabled = true;
    ValidQBTN->Enabled = true;
}
コード例 #13
0
signed char GoToSleep() {
    signed char retCode = 0;
    UI_Location = UI_LOC_SLEEP;
    signed char inp;
    int bin;
    char idx;

    LCD_ClearDisplay();
    LCD_PrintString("SLEEP\0");
    LCD_DisplayOnOff(0, 0, 0);
    bPowerOff = 1;

    double Expires;
    double Time;

step1:
    ClearUI_Event = 1;
    while (ClearUI_Event);
    while (1) {
        inp = GetInput_nonblocking();
        if (inp<-2) {
            retCode = inp;
            goto WAKEUP;
        }
        switch (inp) {
            case USER_INPUT_CANCEL: //The user pressed cancel
                Expires = Now();
                Expires += 5000;
                bin = 0;
                goto step2;
        }
        idx = 0xff;
        while (idx--);
    }

step2:
    while (1) {
        inp = GetInput_nonblocking();
        if (inp<-2) {
            retCode = inp;
            goto WAKEUP;
        }
        Time = Now();
        if (Time > Expires) goto step1;

        switch (inp) {
            case USER_INPUT_INC: //The user pressed cancel
                bin++;
                if (bin > 8) goto WAKEUP;
                break;
            case USER_INPUT_DEC:
                bin = 0;
                break;
        }
        idx = 0xff;
        while (idx--);
    }
WAKEUP:
    LCD_DisplayOnOff(1, 0, 0);
    bPowerOff = 0;
    return retCode;
}
コード例 #14
0
ファイル: Commons.cpp プロジェクト: GraffLittle/first
//---------------------------------------------------------------------------
TTreeNode* __fastcall TExceptionMessages::AddFFL( AnsiString Str,
  AnsiString File, AnsiString Func, int Line)
{
  MainForm->StatBar->Panels->Items[2]->Text = "E";

  if (!OutTree) {
    AnsiString Mess = "[" + DateTimeToStr(Now()) + "] : " + Str +
      "\nFile = " + ExtractFileName(File) + " (" + IntToStr(Line) + ")" +
      "\nFunction = " + Func;
    ShowMessage(Mess);
    return NULL;
    }

  TTreeNode *TN = OutTree->Items->Add( NULL,
    "[" + DateTimeToStr(Now()) + "] : " + Str);
  OutTree->Items->AddChild( TN, AnsiString("File = ") + ExtractFileName(File) +
    " (" + IntToStr(Line) + ")");
  OutTree->Items->AddChild( TN, "Function = " + Func);

  if (exxp) {
    OutTree->Items->AddChild( TN, ExceptionString(er.ExceptionCode));
    TTreeNode *tn1 = OutTree->Items->AddChild( TN, "Context");
    OutTree->Items->AddChild( tn1, "Flags = 0x" +
      IntToHex((int)cntxt.ContextFlags,8) + ", " +
      ContextFlagsString(cntxt.ContextFlags));
    if ((cntxt.ContextFlags & CONTEXT_CONTROL) == CONTEXT_CONTROL) {
      TTreeNode *tn2 = OutTree->Items->AddChild( tn1, "Control");
      OutTree->Items->AddChild( tn2, "Ebp = 0x" + IntToHex((int)cntxt.Ebp,8));
      OutTree->Items->AddChild( tn2, "Eip = 0x" + IntToHex((int)cntxt.Eip,8));
      OutTree->Items->AddChild( tn2, "SegCs = 0x" + IntToHex((int)cntxt.SegCs,8));
      OutTree->Items->AddChild( tn2, "EFlags = 0x" + IntToHex((int)cntxt.EFlags,8));
      OutTree->Items->AddChild( tn2, "Esp = 0x" + IntToHex((int)cntxt.Esp,8));
      OutTree->Items->AddChild( tn2, "SegSs = 0x" + IntToHex((int)cntxt.SegSs,8));
      }
    if ((cntxt.ContextFlags & CONTEXT_INTEGER) == CONTEXT_INTEGER) {
      TTreeNode *tn2 = OutTree->Items->AddChild( tn1, "Integer");
      OutTree->Items->AddChild( tn2, "Edi = 0x" + IntToHex((int)cntxt.Edi,8));
      OutTree->Items->AddChild( tn2, "Esi = 0x" + IntToHex((int)cntxt.Esi,8));
      OutTree->Items->AddChild( tn2, "Ebx = 0x" + IntToHex((int)cntxt.Ebx,8));
      OutTree->Items->AddChild( tn2, "Edx = 0x" + IntToHex((int)cntxt.Edx,8));
      OutTree->Items->AddChild( tn2, "Ecx = 0x" + IntToHex((int)cntxt.Ecx,8));
      OutTree->Items->AddChild( tn2, "Eax = 0x" + IntToHex((int)cntxt.Eax,8));
      }
    if ((cntxt.ContextFlags & CONTEXT_SEGMENTS) == CONTEXT_SEGMENTS) {
      TTreeNode *tn2 = OutTree->Items->AddChild( tn1, "Segments");
      OutTree->Items->AddChild( tn2, "SegGs = 0x" + IntToHex((int)cntxt.SegGs,8));
      OutTree->Items->AddChild( tn2, "SegFs = 0x" + IntToHex((int)cntxt.SegFs,8));
      OutTree->Items->AddChild( tn2, "SegEs = 0x" + IntToHex((int)cntxt.SegEs,8));
      OutTree->Items->AddChild( tn2, "SegDs = 0x" + IntToHex((int)cntxt.SegDs,8));
      }
    if ((cntxt.ContextFlags & CONTEXT_FLOATING_POINT) == CONTEXT_FLOATING_POINT) {
      TTreeNode *tn2 = OutTree->Items->AddChild( tn1, "Floating point");
      OutTree->Items->AddChild( tn2, "Control word = 0x" + IntToHex((int)cntxt.FloatSave.ControlWord,8));
      OutTree->Items->AddChild( tn2, "Status word = 0x" + IntToHex((int)cntxt.FloatSave.StatusWord,8));
      OutTree->Items->AddChild( tn2, "Tag word = 0x" + IntToHex((int)cntxt.FloatSave.TagWord,8));
      OutTree->Items->AddChild( tn2, "Error offset = 0x" + IntToHex((int)cntxt.FloatSave.ErrorOffset,8));
      OutTree->Items->AddChild( tn2, "Error selector = 0x" + IntToHex((int)cntxt.FloatSave.ErrorSelector,8));
      OutTree->Items->AddChild( tn2, "Data offset = 0x" + IntToHex((int)cntxt.FloatSave.DataOffset,8));
      OutTree->Items->AddChild( tn2, "Data selector = 0x" + IntToHex((int)cntxt.FloatSave.DataSelector,8));
      OutTree->Items->AddChild( tn2, "Cr0NpxState = 0x" + IntToHex((int)cntxt.FloatSave.Cr0NpxState,8));
      }
    if ((cntxt.ContextFlags & CONTEXT_DEBUG_REGISTERS) == CONTEXT_DEBUG_REGISTERS) {
      TTreeNode *tn2 = OutTree->Items->AddChild( tn1, "Debug registers");
      OutTree->Items->AddChild( tn2, "Dr0 = 0x" + IntToHex((int)cntxt.Dr0,8));
      OutTree->Items->AddChild( tn2, "Dr1 = 0x" + IntToHex((int)cntxt.Dr1,8));
      OutTree->Items->AddChild( tn2, "Dr2 = 0x" + IntToHex((int)cntxt.Dr2,8));
      OutTree->Items->AddChild( tn2, "Dr3 = 0x" + IntToHex((int)cntxt.Dr3,8));
      OutTree->Items->AddChild( tn2, "Dr6 = 0x" + IntToHex((int)cntxt.Dr6,8));
      OutTree->Items->AddChild( tn2, "Dr7 = 0x" + IntToHex((int)cntxt.Dr7,8));
      }
    if ((cntxt.ContextFlags & CONTEXT_EXTENDED_REGISTERS) == CONTEXT_EXTENDED_REGISTERS) {
      OutTree->Items->AddChild( tn1, "Extended registers");
      }
    exxp = NULL;
    }

  return TN;
}