AyaNova CE Archive added as recovered from storage during attempt to upgrade a customer from v1.7 to v8!
This commit is contained in:
@@ -0,0 +1,260 @@
|
||||
// UserPrefsDlg.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "sp.h"
|
||||
#include "UserPrefsDlg.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CUserPrefsDlg dialog
|
||||
|
||||
|
||||
CUserPrefsDlg::CUserPrefsDlg(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CUserPrefsDlg::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CUserPrefsDlg)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
m_pApp= (CSpApp*)AfxGetApp();
|
||||
/*
|
||||
rs=new GZRset("User preferences RSET dialog");
|
||||
rs->SetConnect(m_pApp->strConnectString);
|
||||
*/
|
||||
//Initialize recordset pointer
|
||||
|
||||
rs=m_pApp->rsPool->GetRS("CUserPrefsDlg");
|
||||
}
|
||||
|
||||
|
||||
void CUserPrefsDlg::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CUserPrefsDlg)
|
||||
DDX_Control(pDX, IDC_CKONEDAY, m_ckOneDay);
|
||||
DDX_Control(pDX, IDC_CK_SCHEDROUND, m_ckSchedRnd);
|
||||
DDX_Control(pDX, IDC_DTSCHEDSTOP, m_dtStop);
|
||||
DDX_Control(pDX, IDC_DTSCHEDSTART, m_dtStart);
|
||||
DDX_Control(pDX, IDC_CKONSITE, m_ckOnsite);
|
||||
DDX_Control(pDX, IDC_CBDEFTRAVEL, m_cbDefTravelRate);
|
||||
DDX_Control(pDX, IDC_CBDEFRATE, m_cbRate);
|
||||
//}}AFX_DATA_MAP
|
||||
DDX_Control(pDX, IDC_CKHGRID, m_ckHGrid);
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CUserPrefsDlg, CDialog)
|
||||
//{{AFX_MSG_MAP(CUserPrefsDlg)
|
||||
ON_BN_CLICKED(IDC_BTNDONE, OnBtndone)
|
||||
//}}AFX_MSG_MAP
|
||||
ON_BN_CLICKED(IDC_CKHGRID, OnBnClickedCkhgrid)
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CUserPrefsDlg message handlers
|
||||
|
||||
void CUserPrefsDlg::OnBtndone()
|
||||
{
|
||||
//save preferences
|
||||
CString q,defonsite,schedrnd,schedoneday,strHGrid;
|
||||
long lStart,lStop;
|
||||
COleDateTime dtData;
|
||||
m_dtStop.GetTime(dtData);
|
||||
lStop=dtData.GetHour();
|
||||
|
||||
m_dtStart.GetTime(dtData);
|
||||
lStart=dtData.GetHour();
|
||||
|
||||
|
||||
|
||||
//default onsite/inhouse
|
||||
if(m_ckOnsite.GetCheck()==TRUE)
|
||||
{
|
||||
defonsite="True";
|
||||
m_pApp->m_bDefOnsite=true;
|
||||
}
|
||||
else
|
||||
{
|
||||
defonsite="False";
|
||||
m_pApp->m_bDefOnsite=false;
|
||||
}
|
||||
|
||||
//default Horizontal grid on main workorder list screen
|
||||
if(m_ckHGrid.GetCheck()==TRUE)
|
||||
{
|
||||
strHGrid="True";
|
||||
m_pApp->m_bDefShowHGridOnMainScreen=true;
|
||||
}
|
||||
else
|
||||
{
|
||||
strHGrid="False";
|
||||
m_pApp->m_bDefShowHGridOnMainScreen=false;
|
||||
}
|
||||
|
||||
//schedule rounding
|
||||
if(m_ckSchedRnd.GetCheck()==TRUE)
|
||||
{
|
||||
schedrnd="True";
|
||||
m_pApp->m_bDefSchedRnd=true;
|
||||
}
|
||||
else
|
||||
{
|
||||
schedrnd="False";
|
||||
m_pApp->m_bDefSchedRnd=false;
|
||||
}
|
||||
|
||||
//schedule schedoneday
|
||||
if(m_ckOneDay.GetCheck()==TRUE)
|
||||
{
|
||||
schedoneday="True";
|
||||
m_pApp->m_bDefSchedOneDay=true;
|
||||
}
|
||||
else
|
||||
{
|
||||
schedoneday="False";
|
||||
m_pApp->m_bDefSchedOneDay=false;
|
||||
}
|
||||
|
||||
q.Format("UPDATE users SET users.defonsite = %s, users.hgrid = %s, users.defrate = %s, users.deftravelrate = %s, "
|
||||
"users.defschedstarthour=%u, users.defschedstophour=%u, schedrnd = %s, schedoneday=%s "
|
||||
"WHERE (((users.id)=%u));",defonsite,strHGrid,m_cbRate.GetCurrentRowID(),
|
||||
m_cbDefTravelRate.GetCurrentRowID(),lStart,lStop,schedrnd, schedoneday, m_pApp->m_lusrID);
|
||||
rs->Ex(q);
|
||||
|
||||
CDialog::OnOK();
|
||||
}
|
||||
|
||||
void CUserPrefsDlg::FillLists()
|
||||
{
|
||||
//fill travel and regular rates list boxes
|
||||
CString strData;
|
||||
CString strIndex;
|
||||
long lData;
|
||||
bool bData;
|
||||
m_cbDefTravelRate.Clear();
|
||||
m_cbRate.Clear();
|
||||
m_cbDefTravelRate.AddRow(" <no default>","0");
|
||||
m_cbRate.AddRow(" <no default>","0");
|
||||
rs->Query("SELECT rates.* FROM rates ORDER BY rates.name;");
|
||||
if(!rs->IsEmpty())
|
||||
{
|
||||
//fill combo box with available categories
|
||||
rs->MoveFirst();
|
||||
rs->FetchField("travelrate",&bData);
|
||||
rs->FetchField("name",&strData);
|
||||
rs->FetchField("id",&lData);
|
||||
strIndex.Format("%u",lData);
|
||||
if(bData==true)//it's a travel rate
|
||||
m_cbDefTravelRate.AddRow(strData,strIndex);
|
||||
else
|
||||
m_cbRate.AddRow(strData,strIndex);
|
||||
while(rs->MoveForward())
|
||||
{
|
||||
rs->FetchField("travelrate",&bData);
|
||||
rs->FetchField("name",&strData);
|
||||
rs->FetchField("id",&lData);
|
||||
strIndex.Format("%u",lData);
|
||||
|
||||
if(bData==true)//it's a travel rate
|
||||
m_cbDefTravelRate.AddRow(strData,strIndex);
|
||||
else
|
||||
m_cbRate.AddRow(strData,strIndex);
|
||||
}
|
||||
|
||||
//select default rate
|
||||
m_cbRate.SetCurSel(0);
|
||||
m_cbDefTravelRate.SetCurSel(0);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
BOOL CUserPrefsDlg::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
Security();
|
||||
FillLists();
|
||||
FillFields();
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
CUserPrefsDlg::~CUserPrefsDlg()
|
||||
{
|
||||
m_pApp->rsPool->ReleaseRS(&rs->m_nID);
|
||||
}
|
||||
|
||||
void CUserPrefsDlg::FillFields()
|
||||
{
|
||||
CString q,strData;
|
||||
long lData;
|
||||
bool bData;
|
||||
COleDateTime dtData;
|
||||
q.Format("SELECT users.* "
|
||||
"FROM users "
|
||||
"WHERE (((users.id)=%u));",m_pApp->m_lusrID);
|
||||
rs->Query(q);
|
||||
|
||||
rs->FetchField("defrate",&lData);
|
||||
strData.Format("%u",lData);
|
||||
m_cbRate.Select(strData);
|
||||
|
||||
rs->FetchField("deftravelrate",&lData);
|
||||
strData.Format("%u",lData);
|
||||
m_cbDefTravelRate.Select(strData);
|
||||
|
||||
rs->FetchField("defonsite",&bData);
|
||||
m_ckOnsite.SetCheck(bData ? TRUE:FALSE);
|
||||
|
||||
rs->FetchField("hgrid",&bData);
|
||||
m_ckHGrid.SetCheck(bData ? TRUE:FALSE);
|
||||
|
||||
rs->FetchField("defschedstarthour",&lData);
|
||||
dtData.SetTime((int)lData,0,0);
|
||||
m_dtStart.SetTime(dtData);
|
||||
|
||||
rs->FetchField("defschedstophour",&lData);
|
||||
dtData.SetTime((int)lData,0,0);
|
||||
m_dtStop.SetTime(dtData);
|
||||
|
||||
rs->FetchField("schedrnd",&bData);
|
||||
m_ckSchedRnd.SetCheck(bData ? TRUE:FALSE);
|
||||
|
||||
rs->FetchField("schedoneday",&bData);
|
||||
m_ckOneDay.SetCheck(bData ? TRUE:FALSE);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
void CUserPrefsDlg::Security()
|
||||
{
|
||||
int x=m_pApp->Allowed(RUSERPREFS,true);
|
||||
if(x==0)
|
||||
{
|
||||
m_pApp->SecurityWarning();
|
||||
CDialog::OnCancel();
|
||||
}
|
||||
if(x==2)
|
||||
{
|
||||
m_bReadOnly=true;
|
||||
m_cbDefTravelRate.EnableWindow(FALSE);
|
||||
m_cbRate.EnableWindow(FALSE);
|
||||
m_ckOnsite.EnableWindow(FALSE);
|
||||
m_ckHGrid.EnableWindow(FALSE);
|
||||
m_dtStart.EnableWindow(FALSE);
|
||||
m_dtStop.EnableWindow(FALSE);
|
||||
|
||||
}
|
||||
else
|
||||
m_bReadOnly=false;
|
||||
}
|
||||
|
||||
void CUserPrefsDlg::OnBnClickedCkhgrid()
|
||||
{
|
||||
// Didn't need this, but easier to leave in
|
||||
}
|
||||
Reference in New Issue
Block a user