📄 hydj.cpp
字号:
// Hydj.cpp : implementation file
//
#include "stdafx.h"
#include "jeah_data.h"
#include "Hydj.h"
#include "sqltypes.h"
#include "sql.h"
#include "sqlext.h"
//HSTMT FAR* phstmt;
extern HENV henv;
extern HDBC hdbc;
//RETCODE rc;
//RETCODE rc1,rc2;
extern len_bck;
#include "MsgeBox.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// Hydj dialog
Hydj::Hydj(CWnd* pParent /*=NULL*/)
: CDialog(Hydj::IDD, pParent)
{
//{{AFX_DATA_INIT(Hydj)
m_author = _T("");
m_bfwz = _T("");
m_bkname = _T("");
m_bknum = _T("");
m_jge = _T("");
m_tcai = _T("");
m_znum = _T("");
//}}AFX_DATA_INIT
}
void Hydj::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Hydj)
DDX_Control(pDX, IDOK, m_ok2);
DDX_Control(pDX, IDOK3, m_ok1);
DDX_Text(pDX, IDC_AUTHOR, m_author);
DDX_Text(pDX, IDC_BFWZ, m_bfwz);
DDX_Text(pDX, IDC_BKNAME, m_bkname);
DDX_Text(pDX, IDC_BKNUM, m_bknum);
DDX_Text(pDX, IDC_JGE, m_jge);
DDX_Text(pDX, IDC_TCAI, m_tcai);
DDX_Text(pDX, IDC_ZNUM, m_znum);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(Hydj, CDialog)
//{{AFX_MSG_MAP(Hydj)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Hydj message handlers
void Hydj::OnOK()
{
// TODO: Add extra validation here
int i=0;
HSTMT *phstmt;
CString sql;
// CString sqlchk;
RETCODE rc;
char *a;
SDWORD FAR *pcbValue;
char *rgbValue;
a=(char*)malloc(300);
phstmt=(HSTMT FAR *)malloc(sizeof(HSTMT FAR));
rgbValue=(char*)malloc(200);
pcbValue=(SDWORD FAR*)malloc(sizeof(SDWORD FAR));
UpdateData(true);
sql="select count(*) from 书库表 where 书号=";
sql+=m_bknum;
// AfxMessageBox(sql);
strcpy(a,sql.GetBuffer(sql.GetLength()));
// AfxMessageBox(a);
SQLAllocStmt(hdbc,phstmt);
SQLExecDirect(*phstmt,(UCHAR FAR *)a,SQL_NTS);
SQLFetch(*phstmt);
SQLGetData(*phstmt,1,SQL_C_CHAR,rgbValue,100,pcbValue);
if(strcmp(rgbValue,"1")!=0)
{
sql="insert into 书库表(书号,书名,作者,体裁,价格,总数量,借出数,摆放位置,登记时间)values(";
sql+=m_bknum+",'"+m_bkname+"','";
sql+=m_author+"','"+m_tcai+"',"+m_jge+","+m_znum+",0,'"+m_bfwz+"',getdate())";
// AfxMessageBox(sql);
strcpy(a,sql.GetBuffer(sql.GetLength()));
// AfxMessageBox(a);
SQLAllocStmt(hdbc,phstmt);
rc=SQLExecDirect(*phstmt,(UCHAR FAR *)a,SQL_NTS);
if(rc!=SQL_SUCCESS)
{
MsgeBox mb;
mb.m_msge=_T("\n请正确输入!");
UpdateData(false);
mb.DoModal();
i=1;
}
else
{
// AfxMessageBox("系统已登记!");
MsgeBox mb;
mb.m_msge=_T("\n系统已登记!");
UpdateData(false);
mb.DoModal();
m_bknum=_T("");
m_bkname=_T("");
m_znum=_T("");
// m_mimachk=_T("");
m_author=_T("");
m_jge=_T("");
m_bfwz=_T("");
m_tcai=_T("");
UpdateData(false);
GetDlgItem(IDC_BKNUM)->SetFocus();
}
}
else
{
// AfxMessageBox("该书号已被占用,请选用别的书号!");
MsgeBox mb;
mb.m_msge=_T("该书号已被占用\n请选用别的书号!");
UpdateData(false);
mb.DoModal();
GetDlgItem(IDC_BKNUM)->SetFocus();
}
free(a);
free(rgbValue);
free(pcbValue);
free(phstmt);
if(i!=0)
{
char sourcename[30],username[10],password[10];
strcpy(sourcename,"jeah_data_1");
strcpy(username,"sa");
strcpy(password,"jeah");
SQLDisconnect(hdbc);
SQLFreeConnect(hdbc);
SQLFreeEnv(hdbc);
SQLAllocEnv(&henv);
SQLAllocConnect(henv,&hdbc);
SQLConnect(hdbc,(UCHAR*)sourcename,SQL_NTS,(UCHAR*)username,
SQL_NTS,(UCHAR*)password,SQL_NTS);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -