我写了一包房收银程序,在包房计费时,有是会出现时间出错,如晚上9点结账时,结果时变成第二天9点或第二天其它时间了。并且不是在所有机器上都出问题,有些会,有些又不会。安装的都是Win 2k系统、SQL Server 2k。请教各位程序员帮忙,我测不出问题的原因?
[email protected]
[email protected]
解决方案 »
- delphi 伪组件备份
- 哪位大虾能告诉我:clientdataset.close 和 clientdataset.active := false 的区别?谢谢。
- 升级delphi6的程序
- 请问哪有Visual CHM的注册码?
- 请教:如何设定Delphi控件字体的默认值?
- 请问C#当中类似Delphi的paramstr()的函数是什么呢?
- 紧急求助Delphi ADO+Access的问题
- 一个让我困惑的问题
- delphi如何起动word并自动调用一个已定义的宏?
- 一些关于用Database Desktop设计数据库的问题。谢谢(昨天贴了,没人答,今天再帖)
- 谢谢了!!!
- 把十进制转化为二进制什么函数?
你最好以SQL SERVER上的时间为准(getdate)
不要考虑本地机上的时间
而且在一启动程序就自动同步本地机和服务器的时间
select getdate()
返回的结果直接来设置本地机时间
你的不是C/S系统?
每台机上都有一个SQL SERVER?
奇怪的是,这种现象不定,有时会出错,有时也不出错。
客户是不可能更改时间的,他们不懂sql。
也不是病毒。真把我搞糊了。
2. 录入时间的DateTimePicker的time是否设的为0:00:00
3. 什么时候从服务器取时间是一开始还是随时
4. 有否自已的Timer控件
insert into table(time1) values(@time1)
这时你的@TIme1参数是不是来源于本地时间?
象这样(BDE)
parambyname('@time1').asdatetime:=date;
这样就完全可能出问题(在修改本地时间后)
如写成这样
insert into table(time1) values(getdate())
这时采用的是SQL SERVER系统时间
就不会出错
(我以前做的系统也出现这个问题
因为不在当地
想了好一会儿才明白过来
因为无法控制客户端改时间(其实也可以改注册表但太麻烦)
最好全部以服务器时间为准
)
用的都时delphi的控件,并且计算房费没有时间控件。
然后每分钟把这个时间starttime加一分钟
同时判断,系统时间和这个时间是否相等
不相等,就改系统时间
[email protected]
qq:157123678