2016-11-22 42 views
0

有人能向我解释一下这个代码是这样做的:Cobol语言显示变量只是移动

ZAZAZA  MOVE UT-S40-ZONES (UT-INDS40-R) TO W-FH00-S40-ZONES. PGM 
ZAZAZA  MOVE UT-S40-PERIOD (UT-INDS40-R) TO W-FH00-S40-PERIOD. PGM 
----->  DISPLAY "S40-ZONES-PGM::" UT-S40-ZONES (UT-INDS40-R)   
----->  DISPLAY "W-FH00-S40-ZONES::" W-FH00-S40-ZONES     
----->  DISPLAY "UT-S40-PERIOD::" UT-S40-PERIOD (UT-INDS40-R)   
----->  DISPLAY "W-FH00-S40-PERIOD::" W-FH00-S40-PERIOD     
ZAZAZA*                 PGM 

The display are : 
S40-ZONES-PGM::****************************************** 
W-FH00-S40-ZONES:: empty !!!!! 
UT-S40-PERIOD::" *************************************** 
W-FH00-S40-PERIOD::*************************************** 

我找不到W-FH00-S40-开发区::随时随地

我注意到,S40- ZONES-PGM和W-FH00-S40-ZONES具有与PICTURE X相同的尺寸和相同的尺寸。

有没有人有想法?

+2

所有这些代码正在做的是将值移动到不同的变量,而没有看到工作存储部分和逻辑围绕此,很难说实际正在发生什么,甚至没有正确回答这个问题。 – SaggingRufus

+0

欢迎来到stackoverflow.com。请阅读[如何提出良好问题](http://stackoverflow.com/help/how-to-ask)以及如何创建[最小,完整和可验证示例](http://stackoverflow.com/帮助/ MCVE)。 – cschneid

回答

0

我找到了答案。 事实上,在这些线路之前,如果不满足条件IF。

zzzzzz  IF UT-S40-REGMAL (UT-INDS40-R) = "200"     zzz  
zzzzzz*                 zzz  
zzzzzz*                 zzz  
zzzzzz  MOVE UT-S40-ZONES (UT-INDS40-R) TO W-FH00-S40-ZONES. zzz  
+1

感谢您告诉我们。由于这个问题对你的程序非常具体(“MOVE是有条件的,所以并不总是发生”),最好在当天晚些时候或者明天早些时候删除问题,一旦有人表示出对它已经看到了什么决议。 –

+0

我同上比尔:在这种情况下,删除问题似乎是适当的。你直接在你的问题下找到选项。 –

+0

它也说明了为什么最好使用'end-if'而不是结束'if'的句号 –