#include "FinanceBook.h"
#include "AccountDaily.h"
// CAccountDaily 对话框
IMPLEMENT_DYNAMIC(CAccountDaily, CDialog)
CAccountDaily::CAccountDaily(CWnd* pParent /*=NULL*/)
: CDialog(CAccountDaily::IDD, pParent)
{
EnableAutomation()
}
CAccountDaily::~CAccountDaily()
{
}
void CAccountDaily::OnFinalRelease()
{
// 释放了对自动化对象的最后一个引用后,将调用
// OnFinalRelease。基类将自动
// 删除该对象。在调用该基类之前,请添加您的
// 对象所需的附加清理代码。
CDialog::OnFinalRelease()
}
void CAccountDaily::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX)
}
BEGIN_MESSAGE_MAP(CAccountDaily, CDialog)
ON_BN_CLICKED(IDOK, &CAccountDaily::OnBnClickedOk)
END_MESSAGE_MAP()
BEGIN_DISPATCH_MAP(CAccountDaily, CDialog)
END_DISPATCH_MAP()
// 注意: 我们添加 IID_IAccountDaily 支持
// 以支持来自 VBA 的类型安全绑定。此 IID 必须同附加到 .IDL 文件中的
// 调度接口的 GUID 匹配。
// {535CE23C-51E3-4FD9-96FB-DB8A8C13BE92}
static const IID IID_IAccountDaily =
{ 0x535CE23C, 0x51E3, 0x4FD9, { 0x96, 0xFB, 0xDB, 0x8A, 0x8C, 0x13, 0xBE, 0x92 } }
BEGIN_INTERFACE_MAP(CAccountDaily, CDialog)
INTERFACE_PART(CAccountDaily, IID_IAccountDaily, Dispatch)
END_INTERFACE_MAP()
// CAccountDaily 消息处理程序
BOOL CAccountDaily::OnInitDialog()
{
CDialog::OnInitDialog()
// TODO: 在此添加额外的初始化
CButton *pRadioButton = (CButton*)GetDlgItem(IDC_PAYOUT)
pRadioButton->SetCheck(true)
CButton *pCheckBox = (CButton*)GetDlgItem(IDC_FORMAT_DAILY)
pCheckBox->SetCheck(true)
return TRUE // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CAccountDaily::CheckEnter()
{
//该函数的作用是检查输入格式,判断RadioButton和CheckBox的状态
CButton *pRadioButton = (CButton*)GetDlgItem(IDC_PAYOUT)
CButton *pCheckBox = (CButton*)GetDlgItem(IDC_FORMAT_DAILY)
int IsRadioButtonChecked = pRadioButton->GetCheck(),
IsCheckBox = pCheckBox->GetCheck()
GetDlgItemText(IDC_DATE_DAILY,dateTime)
GetDlgItemText(IDC_RESUME,resume)
GetDlgItemText(IDC_AMOUNT_DAILY,amount)
GetDlgItemText(IDC_REMARK_DAILY,remark)
if(!resume.GetLength())
{
MessageBox(L"费用摘要 不能为空! ",L"重要提示",MB_ICONWARNING)
GetDlgItem(IDC_RESUME)->SetFocus()
}
else if(!amount.GetLength())
{
MessageBox(L"发生金额 不能为空! ",L"重要提示",MB_ICONWARNING)
GetDlgItem(IDC_AMOUNT_DAILY)->SetFocus()
}
else
{
if(IsRadioButtonChecked)
type = L"支出"
else
type = L"收入"
int dot = 0, space = 0, ch = 0
CString str
for(int index = 0index != amount.GetLength()++index)
{
if(amount.GetAt(index) == '.')
dot++
if(amount.GetAt(index) == ' ')
space++
if(amount.GetAt(index) <'0' || amount.GetAt(index) >'9')
{
str = amount.GetAt(index)
ch++
}
}
if(ch >0)
{
/***BUG:当字串中有其他字符,形如“a.6”时,会认为格式正确。***/
if(str != '.' &&str != ' ' || (space >0 || dot >1) )
{
MessageBox(L"金额格式有误,请您检查输入! ",L"重要提示",MB_ICONWARNING)
amountIsRigth = false
GetDlgItem(IDC_AMOUNT_DAILY)->SetFocus()
}
else
amountIsRigth = true
}
if(IsCheckBox)
amount = L"¥" + amount
}
}
void CAccountDaily::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
//OnOK()
CheckEnter()
if(resume.GetLength() &&amount.GetLength() &&amountIsRigth)
MessageBox(dateTime + L"\n\n" + resume + L"\n\n" + type + L"\n\n" + amount + L"\n\n" + remark)
}
pdca的意思是质量管理控制,从发现问题——>找到解决问题的办法——>实施些办法——>再找到新问题,然后继续进入这个循环,以通过这个循环持续提高产品质量。在餐饮管理中可针对某个项目(比如提高上座率)来进行 *** 作。以提高上座率为例:1、发现上座率较低。(p,发现问题)
2、查找影响上座率低的因素(d,找到问题的症结)
(1)饭菜质量差(2)服务生态度差(3)饭菜价格高(4)酒水类型不多。。。(x)老板人缘不行,等等
3、分析这些因素对上座率低的影响,找到最大的那个(不一定是一个,可能是多个)制定改善这个问题的措施(c)
4、实施这些措施,并进行效果检查(a)。
5、对效果进行评估,如果最大的那个问题解决了,再从其次或者又发现的那个问题再继续制定改进措施—>实施措施—>评估进行循环。
通过以上的循环,可以持续的提高上座率。
这个就是pdca循环的大体思路。
源码:http://www.pudn.com/downloads25/sourcecode/app/detail81093.html
http://www.pudn.com/downloads38/sourcecode/app/detail132050.html
http://down.51cto.com/data/156454
含论文版:
http://download.csdn.net/detail/qwbug/3244641
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)