用VFP,不局限VFP,用VFP混合一切。讨论前端,后端,DBF,MSSQL,MYSQL,微信开发都有。这才是一个干事的社群嘛。
我是在网上下载了一个较好的EXTS框架,JAVA+EXTJS,大家有空可以利用猫老师培训知识改造为VFP+EXTJS通用框架。
公有云的 Host vSwitch 由于涉及的业务场景复杂(几乎所有的业务场景都跟 vSwitch 有关,例如:VPC、Nat、EIP、LB、NFV、容器场景等等),配置变更频繁,性能要求极高。同时由于国内公有云业务极其内卷,Iaas 服务基本上就是比拼价格,事实上已经沦为卖铁。VM 超卖严重,分配给 Host 用于网络处理的 CPU 与内存资源极其有限。
作者:陈冰冰 客户使用U8系统,整 个生产过程是围绕一张生产流转卡进行的,相关的成品入库,成品调拨等环节,用VFP开发程序扫码流转卡进行(需要电脑),但不方便移动,现客户计划用PDA来扫码,通过与加菲猫的沟通,用祺佑三层开发框架(猫框),将原VFP对U8的单据操作功能(增、删、审核、弃审),做成WEBAPI,给PDA来调用,完美实现转换,这种情况,PDA只需做好界面和调用,相关的功能部分全部由WEBAPI来完成。
在我描述 Thor 中最大的秘密之前,我想先问一下,你所使用的 VFP 是完整的安装版吗?
当我们重新审视前面的内容时,获得的不仅仅是一个主程序、一个应用程序对象类和一个 Config.fpw文件。获得的应该是对象化的思维模式。虽然,对象化并不一定是银弹,但是,在我们构建自己的应用时,从对象化的角度来考虑问题,通常可以获得一个在大多数情况下可以通用的“模型”,在开发应用程序时,这个“模型”可以让我们节约更多的时间,以便于专注于业务逻辑。
2018年,我在某软件公司任职时,负责搭建一个新的开发框架。在原有的系统中,所有的报表打印都是使用 80 引擎,鉴于 90 引擎的优异特性,以及考虑到今后可能的报表需求,我在其中引入了 90 引擎。但是,结果是我又屏蔽掉了 90 引擎的使用。
但是在我这里,VFP并没有大发异彩,甚至有点没落。因为我很快淹没在了这个各种语言层出不穷的年代。新的语言,新的程序开发方式,让我已经眼花缭乱。和大多数人一样渐渐疏远了VFP,开始去学习C#,甚至追风python之流。
VFP 9 的重点之一,是增强报表系统。新的和增强的功能的列表相当庞大:多细节带区、在报表设计器中对对象的保护、设计时事件、为对象绝对定位的能力、更多的缩放级别、更好的菜单、以及大量其它内容。这一章详细的探索了这些增强,演示了某些你在过去版本的 VFP 中无法实现的报表,并为后面的两章“扩展报表系统”做铺垫。
Email: kevin@kevinragsdale.nethttp://kevinragsdale.net
先来一波儿回忆杀。经典的 VFP 设计方式:新建表单—数据环境—添加表到数据环境—拖动表或字段到表单……
大家好,我是绿茶,多年前曾用VFP写了点非常简单的小程序,一直是单位或自己为提高效率所做的权宜之计,简陋至极。但自从出现了B/S架构,一度和许多人一样,几乎要放弃VFP了,直到遇到了加菲猫老师和他的祺佑框架。
首先大家要学会安装MSSQL数据库,这里面网上有相应的教程,写得非常细。 再次要学会建库建表。 MSSQL提供了一个Microsoft SQLServer Management studio,在这里建库建表就可以了。
在正式开始之前,需要有一个很乏味的前置知识的解释。当然,有 VFP 帮助里的内容,也有我自己的体会认知。
1、 TABLES:为确保自动更新后台数据能正确完成,必须按严格的格式为TABLES中的表名提供一个表名列表,这个顺序与表在SQL的INSERT,UPDATE和DELETE中出现的顺序应一致。
我们先从ASP的FileSystemObject对象来讲,其实FileSystemObject对象是个com,也就是几乎所有的语言都是可以调用的。
本人属于业余中业余VFP爱好者,也是第一次写这种分享,文字功底能力有限,大家!见好见好了!
因为VFP出来时还没有.NET,所以VFP不支持.NET,C#编写出来的DLL控件需要转换成系统COM组件,才能够被VFP调用,当然不仅仅局限于C#与VFP之间的调用,各种语言都有自己写COM组件的方法。
众所周知IIS的性能令人诟病,早期VFP开发WEB也没更好的方案,采用了CGI的方式运行于IIS内,好处是每次WEB调用,VFP程序运行后就结束,不存在内存泄漏,变量冲突等,也不会引起宿主IIS崩溃,但坏处就是频繁的启动进程,性能不理想。但FastCGI程序不同,执行完请求后,不会立即结束,而是留在内存等待下一次请求,减少了大量进程初始化的过程,性能就大大提高,缺点就是VFP开发人员要注意,大量的全局变量,不规范的变量使用等,会“污染”下一次请求。
我在工作是见到过python、jave、php实现发送消息至钉钉群,觉得蛮好用的,一次消息通知多少人。搜了一圈没有发现我们VFP是怎么打通调用,那我们vfp程序能不能实现这样的功能呢?答案是肯定的,
前几日在群里,有小白在提问为什么程序在SQL管理器里面执行成功,在VFP里面执行不成功。
同时这个组件也提供了录制功能,可以录制相应的操作,根据录制的结果,我们转为VFP代码即可。
不止一位狐友问我,想在表格里面显示图片,于是我想了想,满足狐友们的期望,升级了一个框架控件,再来个超容易的教程。
自从教了中间层对接大法,搞定了所有的语言的对接,但很多朋友们就遇到了字节数组这个东西,科科最近也遇到了,他也顺利解决了。
Visual FoxPro 动态连接库(FLL)实际上是包含对 VFP API 调用的DLL。可以使用C或者C++编写,目前MS VC系列开发工具,都是同时支持C和C++语法的,而FLL的接口只支持C语法,所以开发时接口部分需要遵循C约定,而具体实现代码则不分C或者C++,本文是写给希望使用VC开发VFP扩展库入门教程。
现在,你会发现,你需要在主程序中使用的 Set 命令是如此之少,而 Config.fpw 文件将会成为你的每一个项目的标准的配置文件。
CursorAdapter既可以对本地数据进行存取,又可以对远程的不同类型的数据源进行存取,不需要关心数据源,只要对 CursorAdapter的属性进行适当的设置就可以了,甚至可以在程序中动态的对这些属性进行改变,从而达到更快速开发程序的目的,这在以前的版本中简直不可想象,感谢VFP的开发者们为我们提供了CursorAdapter类。
如图设置树控件的属性值,displayfield=name,datafield=id
把pro_ext.h 和winapims.lib两个文件拷到main.cpp所在位置的lib下(方便把自己的代码跟库区分)
开发环境: 1.VFP SP2 7423 2.祺佑三层开发框架 学BS就要先学本质,不要被花式迷了眼,本来是学BS开发的,结果一直在CSS化妆术里面打圈。
社群的强哥最近在研究RFID,用winsock来接收RFID的数据,发现了百思不得奇解的问题,说为么VFP接到的数据怎么地就变化了,看看 EE就变成了3F了。
在 VFP 9 中新的报表引擎已经将责任拆分成了几块,报表引擎现在只负责数据处理和对象定位,一个新的对象 report listener 负责处理绘制和输出。由于 Report listener 是类,现在你可以以各种过去你只能梦想的方式来与报表输出过程进行交互。
象第五章“在报表系统中的增强”中讲的那样,VFP9提供了一个新的报表预览窗口。一个新的系统变量_REPORTPREVIEW指定了一个应用程序的名称,该应用程序将被用作一个“工厂”(“工厂”是一个“并不自己提供客户端对象需要的功能,而是会建立一个提供这些功能的新对象”的设计模式),用于生成报表预览窗口。默认情况下,该系统变量指向在VFP主目录下的ReportPreview.APP,但是你可以根据自己的需要将它替换成你自己的APP。这种可以使用一个VFP应用程序来作为报表预览窗口的能力,与以前的版本相比,提供了大量对报表预览的表现和行为的控制。
至此,我们已成功输出了静态文本内容,那么有没有办法像ASP一样,输出动态内容呢?当然是可以的。我们只需要对模板文件和VFP后端过程进行一下加工即可。 前端代码:
VFP,Javascript语言的执行环境是"单线程"。 所谓"单线程",就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。 这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他任务无法执行。 为了解决这个问题,Javascript语言将任务的执行模式分成两种:同步和异步。 "同步模式"就是上一段的模式,后一个任务等待前一个任务结束,然后再执行,程序的执行顺序与任务的排列顺序是一致的、同步的;"异步模式"则完全不同,每一个任务有一个或多个回调函数,前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则是不等前一个任务结束就执行,所以程序的执行顺序与任务的排列顺序是不一致的、异步的。 "异步模式"非常重要。在浏览器端,耗时很长的操作都应该异步执行,避免浏览器失去响应,最好的例子就是Ajax操作。在服务器端,"异步模式"甚至是唯一的模式,因为执行环境是单线程的,如果允许同步执行所有http请求,服务器性能会急剧下降,很快就会失去响应。
来源:内容由「网络交换FPGA」编译自「nsdi18」,谢谢。Azure是数据中心的行业标杆,其应用规模和技术都是非常值得借鉴的,文中总结了来自产业界宝贵的经验和教训,探讨为何FPGA是最适合数据中心架构的原因。故翻译此文。
关于框架,PHP有Laravel 框架,Python 有Django框架,JAVA有Spring框架,C#也有很多框架。
当我真的想完整的描述梦想中的对象化时,才发现无从下手。因为它涉及很多的 VFP 基本概念。我深知,N多的人其实并不具有这些基本概念的完整的基本认知。所以,当你阅读不下去的时候,你应该打开 VFP 的帮助文件,查阅并补课。还有很多人其实“不会”看帮助,那我真的无能无力了。
极简VFPBS入门公开课程已经进行了三场了,大家学习的气氛也是极好的,甚至让我尽快开物联网的课程。我现在整理一下昨天公开课的一些资料,大家努力珍惜在社群学习的机会,这些课程都是独家的,都是从本质中剖析BS开发的实质,以后即使换成其它语言,这些本质还是一样的。
Crystal Reports 是世界上被用的最多的报表工具。尽管 VFP 已经有了内建的报表编辑器,但许多 VFP 程序员还是使用 Crystal 的原因之一,就是因为它支持子报表。子报表就是运行在一个报表中的报表。子报表最常见的用途是为一个父表生成多个子表的报表。
如果我们的自定义类里需要调用另一个自定义类的时候,我们是否可以将它作为这个类中的一个控件将它插入呢?
社群近几日讨论得热热闹闹,从最新的做UI的方式到BS学习,到越来越来的朋友用上了框架去实现自己的软件,越来越棒。
在 VFP 9 中,数据分组有三个增强。 第一个增强,是当报表中有多个自左向右而不是自顶向下打印的字段时,VFP 把组标头放在哪里。图12展示了在以前版本中,报表引擎把组标头放在细节带区的行里;它(指组标头)占据了第一列,而细节带区的内容只好从第二列开始。第一列被保留给组标头带区,即使你把这个带区的高度设置为0也一样,而且这么做的话,第一列就会是空白的。另外,它的高度还是固定的——等于细节带区的高度——所以如果组标头带区的高度高于细节带区的高度,那么组标头对象还可能会掩盖住细节带区的第二行中的对象们。
这个代码就是这么少,快看看,代码是不是跟你平常想的不一样。框架不需要你去写任何的控件开闭,直接自响应浏览,新增,编辑,删除状态。
AzureRTOS 提供了针对不同处理器的接口文件,这些文件可以无需任何修改的情况下移植到目标系统。
互联网开端的时候流行的技术是Web1.0,也就是又当爹又当妈,前端与后端代码都混在一起,至今还有一个VFPer一上手就把ASP那套混合代码写在HTML中当做真理,可不知道现在HTML现在已经进化到小程序状态了。
我手头上的selenium 是2021-07-04年SeleniumBasic 3.141.0.0的。我们可以认为“Selenium”它最大的贡献就是在于把原来java、c#、python才能玩的东西,VFP同样能搞,因为它支持的浏览器非常多:Chrome、Firefox、Microsoft Edge、Internet Explorer、Opera、Safari、QQ和360等浏览。我们可以理解在VFP上可以控制这些浏览器,去为了我们网页任务工作。比2016年进步了太多。稳定性和操控性都变好了。selenium是基于webdriver协议
大家好,我是秦时明月。上次我记录了利用“猫框”实现BS系统登录界面,今天我们实验一下BS应用系统之用户管理模块,前提是先抛开CSS样式在网页中应用和软件操作权限控制,只聊实现这一功能的操作方式。
有了NODEJS庞大资源的支持,我们VFP可以碰撞出什么样的火花了,期待有懂C的高手加入一起淘金。
用VFP习惯了控件拖拉即用,篮茑和VFP一样也具备这种特点,所以很快就掌握了,在开发一些APP的时候,数据的增、查、删是通过附带的一个mssql中间件来完成的,但该中间件有一个bug,有时查询数据时会出错,困惑了很久。后来接触到猫框,前端用篮茑来画出界面,数据交互用中间层webapi来解决,完美解决了上述困惑已久的问题。
领取专属 10元无门槛券
手把手带您无忧上云