📄 onejsd.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "oneJSD.h"
#include "DataModule.h"
#include "inoutXJ.h"
#include "login.h"
//#include "report.h"
#include "CuToCNum.cpp"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
ToneJSForm *oneJSForm;
//---------------------------------------------------------------------------
__fastcall ToneJSForm::ToneJSForm(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall ToneJSForm::RadioGroup1Click(TObject *Sender)
{
if(RadioGroup1->ItemIndex==1)
{
Label4->Caption="付款单";
Label5->Caption="今付给";
}else{
Label4->Caption="收款单";
Label5->Caption="今收到";
}
}
//---------------------------------------------------------------------------
void __fastcall ToneJSForm::postBtnClick(TObject *Sender)
{
postBtn->Enabled=false;
DM->ADOQ->Close();
DM->ADOQ->SQL->Clear();
DM->ADOQ->SQL->Add("select * from 结算清单表");
DM->ADOQ->Open();
int sum;
if(DM->ADOQ->RecordCount==0)
sum=1610000001;
else{
DM->ADOQ->Last();
sum=DM->ADOQ->FieldByName("编号")->AsInteger+1;
}
Dnum->Text=sum;
DM->ADOQ->Insert();
DM->ADOQ->FieldByName("编号")->AsInteger=sum;
DM->ADOQ->FieldByName("收支类型")->Value=RadioGroup1->Items->Text;
DM->ADOQ->FieldByName("客户名称")->Value=KHname->Text;
DM->ADOQ->FieldByName("人民币")->Value=Money->Text;
DM->ADOQ->FieldByName("备注")->Value=Edit5->Text;
DM->ADOQ->Post();
DM->ADOQ->Close();
DM->ADOQ->SQL->Clear();
AnsiString str="select * from 应收应付明细表 where 结算单号 is null and 客户名称='";
str+=KHname->Text;
str+="'";
DM->ADOQ->SQL->Add(str);
DM->ADOQ->Open();
DM->ADOQ->Last();
if(DM->ADOQ->FieldByName("事务")->AsString.Trim()=="一次结算"){
DM->ADOQ->Edit();
DM->ADOQ->FieldByName("结算单号")->Value=sum;
DM->ADOQ->Post();
}else
while(!DM->ADOQ->Eof)
{
DM->ADOQ->Edit();
DM->ADOQ->FieldByName("结算单号")->Value=sum;
DM->ADOQ->Post();
DM->ADOQ->Next();
}
DM->ADOQ->Close();
DM->ADOQ->SQL->Clear();
DM->ADOQ->SQL->Add("select * from 应收应付明细表");
DM->ADOQ->Open();
DM->ADOQ->Insert();
DM->ADOQ->FieldByName("时间")->Value=Now().CurrentDateTime().DateTimeString();
DM->ADOQ->FieldByName("单号")->Value=sum;
DM->ADOQ->FieldByName("事务")->Value="一次结算";
DM->ADOQ->FieldByName("结余金额")->Value=Ysum->Text;
DM->ADOQ->FieldByName("结算人")->Value=LoginForm->Edituser->Text;
DM->ADOQ->FieldByName("结算金额")->Value=Money->Text;
DM->ADOQ->FieldByName("备注")->Value=Edit5->Text;
DM->ADOQ->FieldByName("挂帐方式")->Value="现金";
DM->ADOQ->FieldByName("客户名称")->Value=KHname->Text;
if(Ysum->Text.ToDouble()==0)
DM->ADOQ->FieldByName("结算单号")->Value=sum;
DM->ADOQ->Post();
DM->ADOQ->Close();
}
//---------------------------------------------------------------------------
void __fastcall ToneJSForm::MoneyChange(TObject *Sender)
{
if(RadioGroup1->ItemIndex==1)
{
Ysum->Text=noSum->Text.ToDouble()+Money->Text.ToDouble();
}else{
Ysum->Text=noSum->Text.ToDouble()-Money->Text.ToDouble();
}
float sum=Money->Text.ToDouble();
Edit3->Text=CurrToChnNum(sum,false,0);
}
//---------------------------------------------------------------------------
void __fastcall ToneJSForm::printBtnClick(TObject *Sender)
{
//ShowMessage("无法打印");
Variant vWordApp,vTable,vCell;
try
{
vWordApp = Variant::CreateObject("Word.Application");
}
catch(...)
{
MessageBox(0, "启动 Word 出错, 可能是没有安装Word.","DBGrid2Word", MB_OK | MB_ICONERROR);
vWordApp = Unassigned;
return;
}
// 隐藏Word界面
vWordApp.OlePropertySet("Visible", true);
// 新建一个文档
vWordApp.OlePropertyGet("Documents").OleFunction("Add");
Variant vSelect = vWordApp.OlePropertyGet("Selection");
// 设置一下字体,大小
vSelect.OlePropertyGet("Font").OlePropertySet("Size", 24);
vSelect.OlePropertyGet("Font").OlePropertySet("Name", Label4->Font->Name.c_str());
AnsiString str=" "+Label4->Caption;
str+="\n "+Label5->Caption+KHname->Text.Trim();
str+="结算款人民币(小写)"+Money->Text;
str+=",大写"+Edit3->Text;
str+="。\n 备注:"+Edit5->Text;
str+="。\n 客户签名: ";
str+="\n ";
AnsiString strPtrDate =Now().CurrentDate().DateString();//取当前日期
str+=strPtrDate;
vSelect.OlePropertySet("Text",str.c_str());
/*int nRowCount=4;
int nColCount=1;
vWordApp.OlePropertyGet("ActiveDocument").OlePropertyGet("Tables").OleProcedure("Add",vSelect.OlePropertyGet("Range"),
nRowCount, // 行数
nColCount, // 列数
1, // DefaultTableBehavior:=wdWord9TableBehavior
0);
vTable = vWordApp.OlePropertyGet("ActiveDocument").OleFunction("Range").OlePropertyGet("Tables").OleFunction("Item", 1);
vCell = vTable.OleFunction("Cell", 1,1);
//vCell.OlePropertyGet("Font").OlePropertySet("Size", 20);
//vCell.OlePropertyGet("Font").OlePropertySet("Name", "宋体");
vCell.OlePropertySet("Range",Label4->Caption.c_str());
AnsiString str=" "+Label5->Caption+KHname->Text.Trim();
//float sum=.ToDouble();
str+="结算款人民币(小写)"+Money->Text;
str+="大写"+Edit3->Text;
vCell = vTable.OleFunction("Cell", 2,1);
vCell.OlePropertySet("Range",str.c_str());
str="备注:"+Edit5->Text;
vCell = vTable.OleFunction("Cell", 3,1);
vCell.OlePropertySet("Range",str.c_str());
str="客户签名: "+KHqm->Text;
vCell = vTable.OleFunction("Cell", 4,1);
vCell.OlePropertySet("Range",str.c_str()); */
}
//---------------------------------------------------------------------------
void __fastcall ToneJSForm::closeBtnClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -