| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3981 人关注过本帖
标题:VFP 中 PRODUCTION 是啥意思啊,怎么是蓝色的
取消只看楼主 加入收藏
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
结帖率:83.33%
收藏
已结贴  问题点数:20 回复次数:11 
VFP 中 PRODUCTION 是啥意思啊,怎么是蓝色的
一个小系统修改了好多天了,感谢版主的耐心解答,在这里谢谢版主了,
在程序中,PRODUCTION  是一个变量,我想问的是这个变量要定义不,定义成LOCAL类型可以吗?


下面是我要修改的程序,乱码的部分是繁体汉字,好多字段都是根据上下去判断,还有临时表,数据库字段这些,
有些头大啊!不过现在快收尾了,  真的感谢版主的不吝赐教!

 messageword = "╰??﹍箇︳, 叫?祔?, ????!"
 DO FORM ╰??? WITH messageword
 SELECT ("TPAGE1")
 tableupdate(.T.)
 GOTO TOP
 SELECT ("TPAGE2")
 tableupdate(.T.)
 GOTO TOP
 SELECT ("TPAGE3")
 tableupdate(.T.)
 GOTO TOP
 SELECT ("TPAGE6")
 tableupdate(.T.)
 GOTO TOP
 SELECT ("TPAGE7")
 tableupdate(.T.)
 GOTO TOP
 SELECT ("TPAGE4")
 tableupdate(.T.)
 = cursorsetprop("BUFFERING", 1)
 KEYBOARD ('{121}') CLEAR
 ZAP
 = cursorsetprop("BUFFERING", 5)
 LOCAL x, a, b, i, , , , , , totlenum, yearnum, monthnum, worknum
 SELECT ("TPAGE4")
 tf = 100
 i = 0
 x = 0
 la = 0
  = space(0)
 SELECT ("TPAGE3")
 i = reccount()
 totlenum = 0
 yearnum = 0
 monthnum = 0
 FOR x = 1 TO i
    SELECT ("TPAGE3")
    GOTO x
    IF <>alltrim(tpage3.)
        = alltrim(tpage3.)
       tf = 0
       la = 0
       b = 0
        = 0
        = 0
        = 0
        = 0
        = 0
       worknum = 0
       yearnum = year(tpage3.)
       monthnum = month(tpage3.)
       SELECT tpage6., tpage6., tpage6. FROM TPAGE6 WHERE tpage6.=yearnum AND tpage6.=monthnum INTO CURSOR TEMP
       dattotle = reccount()
       USE IN temp
       SELECT ("TPAGE6")
       SET ORDER TO ???
       m.name = ctod(alltrim(str(year(tpage3.)))+"/"+alltrim(str(month(tpage3.)))+"/"+alltrim(str(day(tpage3.))))
       IF seek(m.name)
          la = recno()
       ELSE
          = messagebox("禬??紅︽ㄆ句戈?郎?絛瞅, ╰??猭璸衡,叫??﹚?!")
          EXIT
       ENDIF
       SELECT ("TPAGE3")
        = day(tpage3.)
        = 0
       b = la-+1
       totlenum = tpage3.
    ELSE
       totlenum = tpage3.
    ENDIF
    SELECT ("TPAGE4")
    APPEND BLANK
    REPLACE tpage4. WITH
    REPLACE tpage4. WITH tpage3.
    REPLACE tpage4. WITH tpage3.
    REPLACE tpage4. WITH tpage3.
    REPLACE tpage4. WITH tpage3.
    REPLACE tpage4. WITH tpage3.
    REPLACE tpage4. WITH tpage3.
    DO WHILE totlenum>0
       SELECT ("TPAGE6")
       GOTO la+
       worknum = iif(alltrim(tpage6.)=="??", 0, iif(alltrim(tpage6.)=="?痁", 1, 2))
        = tpage6.
        = tpage6.
       SELECT ("TPAGE4")
       REPLACE tpage4. WITH
       REPLACE tpage4. WITH
       SELECT * FROM TPAGE7 WHERE tpage7.=tpage3. INTO CURSOR TEMP99
       IF reccount()==0
          = messagebox("????  "+alltrim(tpage3.)+"  ?戈?, ╰??氨?箇︳")
          EXIT
       ELSE
          production = iif(worknum==0, 0, iif(worknum==1, temp99., temp99.))
       ENDIF
       IF int(production*1.05 )>=totlenum .AND. totlenum>=production
          thisform.a41.f5(+-, totlenum)
          totlenum = totlenum-totlenum
           = +1
          tf = 0
       ELSE
          IF tf=0
             IF totlenum>=production
                thisform.a41.f5(+-, production)
                totlenum = totlenum-production
                 = +1
                tf = 0
             ELSE
                thisform.a41.f5(+-, totlenum)
                tf = 100-int((totlenum/production)*100)
                totlenum = totlenum-totlenum
                 = +0
             ENDIF
          ELSE
             IF totlenum>=int((production*tf)/100)
                thisform.a41.f5(+-, int((production*tf)/100))
                totlenum = totlenum-int((production*tf)/100)
                 = +1
                tf = 0
             ELSE
                thisform.a41.f5(+-, totlenum)
                tf = 100-int((totlenum/int((production*tf)/100))*100)
                totlenum = totlenum-totlenum
                 = +0
             ENDIF
          ENDIF
       ENDIF
       IF totlenum<>0
          SELECT ("TPAGE6")
          GOTO la+
          IF <>tpage6.
              = +dattotle
             yearnum = tpage6.
             monthnum = tpage6.
             SELECT tpage6., tpage6., tpage6. FROM TPAGE6 WHERE tpage6.=yearnum AND tpage6.=monthnum INTO CURSOR TEMP
             dattotle = reccount()
             USE IN temp
             SELECT ("TPAGE4")
             tableupdate()
             APPEND BLANK
             REPLACE tpage4. WITH
             REPLACE tpage4. WITH tpage3.
             REPLACE tpage4. WITH tpage3.
             REPLACE tpage4. WITH tpage3.
             REPLACE tpage4. WITH tpage3.
             REPLACE tpage4. WITH tpage3.
             REPLACE tpage4. WITH tpage3.
          ENDIF
       ENDIF
    ENDDO
    SELECT ("TPAGE4")
    tableupdate()
 ENDFOR
 SELECT ("TPAGE4")
 GOTO TOP
 RELEASE WINDOW
搜索更多相关主题的帖子: 数据库 汉字 
2016-09-19 08:28
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
反編譯過來的!
一个生产排成系统

里面很多这样残缺的代码,然后一点一点的匹配修改!!
2016-09-19 09:19
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
回复 2楼 hu9jj
谢谢版主!!!
我菜鸟啊,

现学现用的!

这是反编译后的代码,我是找错然后修改!


之前的是一个台湾人写的系统,在98和2000下可以用,到了XP下就一闪而过,我来了让我来弄这个!

2016-09-19 09:21
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
回复 7楼 sdta
的确是啊,反编译后修改真的麻烦!!
如果自己贸然去写,有些担心写的别人用不习惯,这个软件都用了十六七年了,
另一个担心是这里面的逻辑我搞不清,写出来BUG太多!
其次是我都好多年没写过了,短期内写出来的信心不足,

现反编译后然后修改保证能在WINXP下用(之前只能在WIN98和WIN2000下用),然后再写个,时间上我很充足,不过这托的很久了,

这会是没办法了只能硬着头皮把这弄完,然后再用其他语言重写个!

再还有我想的是我修改完后那么里面的逻辑我就清楚了,自己写的时候也容易很多!
2016-09-19 09:46
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
版主問下啊,  VFP中有沒有  ++  這個指令嗎

比如說  I=1
        I=I++
    這會I的值就是2了,


2016-09-19 10:03
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
回复 10楼 sdta
55555555555
真的是要哭死啊,本身就對著語言不熟悉,很多都是些語法問題害的我想好久!
都答應領導力,我修改好再重寫,這會只能硬著頭皮弄完了
我把大部分的都修改好了,基本就剩了結尾的部分了!

剛問版主的問題麻煩幫忙下啊!

VFP裡有++這個運算符嗎??  對指針對變量都能用嗎?

還有啊!! thisform.a41.f5(+-, totlenum)
這裡面的+- 這個是啥東東啊,函數裡面傳遞的是一個變量,這個應該是反編譯過來的一個錯誤吧,對不!
2016-09-19 10:23
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
回复 12楼 吹水佬
我知道,我反編譯後的結果是這樣,我的意思是這裡是不是錯了,應該是個標量或表達式的!

2016-09-19 10:59
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
回复 14楼 taifu945
版主再問下啊,如果是指針增加一個位置,該怎麼做呢!

local   la
la是一個指針

la=la+1
是這樣嗎?

還是其他的呢!!!
2016-09-19 11:47
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
回复 17楼 红星二锅头
還有其他反編譯軟件啊,


我的天啊,不知道啊,我用的就是你說的那個軟件!!
2016-09-19 16:15
lovelov330
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-28
收藏
得分:0 
FOR x = 1 TO i
    SELECT ("TPAGE3")
    GOTO x

這裡的GOTO  X  是啥意思啊!!

不明白!
2016-09-19 16:16
快速回复:VFP 中 PRODUCTION 是啥意思啊,怎么是蓝色的
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013618 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved