很快,马上到编码阶段了!
alix安排张伟,先熟悉项目程序的开发,给了张伟一个程序作为参考!
张伟拿到程序后,首先copy一份出来,毕竟这是alix的程序,不能在人家的程序上进行各种解剖,否则把人家程序搞坏了还不好交待啊!
当看到这个程序时,张伟就兴奋了啊,这可是自己心心念念的技术啊!
这个程序运行后是SAp标准程序的界面,不是报表那种!专业术语是“dialog”就是对话交付模式的程序,就像张伟以前开发c#那种,先画界面,然后在对画的这个界面进行编程!而这个程序,alix在编码时还融入了其他元素进去,比如把那个很漂亮模式的报表,缩小成一个小框放到窗口里,还有按钮对这个小框里的数据进行操作!整体感觉这个程序和SAp的标准程序一模一样的!
然后张伟就使出了杀手锏debug,这次debug因为是一种全新的程序类型,张伟没有从中途下断点,而是从程序一启动就开始debug,也就是说从程序的第一行就开始debug,这个程序的写法,也是完全区别于报表!而是各种程序间相互嵌套!还有各种函数的使用!
张伟在debug时,为了同时验证多种猜想,同时开了十几个窗口,有些窗口是debug状态,只是各个debug的窗口,程序的执行行数位置不同,还有些在运行完成的状态,这样好验证,程序执行完之后的效果进行对比!
这种行为就像张伟用的是360度无死角的摄像机,把舞蹈动作录制下来了!然后用3d播放器,对这个视频同时开了10个播放窗口,有些在负10倍慢速放,有些干脆是暂停状态,张伟在拖动鼠标,对这个暂停状态,进行各种角度的旋转观看,解剖、分析;然后还让前后两个动作进行各种角度的对比解剖、对比分析!
很快张伟就把alix的这个程序的运作逻辑给搞清楚了!
主要包括几大部分,画窗口界面,定义菜单,纯粹的程序,张伟都自己进去看了,和当年自己学习的c#有一定的类似!张伟还是特别感谢自己当年在大学那10万行的编码量,虽然没搞出啥正式的功能,但是各种程序都有涉猎,现在来学习新的编程语言,确实轻松很多,基本碰到的问题,都能找到之前类似的进行参考!毕竟本身还是计算机编程,没有跨越太远,万变不离其宗!
不同点还是有几处AbAp的程序分成了两大部分,一部分在窗口部分,一部分在纯粹的程序部分,不像之前学的,直接在一起,这个不同点还是全靠debug的神技,张伟发现的!
程序逻辑流也有点不同.....!
大概花费了1天多,这个dialog的程序写法,基本就被张伟掌握了!或者说这种技术手段被张伟掌握了!张伟的SAp编程技能树又涨了一大截!现在张伟可以直接debug标准程序了!甚至是编写类似的标准程序了!
下午张伟就去给alix汇报了自己学习进度!
“alix,你给我的那个程序,我差不多已经搞定了!”
“啊,你再说一遍!”alix一脸不可思议的看着张伟!
“那个程序我已经差不多掌握了!”
“你都没来问我,你是咋搞定的?”
“我看你很忙,就没来打扰你,我基本就是debug,加上网查,这样就差不多搞定了!”
“那我考考你!这种程序的逻辑流是怎么个顺序?”
“首先是由事物代码触发,然后启动pbo事件流对加载前的数据进行处理,这里是可以放程序逻辑的,主要处理加载前的逻辑,然后加载出数据到界面,显示界面后,等待用户操作,用户操作后进入pAI事件流,里面可以写程序,这里有个关键点,这个程序分成两部分,一部分在界面程序里,一部分在纯粹的程序里.....”
“我靠,你是个天才吧!你们学校是不是,大陆最好的学校哦!“
“.....”这是alix第二次说自己是天才了!张伟有点无语了!当然也不好意思说自己是3本院校!
“我们这还有一个名额,要不给我推荐下你的同学!”
“啊,好啊!那我问问!”
“来!这个需求给你做!本来是我自己打算写的,看你都掌握了,那就给你写吧!”alix顺势,把一个文档给了张伟!
张伟拿到这个需求后,进行了分析!需求大概是,在采购订单收货后,需要改变这个采购订单的收货状态,采购可以查看,并把这个数据回传给web,等于通知供应商了,公司这边已经收货了,不用像之前,由司机带回收货单,或者由采购发传真给供应商,当然真实的单据还是由司机带回公司。
虽然有原来的程序参考,但是毕竟这是一个全新程序功能,只有部分程序是可以重用的!
于是张伟就打算全部重新写一个,需要的就copy,不是之前写报表那种,直接用原来copy过了的来改!
然后张伟就开始了爆肝的开发起来!这种程序相对于报表程序,就是步骤麻烦了点,本质上还是程序,只是需要去好几个地方操作一下,去其他地方操作的时候,张伟发现需要包传输的请求,就是那种传到测试环境,正式环境的程序打包的文件!于是张伟就随便选择了一个!
当晚张伟就一顿嘎嘎猛干,基本上上面的那个需求完成了70%了!张伟觉得第二天应该就可以搞完这个需求了!
第二天大概9.20左右,张伟就听到alix,在最后一排大吼!
“谁动了我的程序!我传输报错了!”大家在办公室面面相觑,都噤若寒蝉!
不过就是一瞬间大家都齐刷刷的看向了张伟!大家心想,最近只有张伟在和alix编程,大概率是张伟了!
张伟被大家看的有点发虚!
“我昨天确实包了一个请求,不过那是我自己新建的程序啊,没包alix的!”
“你过来给我看下,是那个请求!”alix说!
张伟走到alix那里,说了自己的请求号!
“还说不是你,你看这里面就是我程序!你这个完全是瞎说,撒谎!”alix愤怒的说!
张伟突然一下子没反应过来!看自己的包里确实有alix那个程序,可是自己真的没有包啊!
但是张伟也没说啥!就回到了自己位置上了!
alix,此时也把张伟包的那个程序从张伟的包里删除了,重新打包上传了!
张伟在位置上越想越觉得不对劲,被骂倒是小事!问题是自己没搞懂,是怎么回事啊!为什么别人的程序会到自己的包里,这个是技术问题,自己没搞懂!感觉比被骂还难受!
技术问题不容质疑!张伟挣扎了,感觉alix在气头上,如果再去问肯定还是会被骂!张伟有点迟疑啊!
但是张伟又想,这个问题如果没解决,后续还会出问题!必须要搞清楚!反正是技术问题,自己是真不懂,大不了再被骂一次!
于是张伟义无反顾的走到alix面前!
“alix,刚才你说的那个包,是咋回事,我不知道怎么打包进去的,能给我讲讲不,方便我下次不犯错!”
alix先是一愣!好像确实,自己也没有教过张伟,打包进去好像也是情有可原啊!
“张伟不错,勇气可嘉啊!来给你讲下!”
alix打开程序界面说!
“你看这个程序是一个函数?”
张伟听到函数这个词,就明白了!自己没有学过去也还没来得及研究,犯错是肯定了!但是不重要,现在正是时候啊!
“这个函数用SE37进去!”
我靠!全新的技术!张伟立马跑回座位,拿个本子就跑到alix边上!开始哗哗记录!
“函数里面,有函数组,和函数,你刚刚打包的是我的函数组,而我这个函数是没被你打包的,所以我没发现你打包了这个函数组!”
“函数组,为什么可以被我打包了?”张伟问
“函数组里可以有N个具体的函数,我估计是你copy了我的程序,就被你打包了,而我就没打包到这个组!一个程序只能在一个传输包里!”
“哦懂了,这个函数是怎么写的了?”张伟顺势就问了alix!
“函数分成三部分!”alix打开SE37函数编程界面!
“这个是输入参数,这个是输出参数,这个是写代码!”alix在函数编辑界面,点击着各个标签,给张伟讲,讲完后又输入了一个代码。
“这个bApI,是SAp所有的标准函数的地方,你可以查看,这个SE37是我们开发函数的地方!”alix说!
张伟在一旁哗哗的记录着!
“这个函数,是这次我们用来传数据给web那边的,你可以研究下!“alix回到了SE37界面,指着自己编写的那个函数!
张伟立马把那个函数名称记录下来了!
“好了,函数就这些了,主要是那个bApI里很多标准函数,一般我们写这种dialog程序都会用到,你可以好好研究下!”
“好的,感谢alix指导!”
张伟回到位置上,觉得这顿吼值了!又学到新技术了!自己的技能树又可以涨很大一段了!
其次SAp对函数的玩法和其他语言也有很多不同!为什么会专门弄一个地方来管理函数呢?其他程序语言对函数,感觉都是随意定义的?为什么SAp需要专门的地方来管理?得好好研究下!