pb10 第一行syntax error 求大佬康康

weixin_44229313 2020-12-14 04:16:39

如图 做的是工资管理系统里计算工资的按钮 错误里始终显示在第一行
呜呜呜大学生太菜了 求大佬

下接计算代码

integer r_yesno,r_row,r_count,r_rowcount,r_row1,r_gl1

string r_zg_code,r_gzzh

integer r_gznl,r_jbcs,r_cdcs,r_bjcs,r_sjcs,r_kgcs //工作年龄、加班次数、迟到次数、病假次数、事假次数、旷工次数

decimal r_xse //销售额

decimal r_jbgz,r_glgz,r_zcgz,r_gwjt,r_gdbt,r_glgz1 //基本工资项目

decimal r_jbf,r_cdkk,r_bjkk,r_sjkk,r_kgkk,r_jj,r_jtf,r_bxf //变动工资项目

decimal r_jbf1,r_cdkk1,r_bjkk1,r_sjkk1,r_kgkk1,r_jj1 //变动工资中对应的加班费、迟到扣款、病假扣款、事假扣款、旷工扣款

decimal r_je,r_sl,r_sskcs,r_ynsdexx,r_ynsdesx,r_ynsde //个人所得税额相关(金额、税率、速算扣除数、应纳所得额下限、应纳所得额上限、应纳所得额)

decimal r_ynse,r_jbgzhz,r_kkhj,r_yfhj,r_dkse,r_sfhj //应纳税额、基本工资汇总、扣款合计、应发合计、代扣税额、实发合计

string r_gw_code,r_zc_code,r_jx_code,r_sb_code//职工类别、岗位、职称、绩效、社保

r_yesno=messagebox('提示','是否真的进行相关操作?',question!,yesno!,2)

if r_yesno=2 then return

r_count=dw_table.rowcount()

for r_row=1 to r_count

r_zg_code=dw_table.getitemstring(r_row,'zg_code')

select gw_code,zc_code

into :r_gw_code,:r_zc_code

from gz_zgxxb where zg_code=:r_zg_code;

choose case i_type

case 'gz_jbgzb' //基本工资表

//工龄工资

select gznl into :r_gznl from gz_zgxxb where zg_code=:r_zg_code;

select glgz into :r_glgz1 from gz_glgz where gl=:r_gznl;

r_glgz=r_gznl*r_glgz1

//岗位津贴

select gwjt into :r_gwjt from gz_gwjt where gw_code=:r_gw_code;

//职称工资

select zcgz into :r_zcgz from gz_zcgz where zc_code=:r_zc_code;

//固定补贴

select gdbt into :r_gdbt from gz_kkbtgd;

r_gznl=gf_null_0(r_gznl)

r_glgz=gf_null_0(r_glgz)

r_gwjt=gf_null_0(r_gwjt)

r_zcgz=gf_null_0(r_zcgz)

r_gdbt=gf_null_0(r_gdbt)

dw_table.setitem(r_row,'gznl',r_gznl)

dw_table.setitem(r_row,'gnzl',r_gznl)

dw_table.setitem(r_row,'gwjt',r_gwjt)

dw_table.setitem(r_row,'zcgz',r_zcgz)

dw_table.setitem(r_row,'gdbt',r_gdbt)


case 'gz_bdgzb' //变动工资表

//计算在职职工的加班费、迟到扣款、病假扣款、事假扣款、旷工扣款

select jbcs,cdcs,bjcs,sjcs,kgcs into :r_jbcs,:r_cdcs,:r_bjcs,:r_sjcs,:r_kgcs

from gz_kqb where zg_code=:r_zg_code;

select jbf,cdkk,bjkk,sjkk,kgkk

into :r_jbf1,:r_cdkk1,:r_bjkk1,:r_sjkk1,:r_kgkk1

from gz_kkbtgd;

r_jbf=r_jbcs*r_jbf1

r_cdkk=r_cdcs*r_cdkk1

r_bjkk=r_bjcs*r_bjkk1

r_sjkk=r_sjcs*r_sjkk1

r_kgkk=r_kgcs*r_kgkk1

//绩效计算 以销售额为依据提成

select xse into :r_xse from gz_xse where zg_code=:r_zg_code;

if r_xse<5000 then

select tcse into :r_jj1 from gz_jx where jx_code=01;

r_jj=r_jj1

elseif r_xse>=5000 and r_xse<8000 then

select tcse into :r_jj1 from gz_jx where jx_code=02;

r_jj=r_jj1

elseif r_xse>=8000 and r_xse<11000 then

select tcse into :r_jj1 from gz_jx where jx_code=03;

r_jj=r_jj1

else

select tcse into :r_jj1 from gz_jx where jx_code=04;

r_jj=r_jj1

end if

r_jbf=gf_null_0(r_jbf)

r_cdkk=gf_null_0(r_cdkk)

r_bjkk=gf_null_0(r_bjkk)

r_sjkk=gf_null_0(r_sjkk)

r_kgkk=gf_null_0(r_kgkk)

r_jj=gf_null_0(r_jj)

dw_table.setitem(r_row,'jbf',r_jbf)

dw_table.setitem(r_row,'cdkk',r_cdkk)

dw_table.setitem(r_row,'bjkk',r_bjkk)

dw_table.setitem(r_row,'sjkk',r_sjkk)

dw_table.setitem(r_row,'kgkk',r_kgkk)

dw_table.setitem(r_row,'jj',r_jj)


case else //工资汇总表

choose case i_type

case 'gzhzjs' //汇总工资计算

//将基本工资项目、变动工资项目插入到工资汇总表

select gzzh into :r_gzzh from gz_zgxxb where zg_code=:r_zg_code;

select jbgz,glgz,gwjt,gdbt,zcgz into :r_jbgz,:r_glgz,:r_gwjt,:r_gdbt,:r_zcgz

from gz_jbgzb where rq=:g_rq and zg_code=:r_zg_code;

select jbf,jj,jtf,cdkk,bjkk,sjkk,kgkk,bxf into :r_jbf,:r_jj,:r_jtf,:r_cdkk,:r_bjkk,:r_sjkk,:r_kgkk,:r_bxf

from gz_bdgzb where rq=:g_rq and zg_code=:r_zg_code;

select gzzh into :r_gzzh

from gz_zgxxb where zg_code=:r_zg_code;

r_jbgz=gf_null_0(r_jbgz)

r_glgz=gf_null_0(r_glgz)

r_gwjt=gf_null_0(r_gwjt)

r_gdbt=gf_null_0(r_gdbt)

r_zcgz=gf_null_0(r_zcgz)

r_jtf=gf_null_0(r_jtf)

r_jbf=gf_null_0(r_jbf)

r_jj=gf_null_0(r_jj)

r_cdkk=gf_null_0(r_cdkk)

r_bjkk=gf_null_0(r_bjkk)

r_kgkk=gf_null_0(r_kgkk)

r_sjkk=gf_null_0(r_sjkk)

r_bxf=gf_null_0(r_bxf)

dw_table.setitem(r_row,'gzzh',r_gzzh)

dw_table.setitem(r_row,'jbgz',r_jbgz)

dw_table.setitem(r_row,'glgz',r_glgz)

dw_table.setitem(r_row,'gwjt',r_gwjt)

dw_table.setitem(r_row,'gdbt',r_gdbt)

dw_table.setitem(r_row,'zcgz',r_zcgz)

dw_table.setitem(r_row,'jtf',r_jtf)

dw_table.setitem(r_row,'jbf',r_jbf)

dw_table.setitem(r_row,'jj',r_jj)

dw_table.setitem(r_row,'cdkk',r_cdkk)

dw_table.setitem(r_row,'bjkk',r_bjkk)

dw_table.setitem(r_row,'sjkk',r_sjkk)

dw_table.setitem(r_row,'kgkk',r_kgkk)

dw_table.setitem(r_row,'bxf',r_bxf)

//计算在职职工的基本工资汇总,扣款合计,应发合计

r_jbgzhz=r_jbgz+r_glgz+r_gwjt+r_gdbt+r_zcgz

r_kkhj=r_cdkk+r_bjkk+r_sjkk+r_kgkk+r_bxf

r_yfhj=r_jbgzhz+r_jbf+r_jj+r_jtf

//计算代扣税额,实发合计

if r_yfhj<3000 then

r_dkse=0

else

r_ynse=r_yfhj - r_je

select count(*) into :r_rowcount from gz_grsdsl;

for r_row1=1 to r_rowcount

select ynsdexx,ynsdesx into :r_ynsdexx,:r_ynsdesx

from gz_grsdsl where sdsl_name=:r_row1;

if r_ynsdexx<r_ynse and r_ynsdesx>=r_ynse then

select sl,sskcs into :r_sl,:r_sskcs

from gz_grsdsl where sdsl_name=:r_row1;

r_dkse=r_ynse*(r_sl) - r_sskcs

end if

next

end if

r_sfhj=r_yfhj -r_dkse - r_kkhj

r_jbgzhz=gf_null_0(r_jbgzhz)

r_dkse=gf_null_0(r_dkse)

r_yfhj=gf_null_0(r_yfhj)

r_kkhj=gf_null_0(r_kkhj)

r_sfhj=gf_null_0(r_sfhj)

dw_table.setitem(r_row,'jbgzhz',r_jbgzhz)

dw_table.setitem(r_row,'yfhj',r_yfhj)

dw_table.setitem(r_row,'dkse',r_dkse)

dw_table.setitem(r_row,'kkhj',r_kkhj)

dw_table.setitem(r_row,'sfhj',r_sfhj)


...全文
576 2 打赏 收藏 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_44229313 2020-12-14
  • 打赏
  • 举报
回复
谢谢大佬!!发现最后确实忘记写end choose 感恩!!!
鵗鵺 2020-12-14
  • 打赏
  • 举报
回复
你这没有end choose么,这个报错估计是条件语句,for循环啥的缺少对应结束模块吧
内容概要:本文围绕基于物理场的动态模式分解(piDMD)展开研究,重点探讨其在流体力学、热传导及多物理耦合系统中的建模与应用。通过Matlab代码实现,将传统的动态模式分解(DMD)方法与物理场控制方程相结合,引入物理约束以增强数据驱动模型的物理一致性,从而提升对复杂非线性系统的模态提取精度与长期预测能力。文章系统阐述了piDMD的理论基础、数学推导过程与算法实现步骤,并结合典型物理场仿真案例(如Navier-Stokes方程驱动的流场演化)进行验证,展示了其在降阶建模、主导模态识别和时空动态可视化方面的优越性能,适用于高维、强耦合、非平稳系统的分析与优化。; 适合人群:具备一定数值计算、流体力学、控制理论或数据驱动建模背景,熟悉Matlab编程与线性代数运算,从事科学研究、工程仿真或系统辨识工作的研究生、科研人员及工程师。; 使用场景及目标:①实现对流场、温度场等物理场的高效降阶建模与动态行为预测;②提取符合物理规律的关键模态,用于系统稳定性分析与控制设计;③支撑复杂系统的状态估计、异常检测与优化调控等下游任务。; 阅读建议:建议读者结合提供的Matlab代码逐行调试与运行,深入理解piDMD算法中物理约束的嵌入方式及其对模态质量的影响,同时可尝试将其迁移至其他偏微分方程描述的物理系统中进行拓展验证与应用。
内容概要:本文研究了在峰谷分时电价引导下,基于多目标优化遗传算法NSGA-II的电动汽车充电负荷优化问题。通过构建以电网负荷波动最小化和用户充电成本最低为核心的多目标优化模型,利用NSGA-II算法求解获得帕累托最优解集,实现对大规模电动汽车充电行为的有序引导。文中系统阐述了峰谷电价激励机制的设计原理、电动汽车充电负荷的数学建模方法、多目标优化问题的形式化表达以及NSGA-II算法的具体实现流程,并借助Matlab平台进行仿真验证,结果表明该策略能有效平抑电网负荷峰谷差、降低用户充电支出并提升电力系统的运行效率与稳定性。; 适合人群:具备一定电力系统基础知识和Matlab编程能力,从事智能电网、电动汽车调度、需求侧管理等相关领域的研究生或科研人员。; 使用场景及目标:①研究峰谷电价政策对电动汽车充电行为的影响机制;②掌握NSGA-II算法在电力系统多目标优化中的具体应用;③实现电动汽车集群的有序充电调度以改善电网负荷曲线; 阅读建议:此资源结合了电力经济学与智能优化算法,建议读者在学习过程中重点关注模型构建与算法实现的衔接部分,动手复现仿真代码以深入理解参数设置与结果分析过程。
详情可查看下方数据集可视化效果。 【数据集概况】 · 检测类别(中文):[电梯(elevator)] · 训练集:1468 张 · 验证集:157 张 · 测试集:158 张 · 总计:1783 张 该数据集聚焦于各类建筑内部及外部环境中的电梯目标检测任务,涵盖住宅楼、办公楼、商场、酒店等多种典型场景下的电梯结构。图像采集覆盖不同光照条件、材质类型与安装位置,充分体现了实际应用中电梯的多样性与复杂性,为智能楼宇管理、安防监控及无障碍设施识别等方向提供了高质量的视觉基础支持。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 72 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.9446** mAP50-95 | 0.6531 Precision | 0.9305 Recall | 0.8777 train/box_loss | 0.5807 train/cls_loss | 0.3505 val/box_loss | 1.0020 val/cls_loss | 0.6208 【训练过程分析】 72 轮训练后 mAP50 达到 0.9446,模型收敛良好。Loss 曲线前段快速下降,后段趋于平稳,val_loss 无反弹,没有明显过拟合。但 mAP50-95 为 0.6531,和 mAP50 差距 0.29,定位精度仍有优化空间。 【模型性能评估】 Precision 0.9305、Recall 0.8777,精度高于召回,存在一定漏检。 【预测效果展示】 验证集预测效果较好,检测框基本准确覆盖电梯,置信度整体偏高。 【改进建议】 1. 丰富场景...

743

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 脚本语言
社区管理员
  • 脚本语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧