找回密码
 立即注册

QQ登录

只需一步,快速开始

请上传宽度大于 1200px,高度大于 164px 的封面图片
    调整图片尺寸与位置
    滚轮可以放大缩小图片尺寸,按住图片拖动可调整位置,多余的会自动被裁剪掉
取消
chenew(uid:151192)
up up up 职业资格认证:FCA-简道云 | FCA-业务分析理论 | FCA-FineBI | FCP-报表开发工程师
FDL接口开发——易快报系统接口数据落库
1. 概述   1.1 应用场景 为满足业务部门报表分析及数据备份需求,需将易快报系统API接口单据列表数据进行同步落库。 1.2 接口信息 本次任务需要用到获取授权接口,其次是获取单据列表接口,由于接口每次只可读取100条数据,且接口只返回单据总数量,故在获取单据列表数据时需要使用分页循环取数。 1.3 实现思路 考虑后期接口数据量大的情况,所以本次任务采用全量+增量的方式同步! 1.3.1 全量任务: 1)清空目标表:使用【SQL脚本】清空目标表数据。 2)获取Token参数:获取accessToken授权,将Token参数传递给获取单据列表接口。 3)获取总页数:由于接口只返回单据总数量,所以此步骤需要利用【数据转换】先通过API输入 获取单据总数:【API输入】取出单据总数量 计算总页数:【Spark SQL】根据总数量及分页条数计算出总页数 参数输出:【参数输出】将总页数作为参数传递给下一步骤。 4)分页循环取数:【循环容器】条件循环通过FDL内置函数${loopTimes},从1开始,循环一次递增1,当循环次数小于等于总页数时停止循环。 获取目标表数据:由于接口分页起始值从0开始,每次调用需要先获取目标表数据量(如:第一次:0,50;第二次50,100,第三次100,150),所以使用【参数赋值】来获取目标表数据。 获取接口数据并落库:将目标表数据作为分页查询起始值start,查询数据条数设置固定值50,表示每次获取50条数据 1.3.2 增量任务: 1)获取Token参数:获取accessToken授权,将Token参数传递给获取单据列表接口。 2)获取最新修改日期:接口中存在修改日期时间戳字段,通过时间戳的方式进行增量同步,所以获取目标表中最大的修改日期作为参数传给startDate。 3)取数落库:根据获取单据列表接口中查询字段orderBy及查询起始时间startDate获取满足条件的数据进行增量同步。 1.4 任务展示 全量任务: 增量任务: 2. 操作步骤 全量任务操作步骤如下:   2.1 清空目标表数据 使用SQL脚本清空目标表数据,如下图所示:   2.2 获取Token参数并设置为参数 2.2.1 获取accessToken 使用参数赋值节点,在节点信息中修改名称为「获取token」,选择数据源类型为「API」,将易快报接口 获取 accessToken url 和参数写入对应位置,:https://app.ekuaibao.com/api/openapi/v1/auth/getAccessToken,如下图所示: 点击「数据预览」即可看到获取的 accessToken,如下图所示: 2.2.2 将 accessToken 设置为参数   为了便于后续其他接口使用获取到的 token 值,因此将其设置为参数。 点击「输出参数」设置参数名为 accessToken,将 accessToken 设置为参数,如下图所示:   2.3 获取总页数 接口返回单据总数,需计算总页数,使用【数据转换】:API输入、JSON解析、Spark SQL、参数输出组件取得总页数。 API输入 JSON解析 Spark SQL:数据总数/分页查询数据条数,转为整数并加1(可以增加一个判断,不等于整数再加1) 参数输出 2.4 循环容器 2.4.1 获取目标表数据并生成参数 将目标表数据设置为参数   2.4.2 获取单据列表数据并落库 JSON解析   DB表输出数据落库   2.5 效果查看        
【FDL 体验报告】接口同步,省时省力!
1、本次体验点 1.1 对接的数据库及业务系统 对接业务系统:SASS客服系统 数据库类型:Oracle 目标数据库:数仓的Oracle数据库 1.2 体验功能点:参数赋值、循环容器、Spark SQL、RestAPI输入、JSON解析 应用需求:客服平台无法进行个性化数据分析,故需将数据同步本地,用以支撑后续决策分析! 解决方案: 取接口返回值总页数作为参数传递给循环容器 循环容器通过条件循环设置循环结束执行条件:循环次数小于等于总页数时结束循环 1.2.1 参数赋值 解决场景:因接口规则限制,每次调用需传签名参数,通过【参数赋值】将加密参数传入API地址中。 体验成果:可灵活多变的配置接口所需参数 接口中需用到时间戳及字符串唯一标识,通过参数赋值sql查询可以直接生成参数 接口需通过循环分页取数,请求参数中必须要有当前页码参数,每次循环当前页码递增1,通过循环容器内置参数“${loopTimes}:容器内当前循环次数,初次为 1 ,后续每次循环递增加 1”可满足循环分页取数需求。 1.2.2 循环容器 解决场景:接口循环分页取数 体验成果:条件循环设置循环结束条件:循环次数小于等于总页数时结束循环 1.2.3 RestAPI 解决场景:取客服平台数据,由于数据源为sass系统,所以需要通过API接口方式取数 体验成果:配置简单便捷方便,输入API地址,数据预览快捷查看接口请求结果。 1.2.4 JSON解析 解决场景:接口返回数据为JSON格式,需要进行数据处理,通过JSON解析算子直接勾选所需字段 体验成果:JSON解析算子快速配置所需字段,支持多层级解析 1.2.5 Spark SQL 解决场景:1.接口签名加密处理  2.数据处理:过滤无效数据、字段选择、以及字段格式转换等 体验成果:Spark SQL算子功能丰富实用,通过获取上游数据,对数据进行加工处理,满足多样化数据处理场景 接口加密处理 数据过滤处理 1.3 功能建议: 希望Spark SQL输出结果可以直接作为参数转递给RestAPI输入算子! 数据转换中的返回按钮太隐秘了,不太好找,希望可以在确定按钮旁边加一个取消按钮! 2、总结      通过这段时间的体验,FDL可满足当前常用的ETL应用场景,FDL的帮助文档对于数据开发的组件介绍的非常详细,在ETL任务开发的过程中,也遇到了很多的问题,首先是翻看帮助文档,多翻看几次大部分问题都可迎刃而解,对于个别特殊问题技术支持也会给与一对一耐心指导,希望后续多出一些具体应用场景的解决方案!  
FCRP认证
2018年初入职场到现在,三家公司使用的都是帆软产品,在此过程中对帆软产品有了深刻理解,一次的偶然在论坛里看到FCRP认证,为了巩固自己的的学习效果,证明自己产品的使用能力,于是有了认证的念头。 在认证考试之前,我是先领取了模拟考试试卷,对试题考点类型有了初步的了解,边学边做,模拟考试完成后让我对FCRP有了更加强烈的挑战欲。 考试时间两天,在此过程中,反复的查看帮助文档,视频,功夫不负有心人,在最后时刻完成了所有试题。 在这次的考试过程中,我感觉自己就像是一个沙漠,源源不断的被水(帮助文档)浇灌,学到了很多知识,感谢帆软~  
帆软有没有相关接口同步用户
帆软有没有相关接口同步用户
个人成就
内容被浏览45,228
加入社区4年250天

联系社区管理员|联系帆软|《帆软社区协议》|手机版|帆软社区|Copyright © 帆软软件有限公司 ( 苏ICP备18065767号-7 )

GMT+8, 2023-2-2 10:23 , Processed in 0.307450 second(s), 51 queries , Gzip On.

返回顶部