| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 641 人关注过本帖
标题:VFP 程序设计_查询语句_宏代换应用_标红的行错误在哪儿了,提示:命令中含有 ...
只看楼主 加入收藏
Heris_Lau
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2022-9-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:10 
VFP 程序设计_查询语句_宏代换应用_标红的行错误在哪儿了,提示:命令中含有不能识别的短语或关键字
程序代码:
SELECT DISTINCT YM FROM temp INTO CURSOR YM
DECLARE A(reccount(),fcount())
DECLARE B(reccount(),fcount())
sele YM 
INDEX on YM to aa
COPY TO ARRAY A
FOR i=1 TO RECCOUNT()*FCOUNT()
  B(i)='Q'+A(i)
ENDFOR

DISPLAY MEMORY LIKE A*
DISPLAY MEMORY LIKE B*

SELECT DISTINCT bjh, dpt FROM temp GROUP BY bjh,dpt INTO CURSOR zidiso_0
k=0
FOR j=1 TO 1
  X=('zidiso_0_a'+ALLTRIM(str(j,1)))
  SELECT DISTINCT bjh, dpt,qty FROM temp WHERE YM==A(j) INTO CURSOR &x
  y=('zidiso_'+STR(k,1))
  SELECT (&y).*,(&x).qty as (B(j)) FROM (&y) LEFT JOIN (&x) ON (&y).BJH=(&x).bjh AND (&y).dpt=(&x).dpt INTO CURSOR ('zidiso_'+STR((k+1),1))  &&错误行,错在哪儿了
  k=k+1
ENDFOR
COPY TO zidiso_6



[此贴子已经被作者于2023-10-16 17:26编辑过]

搜索更多相关主题的帖子: SELECT INTO 错误 FROM CURSOR 
2023-10-16 17:20
Heris_Lau
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2022-9-25
收藏
得分:0 
VFP提示:下边这句有错误,提示:命令中含有不能识别的短语或关键字,但是不知道错在哪儿了?请大神指点
SELECT (&y).*,(&x).qty as (B(j)) FROM (&y) LEFT JOIN (&x) ON (&y).BJH=(&x).bjh AND (&y).dpt=(&x).dpt INTO CURSOR ('zidiso_'+STR((k+1),1))  
2023-10-16 17:21
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:610
专家分:1784
注 册:2017-7-16
收藏
得分:4 
个人见解如下:
【SELECT DISTINCT YM FROM temp INTO CURSOR YM】
你前后两个YM不知何为哉?好像不妥。
下面还有这么多,你使用变量太【节约】了。
【B(i)='Q'+A(i)】
这里的应当用allt(A(i))
其他你自己琢磨吧。
2023-10-16 17:27
Heris_Lau
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2022-9-25
收藏
得分:0 
纠正一下哈,FOR j=1 TO 1 更改为 FOR j=1 TO Alen(B);错误仅存在下边这一行,其它的都能执行过去
SELECT (&y).*,(&x).qty as (B(j)) FROM (&y) LEFT JOIN (&x) ON (&y).BJH=(&x).bjh AND (&y).dpt=(&x).dpt INTO CURSOR ('zidiso_'+STR((k+1),1))  
2023-10-16 17:34
Heris_Lau
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2022-9-25
收藏
得分:0 
回复 3楼 gs2536785678
这是个人为了区分生成临时表的内容,因为只有一个字段YM,所以也把临时表命名为了YM
2023-10-16 17:35
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1089
专家分:2682
注 册:2015-12-30
收藏
得分:4 
SELECT (&y).*,(&x).qty as (B(j))
这里的 (&y)和(&x)等于用了两次宏,去掉括号试试吧
2023-10-16 22:10
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1730
专家分:3324
注 册:2012-2-29
收藏
得分:4 
回复 楼主 Heris_Lau
若是仅测试宏运行效果,就需要单步操作;若是希望得到某个结果,可以直接上图,原表结构图、希望得到结果图,也许有其他更好的方案。
建议修改如下,但不知道是不是希望的结果
程序代码:
select distinct ym from temp into cursor ym
declare a(reccount(),fcount())
declare b(reccount(),fcount())
sele ym
index on ym to aa
copy to array a
zjls = reccount()*fcount()          && === 修改
for i=1 to zjls                     && === 修改
  b(i) = 'q' + alltrim(a(i))        && === 修改
endfor

display memory like a*
display memory like b*

select distinct bjh, dpt from temp group by bjh,dpt into cursor zidiso_0

k=0
for j = 1 to 1
    x= 'zidiso_0_a' + alltrim(str(j,1))    && === 修改
    select distinct bjh, dpt,qty from temp where alltrim(ym)==alltrim(a(j)) into cursor &x    && === 修改
    y = 'zidiso_'+alltrim(str(k,1))           && === 修改
    bc = 'b' + alltrim(str(j,1))              && === 修改
    bm = 'zidiso_'+ alltrim(str((k+1),1))     && === 修改
    select &y..*,&x..qty as &bc  from &y left join &x on alltrim(&y..bjh) == alltrim(&x..bjh) and alltrim(&y..dpt) == alltrim(&x..dpt) into cursor &bm    && === 修改
endfor
copy to zidiso_6





[此贴子已经被作者于2023-10-17 07:29编辑过]

2023-10-17 06:59
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:4 
逐个检查宏替换的内容,应该可以发现问题。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2023-10-17 08:28
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:4 
上表
临时表TEMP那来的

坚守VFP最后的阵地
2023-10-17 10:40
Heris_Lau
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2022-9-25
收藏
得分:0 
回复 7楼 schtg
感谢大神,你的是对的,我的错误在于少了一个".",改成两个".."就对了

  SELECT &y1..*,&X..qty as &Z FROM &y1 LEFT JOIN &X ON &y1..BJH=&X..bjh AND &y1..dpt=&X..dpt INTO CURSOR &y2
2023-10-18 11:19
快速回复:VFP 程序设计_查询语句_宏代换应用_标红的行错误在哪儿了,提示:命令 ...
数据加载中...
 
   



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

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