日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何用极致业务基础平台做一个通用企业ERP系列之二一览表培训

發(fā)布時(shí)間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何用极致业务基础平台做一个通用企业ERP系列之二一览表培训 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

接著上一篇博客,我們進(jìn)行往來單位一覽表設(shè)計(jì)如下:

可以看到我們?cè)O(shè)計(jì)的時(shí)候,將客戶和供應(yīng)商用兩個(gè)字段來解決,這樣基本可以解決那些往來單位有可能即是供應(yīng)商又是客戶的情況。當(dāng)然因?yàn)檫@里不是主要做客戶關(guān)系管理系統(tǒng),所以可以這樣設(shè)計(jì)問題也不大,但如果要單獨(dú)還要增加客戶關(guān)系管理系統(tǒng)的話,我們建議是分開兩個(gè)表來設(shè)計(jì)。這里主要圍繞的是進(jìn)銷存來設(shè)計(jì),所以我們把往來單位做到一個(gè)表里面。

這樣就有以下幾個(gè)核心點(diǎn)我們要去解決:

1比如到時(shí)候系統(tǒng)分配權(quán)限的時(shí)候,采購進(jìn)下面的往來單位一覽表只能看到往來單位是供應(yīng)商的,銷售進(jìn)來只能看到往來單位是客戶的。

2為了安全保密設(shè)置,有些人又不能讓他看到往來單位詳細(xì)聯(lián)系人信息(我們聯(lián)系人存儲(chǔ)在子表,防止不相關(guān)的人看到信息私下又去聯(lián)系)。

3出于常理自己錄入的往來單位信息,希望只有自己看到,別人要特別權(quán)限才能看到,而且如果自己是主管還能看到自己下屬錄入的客戶或者供應(yīng)商。

4.采購進(jìn)來默認(rèn)是否客戶界面控件為不可編輯,銷售進(jìn)來是否供應(yīng)商控件不可編輯。

5.不同組織人進(jìn)來只能看到他們自己組織內(nèi)的往來單位.

具體實(shí)現(xiàn)過程:

1首先利用我們平臺(tái)的權(quán)限分配系統(tǒng),創(chuàng)建相應(yīng)的權(quán)限界面,如下所示即可。

2.對(duì)于第5點(diǎn),利用組織機(jī)構(gòu)數(shù)據(jù)授權(quán)即可解決。

3.其他代碼解決。代碼如下:

/// <summary>/// 往來單位一覽表/// </summary>class RefUnitList : Jeez.Runtime.Base.General.frmList{public override void RefreshList(){//設(shè)置一覽表的數(shù)據(jù)源base.ReportListData = new RefUnitListData();base.ReportListData.objContext = this.objContext;base.ReportListData.FormPropertyPage = this.FormPropertyPage;base.RefreshFilterGridData();}}/// <summary>/// 構(gòu)建一覽表的數(shù)據(jù)源/// </summary>public class RefUnitListData : Jeez.Runtime.Data.ReportList{public RefUnitListData(): base(){}//獲取SQL on部分protected override void AddFromSqlBeforeONPart(StringBuilder sb, System.Collections.ArrayList aryTable, string tableName, string tableNameAs){base.AddFromSqlBeforeONPart(sb, aryTable, tableName, tableNameAs);}//獲取SQL where部分public override string GetRptListSQLWhere(){string strwhere = base.GetRptListSQLWhere();//獲取框架點(diǎn)擊過濾的時(shí)候設(shè)置的過濾條件//我們可以利用構(gòu)建數(shù)據(jù)源的where部分來實(shí)現(xiàn)打開往來單位一覽表的數(shù)據(jù)源的數(shù)據(jù)隔離string filter = BaseFunc.GetEmpFilter(objContext);//獲取當(dāng)前用戶的自己職員ID,以及他下屬的職員ID,職員表我們有個(gè)上級(jí)主管字段來決定員工上下級(jí)關(guān)系if (strwhere == ""){//如果點(diǎn)擊過濾沒有設(shè)置過濾條件,我們就添加自己的過濾條件,這里就可以直接where ,//如果點(diǎn)擊過濾沒有設(shè)置過濾條件,我們就添加自己的過濾條件,這里就可以直接where ,if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeAll")){ //如果沒有看所有往來單位的權(quán)限的話,就只能查看業(yè)務(wù)員自己以及業(yè)務(wù)員下屬錄入進(jìn)來的往來單位數(shù)據(jù)strwhere += string.Format(" where jzRefUnit.EmployeeID in {0}", filter);if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeBoth")){//如果沒有查看兩者的權(quán)限if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Customer")){//如果只有看客戶的權(quán)限strwhere += string.Format(" and jzRefUnit.IsCustomer=1");}if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Supply")){//如果有查看供應(yīng)商權(quán)限 strwhere += string.Format(" and jzRefUnit.IsSupply=1");}}}else{if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeBoth")){//如果沒有查看兩者的權(quán)限if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Customer")){//如果只有看客戶的權(quán)限strwhere += string.Format(" where jzRefUnit.IsCustomer=1");}if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Supply")){//如果有查看供應(yīng)商權(quán)限 strwhere += string.Format(" where jzRefUnit.IsSupply=1");}}}}else{//如果點(diǎn)擊過濾沒有設(shè)置過濾條件,我們就添加自己的過濾條件,這里就可以直接where ,if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeAll")){ //如果沒有看所有往來單位的權(quán)限的話,就只能查看業(yè)務(wù)員自己以及業(yè)務(wù)員下屬錄入進(jìn)來的往來單位數(shù)據(jù)strwhere += string.Format(" and jzRefUnit.EmployeeID in {0}", filter);if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeBoth")){ //如果沒有查看兩者的權(quán)限if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Customer")){//如果只有看客戶的權(quán)限strwhere += string.Format(" and jzRefUnit.IsCustomer=1");}if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Supply")){//如果有查看供應(yīng)商權(quán)限 strwhere += string.Format(" and jzRefUnit.IsSupply=1");}}}else{if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeBoth")){//如果沒有查看兩者的權(quán)限if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Customer")){//如果只有看客戶的權(quán)限strwhere += string.Format(" and jzRefUnit.IsCustomer=1");}if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Supply")){//如果有查看供應(yīng)商權(quán)限 strwhere += string.Format(" and jzRefUnit.IsSupply=1");}}}}return strwhere;}//獲取SQL order by部分public override string GetRptListSqlOrderBy(ref string strSQLGroupBy){return base.GetRptListSqlOrderBy(ref strSQLGroupBy);}}/// <summary>/// 往來單位新增界面/// </summary>class RefUnit : Jeez.Runtime.Base.General.BillUI{Jeez.Control.JeezUltraCheckBox.JeezUltraCheckBox ckIsCustomer;Jeez.Control.JeezUltraCheckBox.JeezUltraCheckBox ckIsSupplyer;public override bool LoadUI(){bool b = base.LoadUI();if (b){ckIsCustomer = base.GetControlByName("JeezCheckBox1") as Jeez.Control.JeezUltraCheckBox.JeezUltraCheckBox;ckIsSupplyer = base.GetControlByName("JeezCheckBox2") as Jeez.Control.JeezUltraCheckBox.JeezUltraCheckBox;}return b;}protected override void BillUI_Load(object sender, EventArgs e){base.BillUI_Load(sender, e);InitByDefine();}/// <summary>/// 根據(jù)角色設(shè)置價(jià)格單元格的可見隱藏/// </summary>void InitByDefine(){if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeChild")){//如果沒有看子表數(shù)據(jù)的權(quán)限,子表grid數(shù)據(jù)就隱藏起來this.CurrentGrid.Visible = false; }if (!Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_SeeBoth")){//如果沒有看子表數(shù)據(jù)的權(quán)限,子表grid數(shù)據(jù)就隱藏起來ckIsCustomer.Enabled = false;ckIsSupplyer.Enabled = false;if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Customer")){//如果只有看客戶的權(quán)限 ckIsCustomer.Checked = true;}if (Jeez.Common.UI.AccessControl.CheckACLWithNoMsg("SCM_WLDW_Supply")){//如果有查看供應(yīng)商權(quán)限 ckIsSupplyer.Checked = true;}}else{ckIsCustomer.Enabled = true;ckIsSupplyer.Enabled = true;}}protected override void LoadEntityDataToControl(){base.LoadEntityDataToControl();InitByDefine();}} View Code

?

?總結(jié):一覽表開發(fā)主要了解一覽表數(shù)據(jù)源的構(gòu)建部分,比如我們代碼部分構(gòu)建where部分,當(dāng)然我們也可以設(shè)置一覽表數(shù)據(jù)源的排序部分。

?

極致平臺(tái)開發(fā)十大特點(diǎn):

1. 一個(gè)數(shù)據(jù)庫下可以同時(shí)進(jìn)行N套業(yè)務(wù)系統(tǒng)開發(fā),開發(fā)出來的產(chǎn)品可以根據(jù)您客戶的需要按模塊界面組發(fā)布,客戶想要啥模塊就可以給啥模塊。而且一個(gè)數(shù)據(jù)庫下開發(fā)所有功能,當(dāng)客戶需要從你的人力資源增加客戶關(guān)系管理模塊的時(shí)候,你只要做個(gè)升級(jí)包就可以了。解決企業(yè)多個(gè)業(yè)務(wù)系統(tǒng)信息孤島問題。
2. 智能升級(jí)功能,當(dāng)客戶從A模塊增加B模塊的時(shí)候,您只需要做一個(gè)升級(jí)包即可,給客戶升級(jí)后,客戶原來錄入的數(shù)據(jù)不會(huì)有影響,而且所有客戶端都是智能感應(yīng)智能升級(jí),大大節(jié)省您的部署成本。
3. 工作流套打報(bào)表均可以運(yùn)行時(shí)候自定義,比如費(fèi)用報(bào)銷單,您100家客戶就有一百種費(fèi)用報(bào)銷的流程,套打的格式,用我們平臺(tái)您只需要設(shè)計(jì)好這個(gè)費(fèi)用報(bào)銷單,至于哪個(gè)客戶走什么流程,完全可以讓客戶自己去定義,而不需要像傳統(tǒng)開發(fā)那樣,提前在開發(fā)中設(shè)置好,100個(gè)客戶就維護(hù)100套代碼。套打也是如此。
4. 支持?jǐn)?shù)據(jù)授權(quán),當(dāng)您開發(fā)多組織架構(gòu)的系統(tǒng)的時(shí)候,我們只要業(yè)務(wù)單據(jù)引用組織機(jī)構(gòu)即可,然后組織機(jī)構(gòu)支持?jǐn)?shù)據(jù)授權(quán),這樣就可以不需要編寫任何一行代碼就可以做到,組織與組織之間數(shù)據(jù)彼此隔離,我想給哪個(gè)用戶看哪個(gè)組織的數(shù)據(jù)只要給這個(gè)用戶這個(gè)組織的數(shù)據(jù)權(quán)限即可。
5. 支持字段授權(quán),對(duì)于一些表的核心字段對(duì)用戶進(jìn)行屏蔽直接利用我們平臺(tái)的字段授權(quán)功能即可,比如職員薪酬字段進(jìn)行字段授權(quán),讓有的用戶在看職員信息的時(shí)候,自動(dòng)隱藏薪酬的數(shù)據(jù)。這也是無需編寫任何一行代碼。
6. 單據(jù)界面自動(dòng)生成,我們開發(fā)的時(shí)候只要設(shè)計(jì)好實(shí)體,也就是傳統(tǒng)開發(fā)所說的表結(jié)構(gòu)即可,還可以設(shè)置哪些字段是必錄,可見,不允許重復(fù),在界面生成的時(shí)候,會(huì)自動(dòng)生成一個(gè)界面,而且這個(gè)界面的增刪改查是無需寫一行代碼的,您只要對(duì)您特有業(yè)務(wù)邏輯編碼即可,相對(duì)傳統(tǒng)開發(fā),你代碼量可以節(jié)省2/3,開發(fā)周期縮短2/3
7.一次開發(fā)同時(shí)具有單機(jī)局域互聯(lián)網(wǎng)三個(gè)版本,客戶想要單機(jī)就給單機(jī)想要互聯(lián)網(wǎng)版就給互聯(lián)網(wǎng)版。?

8.強(qiáng)大的公式引擎,讓您可以靈活設(shè)計(jì)計(jì)算類的項(xiàng)目,比如工資,預(yù)算。

9.包含強(qiáng)大的各種控件,比如文本控件支持F8調(diào)用,編碼名稱自動(dòng)帶出。Grid控件支持表頭過濾,單元格融合,固定列,表格列,表格行各種公式匯總,復(fù)合表頭,表格寬度可以自己隨意調(diào)整,而且關(guān)閉后會(huì)自動(dòng)記錄之前的寬度。還支持表格列隨意調(diào)整順序。

10.平臺(tái)內(nèi)置很多基礎(chǔ)功能,比如權(quán)限管理,用戶角色管理,還有實(shí)施的一些導(dǎo)入導(dǎo)出工具都能幫助客戶大大提高一個(gè)項(xiàng)目驗(yàn)收進(jìn)度。

?

官網(wǎng):www.jeez.com.cn
平臺(tái)介紹:www.jeez.com.cn/jbf??
平臺(tái)下載地址:http://www.jeez.com.cn/upfiles/jbfsetuppro.rar

(下載即可有3個(gè)月免費(fèi)試用)
聯(lián)系電話:13826519021 18988763421 QQ:180315586? 420977542?(加我注明極致軟件即可)

平臺(tái)銷售經(jīng)理:李先生?

將互聯(lián)網(wǎng)時(shí)代的管理軟件做到極致!
==================================================================

?

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/Jeez_JBF/p/ERP2.html

與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的如何用极致业务基础平台做一个通用企业ERP系列之二一览表培训的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久久一区 | 欧美变态绿帽cuckold | 欧美日韩高清不卡 | 欧美成人三级精品 | 国产一区二区久久精品 | 日韩电影在线一区 | 成人夜晚视频 | 人妻少妇精品视频一区二区三区 | 国产精品美女久久久久 | 性久久久 | 日本天堂在线观看 | 亚洲av高清一区二区三区 | 亚洲专区区免费 | 精品不卡一区二区 | 打美女屁股网站 | 99蜜桃臀久久久欧美精品网站 | 成人私密视频 | 日日摸夜夜添狠狠添欧美 | 国产亚洲精品码 | 国产一区在线观看视频 | eeuss一区二区三区 | 国产乱了高清露脸对白 | 日本在线网站 | 国产自产一区二区 | 久久有精品 | 午夜美女视频 | 国产乱子伦精品视频 | 91在线观看视频 | 视频网站在线观看18 | 国产这里有精品 | 有机z中国电影免费观看 | 欧美精品免费一区二区 | 色老板最新地址 | 最新中文av| 美攻壮受大胸奶汁(高h) | 亚洲成人黄色在线 | 99视频 | 91久久精品美女高潮 | 在线麻豆 | 国产乱色精品成人免费视频 | 一区二区三区在线播放视频 | 天堂资源在线 | 国产免费叼嘿网站免费 | 青青青青青操 | 久久久久国色av免费观看性色 | 久久国产a | 欧美激情视频网址 | 国产精品视频免费播放 | 久久爱成人 | 日本一本高清 | 日批视频在线播放 | 国产做爰高潮呻吟视频 | www.婷婷| 色网在线 | 日本xxxxxxxxx18 | 国产一区二区三区四 | 国产精品无码电影在线观看 | 在线欧美一区二区 | brazzers猛女系列 | 成人快手免费看片 | 国产黄色片视频 | 日韩爱爱网 | 激情五月激情 | 日韩精品一区二区三区无码专区 | 午夜精品在线播放 | 国产欧美日韩综合精品 | 僵尸叔叔在线观看国语高清免费观看 | 欧美日韩第一区 | 欧美黑粗硬 | 美女草逼视频 | 三级视频网址 | 成人免费一区二区 | 我爱我色成人网 | 92国产精品 | 国产一级片网址 | 日本黄网站色大片免费观看 | 窝窝午夜精品一区二区 | 一二三四av | 亲切的金子餐桌片段的金子 | 干操网| 日本亚洲色大成网站www久久 | 一级女人毛片 | 国产精品久久久久久白浆 | 国产成人综合久久 | 亚洲日本视频在线观看 | 中国精品久久 | 丁香综合网 | 黑人性视频 | 国产影音先锋 | 三级视频网站 | 久久久久97 | 孕妇爱爱视频 | 星空大象mv高清在线观看免费 | 精品久久久久久久免费人妻 | 99色综合 | 欧美另类tv | 草草影院欧美 | 亚洲图片在线播放 | 国产在线a |