目录

项目场景

问题描述

解决方案:

前提一:让我们每一个记录都有一个专门的rank值

前提二:编写云函数

题外话


项目场景

有时候我们需要导出数据库里面的数据,并且将它们导成xlsx的文件,数据库里面的数据是按照录入时间来排列的,类似栈的概念,先提交的数据就会在栈底,而后提交的数据就会在栈顶。我们不能人为的去给它设置一定的排列顺序,那么我们该怎么做呢?一键导出excel的相关步骤之前有说过,链接在下方,现在让我们专注于如何让这个excel表格有规律的排列。小程序一键导出数据库中excel表格出现延迟的解决方案以及文件拼接时间戳的方法_hiddenSharp429的博客-CSDN博客


问题描述

在不能在云开发的数据库中改变记录的前提条件下,导出的数据我想让它按照这样的形式来排列。排列的第一要素是时间,次要素是时间段。我们应该如何来实现这样的功能呢


解决方案:

先在云函数中运用orderBy将数据排列好再将其导出!!

注意 要用number属性来排列。

前提一:让我们每一个记录都有一个专门的rank值

如这里12-09 10:00的记录,它的rank值就是12091000(注意上传到数据库里的时候不要传成string属性了,要number属性。可以在add到数据库里时用类型转换来将string变成number)

前提二:编写云函数

//这个函数是用来获取预约集合里面的数据的,并没有存储到excel里
// 云函数入口文件
const cloud = require('wx-server-sdk')cloud.init({env:'你的环境id'
})// 云函数入口函数
exports.main = async (event, context) => {return await cloud.database().collection('appointment').where({state:1,}).orderBy('rank','asc').get()
}

用rank值来排序,排序方式(asc)是升序。

const cloud = require('wx-server-sdk')
cloud.init({env: "你的环境id"
})
//操作excel用的类库
const xlsx = require('node-xlsx');// 云函数入口函数
exports.main = async(event, context) => {try {let {userdata} = event//1,定义excel表格名let dataCVS = '预约.xlsx'//2,定义存储数据的let alldata = [];let row = ['日期','时间段', '组织', '预约老师','预约事项','预约人','手机号']; //表属性alldata.push(row);for (let key in userdata) {let arr = [];arr.push(userdata[key].day);arr.push(userdata[key].hour);arr.push(userdata[key].g1_orderInstitute);arr.push(userdata[key].g1_orderTeacher);arr.push(userdata[key].content);arr.push(userdata[key].subscriber);arr.push(userdata[key].subscriberPhone);alldata.push(arr)}//3,把数据保存到excel里var buffer = await xlsx.build([{name: "mySheetName",data: alldata}]);//4,把excel文件保存到云存储里return await cloud.uploadFile({cloudPath: dataCVS,fileContent: buffer, //excel二进制文件})} catch (e) {console.error(e)return e}
}

题外话

主要的思想就是这些,如果有疑问欢迎大家留言讨论,你如果觉得这篇文章对你有帮助可以给我一个免费的赞吗?我们之间的交流是我最大的动力!

小程序按一定顺序导出excel表格相关推荐

  1. 微信小程序/H5(UniApp)导入/导出excel文件

    微信小程序/H5本地读写excel 准备工作 JS库 本地导入并读取Excel(*.xls, *.xlsx) Excel文件示例 选取文件并获得binary数据 Binary数据转json 本地构建并 ...

  2. vue导出excel表格vue-json-excel(最新超容易详细教程)

    最近写一个报名的小程序后台,需要导出页面表格为excel,实现这个功能所以记录一下: 目前大多数采取的都是 xlsx ,我这里使用的是vue-json-excel,相对来说更容易上手实现效果. 安装依 ...

  3. 基于云开发模式的评分小程序总结!二维码、导出excel表格等实用干货!

    基于云开发的打分小程序开发总结 1.TAKE打分小程序 1.1.项目简介 1.1.1.开发背景 1.1.2.项目介绍 1.2.项目效果图 1.2.1.主页 1.2.2.评分流程页 1.2.3.项目详情 ...

  4. java实现这个无表头空表格,《java程序导出excel表格是空白的没有数据?》 java怎么导入数据库...

    java程序导出excel表格是空白的没有数据? 看一下是否可以链接上数据库,或者查看一下链接的数据库是否有数据 java从数据库中导出excel poi 建议你使用pageoffice. java ...

  5. 简单的 Java 导出 Excel 表格 小例子《一抹茶CSDN》

    Java 导出 Excel 为什么要有导出Excel表格的功能呢? 因为我们在使用软件时会有,一些数据需要导出来,进行留存,大多数人使用的都是office的办公软件,就会使用常用的Excel表格.因此 ...

  6. POI导出Excel表格,去掉数字框的左上角绿色的小三角

    在用POI导出Excel表格,数字框的左上角有个绿色的小三角,看着很不舒服,如下图所示: 目的:当单元格为数字时,不要转为文本输出,就直接按数字格式输出,去掉左上角的绿色小三角形. 解决办法:在网上找 ...

  7. vue合并表格excel导出_Vue实现导出excel表格功能

    引言: 最近使用vue在做一个后台系统,技术栈 vue + iView ,在页面中生成表格后, iView可以实现表格的导出,不过只能导出csv格式的,并不适合项目需求. 如果想要导出Excel 在s ...

  8. 表格导出计算机,电脑怎么导出excel表格数据-如何将百度指数数据导出到Excel表格...

    系统没有导出功能,电脑表格里的数据有什么方法拿... 将网页表格数据导入到Excel中的方法: 第一步,将包括所需表格的网页打开,并按CTRL C把网址复制到剪贴板,以备下一步使用. 第二步,打开运行 ...

  9. java导出excel_JAVA导出EXCEL表格

    hi~ 好久不见 小伙伴们,最近比较忙,没什么时间写,今天给大家分享的是JAVA如何导出EXCEL表格,因为最近有做这样一个功能,所以分享出来,如有不对之处,敬请指正. 在许多企业办公系统中,经常会有 ...

最新文章

  1. Google Test(GTest)使用方法和源码解析——Listener技术分析和应用
  2. java 跨年 周计算公式_如何跨年计算 两日期之间相隔的周数 with java8 time API
  3. linux之vim/vi快速复制多行内容的快捷键
  4. android view滑动到顶部并固定在顶部
  5. Django之项目搭建和配置总结(一)
  6. Salesforce宣布5.82亿美元收购文件编辑公司Quip
  7. mysql数据库空密码修改_修改mysql 数据库密码
  8. 四川南充计算机经贸学校,四川南充工贸学校计算机应用专业秋季计划
  9. 【认证课程】NP理论复习之IS-IS
  10. python入门:基础,列表、元组、字典及集合类型
  11. 如何查看80端口被占用
  12. 基于单片机的电子秤(数码管)系统设计(#0416)
  13. overriding managed version警告
  14. 大数据就业前景,分析的太到位了
  15. TypeScript进阶 之 重难点梳理
  16. CultureInfo 类中需要的【区域性名称】查询
  17. 【Python数据分析】房价数据分析实战(包含源码和数据)
  18. DICOM:dcm4che工具包如何压缩dcm文件探讨(续篇)
  19. 电镜三维重构中多构象的辨别方法
  20. maven库 导入不进来

热门文章

  1. matlab刷新网页,[求助]如何刷新数据
  2. iOS推送播放语音播报更新
  3. [个人笔记]千牛新版店铺升级概要
  4. 携创教育:自考大专文凭可以落户吗?拿证需要几年?
  5. 1. Flutter安装(Windows)
  6. 禁止table表格中td的长度随着文本的长度而变化
  7. 解决eclipse提示Unsupported major.minor version 51.0问题
  8. JAVA中Integer的缓存机制
  9. 阿里翻译API严重的翻译问题
  10. polkadot区块链浏览器