FLUX培训周记-第四周(2023-05-08)

1.A项目需要新增奇门接口集成,需要提前做哪些准备工作?

答:

  1. 三方确认customerid:己方、上游、客户方三方沟通确认customerid值
  2. 上游系统提交奇门申请:如旺店通、ERP、FLUX OMS(SCP)等他们都有唯一的奇门APPKEY;申请时他们还需填写第一步中确认的customerld
  3. 确认DH URL地址:【服务代理】-【REST XML服务】-【服务代理】-消息集编码为FLUXWMSQM记录的【请求URL 】拼接http://域名(ip):端口+【请求URL】
  4. 富勒方奇门后台审核:通知四号技术并告知customerld和第三步中中的DH URL地址,进行审核操作

进入联调测试阶段:可进行联调测试

2. 现有接口需要修改字段映射,请问在哪个菜单功能下实现?

答:【元数据管理】-【消息映射】

3.现有接口需要修改回传接口地址,请问在哪个菜单功能下实现?

答:【元数据管理】-【消息定义】-【消息发送】

4.如B项目的WMS数据库密码变更,请问在哪个功能下修改并操作什么才能使其立刻生效?

答:【元数据管理】-【数据源】;点击【重载】按钮才会生效。

5. 消息定时器有哪几种频率?

答:

  1. 间隔方式
  2. 定时方式

6.流程监控界面无任何查询条件,点击查询时都无法查出数据,请问会有哪些原因导致?

答:

  • 没有接口的话肯定没有数据,题目中所说的是有接口但查不到数据;没有接口数据是可能的;还有可能是mongodb可能意外停止了,前台界面查不到数据。

7. 测试单品复核的功能,结合产品手册、平台任务罗列测试场景;

答:

  • 1.正常测试
  • 测试单品复核功能是否可以正常启动;
  • 测试系统是否能够正确读取单品信息,包括单品编号、数量、规格等信息;
  • 测试系统是否能够正确识别不符合要求的单品,并给出相应提示;
  • 测试系统是否能够正确识别已经复核过的单品,并给出相应提示;
  • 测试复核结果是否能够正确上传至平台,并能够在平台上进行查看;
  • 测试系统是否能够记录操作员和操作时间等相关信息,以便后续追溯;
  • 测试系统是否能够正确处理复核中出现的异常情况,如网络中断、系统错误等;
  • 测试系统是否能够支持多种复核方式,如手动扫描、自动扫描等,以满足不同客户的需求;
  • 测试系统的性能是否稳定,能否承受并发操作和大量数据的处理。
  • 测试如果波次包含多货主订单,勾选多货主(选项)系统根据扫描的SKU确认货主。如遇到不同货主具有同一SKU,是否弹出框人工确认。
  • 测试如果箱型规则中,配置为“箱型必输”,则先扫描SKU,是否能够跳转到装箱ID强制录入。
  • 若勾选“锁定箱型”,测试是否保留装箱ID选择,直到取消“锁定箱型”勾选。
  • 扫描/输入产品代码,测试系统在波次/货主范围内能否查找到对应订单。
  • 测试根据是否系统生成单号的参数设置,由系统自动生成新箱号,或者人工扫描/录入箱号。
  • 测试系统显示匹配到的订单号信息、执行装箱确认,能否根据是否自动打印的参数设置,驱动对应装箱标签、装箱清单打印。
  • 测试单品复核后能否根据作业需要(SGL_LNK_DEL参数控制),跳转到配送单作业功能,以便连续操作。
  • 测试【浏览】按钮,在不同产品的单品订单组成的混产品波次中,产品条码无法扫描时、人工选择产品时,点击后是否可以在二级窗口中,选择此波次下的产品。
  • 测试点击箱号字段后的【换箱】按钮,系统是否重置本次扫描数量,并且光标定位在拣货箱号,是否可输入新的箱号。
  • 测试点击【重置装箱】按钮后,是否显示二级窗口,是否可以通过订单号或者箱号查询到已装箱记录,能否重置为未装箱,能否重新进行复核装箱操作。
  • 测试设置结束录像等待时间后,是否完整摄制最后一个订单的面单打印后粘等非系统操作动作,是否能够多录制所设置等待时间。
  • 测试在CHK GET_PHO参数(出库复核拍照管理)开启录像配置情况下(参数配置为2),扫描波次通过校验后,系统是否自动开启摄像头,开始拍摄操作监控视频。
  • 2.破坏性测试
  • 输入错误的波次号时,是否弹出提示框“没有查找到相应的数据”
  • 输入错误的货主名称时,是否弹出提示框“未查询到货主信息”
  • 输入错误的产品代码,是否弹出提示框“波次内无此产品”

 

  1. 8.你临时被安排进入一个项目测试,你需要怎样开展工作;

答: 

(1)熟悉项目背景和需求;了解项目的业务背景、目标、范围、需求文档等信息,以确保自己对项目的理解与团队成员一致,能准确地理解需求和预期的功能。

(2)确定测试范围、测试用例并罗列测试场景;根据需求文档和功能说明书,确定测试范围和测试用例,编写测试计划和测试用例,测试场景分为正常测试和破坏性测试,以保证测试全面、准确、高效。

(3)环境配置和测试准备;根据项目要求,准备测试环境,包括硬件设备、软件系统、网络环境等,同时准备测试数据和测试工具,保证测试的准确性和有效性。

(4)执行测试和记录测试问题;按照测试用例进行测试,记录测试结果和问题,并及时反馈给开发测试群或者开发配置群或者1号、2号技术支持,使其能够及时修复缺陷,确保项目质量。

(5)跟进解决方案和复测:配合技术人员解决问题并跟进解决方案,技术人员改进完成后,再进行复测,若没有问题进行下一步。

(6)进行测试报告和总结;测试完成后,根据测试结果和缺陷情况,编写测试报告和总结,分析测试结果和缺陷根本原因,并提出改进措施,为项目开发和管理提供有价值的参考。

9.请按如下维度学习产品手册中各日志功能说明

  1. 功能介绍
  2. 如何开启
  3. 如何查询
  4. 适用场景
  5. 注意事项

10.哪些日志存储在关系型数据库,并说明对应的表名

答:

  1. ACT_DOUBLECHECK_LOG 二次审核日志
  2. SYS_DATAUPDATE_LOG 系统数据更新日志
  3. BSM_USER_LOGINFAIL 用户登陆失败日志
  4. BSM_USER_LOGINOK 用户登陆成功日志
  5. BSM_USER_CHGPWD 用户密码修改日志
  6. DOC_PRINT_SUMINFO 打印汇总信息
  7. SYS_USERACCESSUPDATE_LOG 用户权限变更表
  8. DEV_UDFQRYCFG 报表日志

11.操作某个操作界面弹框异常后,通过哪里可以看到异常查询的SQL脚本

答:业务操作信息模块可以输入相关条件进行查询。

12.请学习产品手册中日志配置说明,回答如下问题

  1. 日志配置的级别应用

日志根据输出的详细程度,分为4个级别,最明细的级别,命名为1级日志,会输出调试、信息、预警、错误4个类别的全部日志;.2级日志,则不记录调试日志,会输出信息、预警、错误类别的日志。3级日志则是预警、错误类别的日志;4级日志是最简单的,仅包含错误类的日志信息,

通常由系统管理员,根据现场运营需要调整当前日志级别。

系统初始化默认采用3级日志,输出预警、错误类别的日志信息。

有些作业现场,新仓库上线时,会设置为3级日志输出;作业发现异常,可以针对异常功能提升到2级日志((信息/预警/错误),甚至进行1级日志的跟踪(调试/信息/预警/错误)﹔运作平稳后,日志级别降低为4级,操作正常的作业日志可以不再输出。

答:

  1. 日志分类的配置场景说明,以及去除定时器日志后的读取优先级

【全局级日志】:默认,整个环境的日志记录级别设置。

【业务仓库级日志】:针对指定业务仓库的日志级别设置。

【功能和操作级日志】:针对某个功能整体,或者功能下的具体操作按钮、右键进行细化日志的级别设置。经常用在个别功能跟踪配置检查时,临时更改配置使用。

【用户级日志】:具体某个用户的日志记录级别设置。一般用于个别用户的操作异常跟踪,将记录用户操作涉及的全部功能模块对应日志。

【定时器日志】:定时执行不同的作业,为每个定时器分别配置日志设置,可以执行不同颗粒度的日志输出。

  1. 读取优先级:用户>操作>功能>业务仓库>全局

13.在使用预期到货通知界面的标准导入模板时,想要在下载的标准模板上加一个字段,该如何操作设置

答:【预期到货通知】-【导入】-【标准导入】-【下载标准模板】-打开标准模板-新增自定义字段-保存-【数据导入规则配置】-配置

14.

配置PO/ASN/SO交叉报表,要求:

横向内容sku,纵向内容PO/ASN/SO单号、货主名称、仓库名称,交叉内容qty;

横纵向汇总;

最终报表预览效果图:

15.某项目,产品标签格式为二维码,规则为SKU编码_YYYY-MM-DD_5位流水码,其中YYYY-MM-DD是产品的生产日期,请配置产品条码解析逻辑:

1)扫描二维码后需要进行解析,得到SKU编码(公共解析);

2) RF【标准收货】功能特殊校验逻辑,如果扫描的产品生产日期在200天之前(当前日期-生产日期>200),则及时提醒操作人员‘当前扫描的产品过禁售期,不允许收货’。

请进行实际操作,并有报错提示

答:

先创建一个产品CK217,设置它的生产日期为2019-01-01

在【标准业务扩展配置】新增【产品条码解析】

在数据库中新增存储过程“FLUX_SFTRAIN_SPBCD_Sku”:

去RF标准收货验证:

如果生产日期设置为2023-01-01,回车以后

不会提示“当前扫描的产品已过禁售期,不允许收货”,因为当前日期-生产日期不超过200天,所以回车以后自动带入产品CK217的信息

16.概念解答

(1)主键要求非空,那么我们是否有必要为主键加上默认值?

答:对于主键的非空要求,是为了保证表中的每一行记录都有唯一标识,避免数据重复或出现混乱的情况。加上默认值,是否有必要取决于实际需求。
在某些情况下,我们可能会选择不为主键添加默认值,例如:

  • 主键是自增的:如果主键是自增的,则数据库引擎会自动为新插入的记录分配一个唯一的主键值,不需要为其指定默认值。
  • 主键与外键相关联:如果主键同时也是外键,那么其值应该由关联表提供。在这种情况下,我们也不需要为其指定默认值。
  • 主键的值由应用程序生成:有些应用程序可能会根据特定的算法或逻辑生成主键值,而不是将其委托给数据库引擎。在这种情况下,我们可以在应用程序中声明一个默认值,并在插入新记录时使用该默认值。


在某些情况下,我们可能会为主键添加默认值,例如:

  • 主键是复合键:如果表的主键由多个列组成,则我们可能需要为其中几个列设置默认值。这样可以确保每次插入新记录时,表中所有主键列都具有一个值。
  • 主键是手动输入的:在某些情况下,我们可能需要手动输入主键值,例如使用批处理导入数据,并且缺少自动生成的数字主键。在这种情况下,我们可以为主键设置默认值,以确保插入新记录时主键列都有一个值。

总之,是否为主键设置默认值取决于具体情况。我们需要根据表结构、应用程序需求以及业务逻辑来判断是否需要默认值。

(2)表join on关联可能会发生记录数翻倍,我们如何避免翻倍?

答:在表join on关联时,可能会发生记录数翻倍的问题,这是因为关联的字段中可能存在重复的值,导致匹配时出现多个匹配结果。为了避免这个问题,我们可以考虑以下几个方法:

  • 添加限制条件:在SQL语句中添加限制条件,例如使用WHERE子句过滤掉部分记录,从而减少联接匹配的记录数,避免记录数翻倍的问题。
  • 使用Distinct:可以使用DISTINCT关键词来去除匹配结果中的重复记录,从而避免记录数翻倍的问题。
  • 使用Group By:如果表join on关联出现记录数翻倍的问题,那么可以尝试使用GROUP BY子句将数据按关联字段进行分组,然后进行聚合函数计算(如 COUNT、SUM、AVG 等),从而得到合适的结果。
  • 尽量避免多表联查:在设计表结构时,应该尽量避免多表联查,将数据分开存储在不同的表中,避免联查时出现记录数翻倍的问题。
  • 合理使用索引:通过在相关字段上添加索引,可以加快表联合查询的速度,从而减少操作时间,提高查询效率。但同时需要注意索引的维护、存储增加等问题。

总之,在表join on关联时,需要根据具体情况选择适当的方法,避免记录数翻倍的问题。需要注意的是,联接性能也有相关技巧需要注意,例如可利用缓存、合理分解大表、数据库分区等手段来提高效率。

老师建议:主键关联一定不可以少。

(3)更新删除数据有风险,一定不要忘记加条件,对于一个新手如何鉴别条件的正确性?

答:更新和删除数据时,确实存在数据风险,因此在进行这些操作时,应该确保条件的准确性以避免意外删除或更新不正确的数据。对于新手来说,以下是一些鉴别条件正确性的方法:

  • 确认条件是否具有唯一性:使用具有唯一性的字段作为条件进行更新或删除是安全的。例如,使用主键或唯一索引字段作为条件。
  • 确认条件的结果是否符合预期:在确认条件正确性之前,应该先查询条件下返回的数据是否符合预期,确保不会将不必要的记录更新或删除。
  • 避免使用模糊条件:如果在条件语句中使用模糊匹配,如使用 LIKE 操作符,则应该非常小心。这种条件操作可能会返回多个匹配项,导致我们更新或删除不必要的记录。
  • 确认条件语句中的运算符是否正确:在建立条件语句时,应该使用正确的运算符来比较字段。如等于运算符’=’,不等于运算符 '<>' 或 '!=',大于运算符’>’ 等。
  • 避免忘记添加条件:无条件的更新或删除数据库中的记录是一项危险的操作,在操作之前应特别小心,以避免意外删除或更新所有记录。

总之,正确鉴别条件的准确性需要熟悉数据库的操作方法和语法,并且需要谨慎对待,小心操作。在实际操作中,可以尽可能地减少手写 SQL 语句的使用,并使用工具或者框架来操作数据库,提高数据安全性和操作效率。

老师建议:可以同条件转换成select语句,先查出要处理的数据,看看是否是自己准备处理的数据。

(4)关系型数据库支持事务,我们后台调整数据后一定不要忘记什么操作,防止数据一直锁定影响其他操作?

答:在关系型数据库中,事务是确保数据一致性和可靠性的重要工具。当我们进行后台调整数据操作时,为防止数据一直锁定并影响其他操作,我们需要特别注意一些重要的操作,如下所示:

  • 开启事务:在操作数据库前,必须先开启一个事务,只有开启了事务后才能对数据进行修改,这样可以确保所有修改操作在同一个事务中完成,避免对数据产生不一致的影响。
  • 设定适当的事务隔离级别:事务隔离级别决定了事务之间数据的隔离程度。我们需要根据实际需求明确设置适当的事务隔离级别,以避免事务之间产生冲突,导致数据锁定。
  • 设定合理的事务超时时间:在开启事务时,需要设定合理的超时时间,一旦超过该时间,系统将回滚事务以避免对数据产生更多的影响。
  • 小心对待锁操作:在使用锁操作时,需要特别小心,防止数据长时间被锁定,影响其他操作。特别是在修改、删除操作时,一定要正确地设定锁定范围。
  • 确认事务提交或回滚:操作完成后,需要确认是否将事务提交或回滚。回滚可以避免操作产生的错误对数据产生不良影响,而提交则确认操作已经成功完成,确保数据的一致性和可靠性。

综上所述,我们需要注意对事务的开启、事务隔离级别、事务超时时间、锁定操作以及事务提交或回滚等操作,避免数据长时间被锁定影响其他操作。这样才能确保数据库的数据一致性和可靠性。

(5)为了查询高效我们通常为查询创建对应索引,创建索引需要按照什么样的原则?

答:创建索引是提高查询效率的一种常用方法,在创建索引时需要遵循以下几个原则:

  • 选择合适的索引类型:常用的索引类型包括B-Tree索引、哈希索引、全文索引等,不同类型的索引适合不同类型的查询,需要根据具体的查询特点选择合适的索引类型。
  • 选择需要建立索引的列:应该选择常被查询且能缩小数据检索范围的列作为索引列。如果索引列过多可能会导致索引失效,因此应该选择最有可能筛选记录的列进行索引。
  • 避免过多的索引:应该避免为每个列都建立索引,过多的索引可能会导致索引失效、增加查询时间和减慢数据插入、更新的速度。因此,应该仅为最常用于检索的列建立索引。
  • 按顺序创建复合索引:对于多个列组合的复合索引,应该按照查询时最可能的顺序创建索引,以提高查询效率。
  • 避免冗余索引:应该避免建立冗余索引,因为会增加数据库的磁盘空间占用和索引维护的开销。
  • 定期维护索引:随着数据的不断插入和删除,索引可能会不再有效,需要定期检查和维护索引,例如重新组织索引、优化查询语句等。

总之,在创建索引时,需要选择合适的索引类型和索引列,并避免过多和冗余的索引。定期维护索引也是重要的。除此之外,索引的选择还应该根据不同数据库管理系统的特点和实际情况进行优化,以达到最佳的查询优化效果。

17.

6)select s.class as "班级"

,count(s.sno) as "总数量"

,sum(case when s.sex='男' then 1 else 0 end) as "男生数量"

,sum(case when s.sex='女' then 1 else 0 end) as "女生数量"

from tb_student s

group by s.class;

8)select s2.term,s1.class,s2.sno

,sum(s2.score)as "总分"

,row_number()over(partition by s1.class order by sum(s2.score)) as "班级排名"

,row_number()over(order by sum(s2.score)) as "学校排名"

from tb_score s2

left join tb_student s1 on s1.sno=s2.sno

where s2.term='2023'

group by s2.term,s1.class,s2.sno;

10)update tb_student s set s.class='1'

where s.sno in(

select t.sno from (

select s2.sno

,sum(s2.score)as "总分"

,row_number()over(order by sum(s2.score)) as rn

from tb_score s2

left join tb_student s1 on s1.sno=s2.sno

where s2.term='2023' and s1.class='2'

group by s2.sno

order by sum(s2.score) desc

)t where rownum<=3

);

commit;

 

 

  • 15
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值