| | |
| | | // ----------------------------------------------------------------------------------------------------------- |
| | | MS.Date$Number$Defaults; |
| | | TGP.UpdateRowCells = function(r,CC,CCT){ |
| | | var p = CC.length, ogt = Grids.OnGetType!=null, C = this.Cols, D = r.Def, L = this.Lang.Format, gmt = L.GMT-0, dyf = this.DynamicFormat==2, exc = this.ExcelDates, hdr = r.Kind=="Header", hir = 0; MS.Hirji; hir = L.Hirji&2; ME.Hirji; |
| | | var p = CC.length, ogt = Grids.OnGetType!=null, C = this.Cols, D = r.Def, L = this.Lang.Format, UE = this.UpdateEnum ? {} : null, uecnt = 0; |
| | | var gmt = L.GMT-0, dyf = this.DynamicFormat==2, exc = this.ExcelDates, hdr = r.Kind=="Header", hir = 0; MS.Hirji; hir = L.Hirji&2; ME.Hirji; |
| | | if(r.CellDef){ var CD = this.Def[r.CellDef]; if(CD) for(var n in CD) if(n!="Name") for(var i=0,v=CD[n];i<p;i++) if(r[CC[i]+n]==null) r[CC[i]+n] = v; } |
| | | for(var i=0;i<p;i++){ |
| | | var c = CC[i]; |
| | |
| | | } |
| | | } |
| | | if(ogt) { var tmp = Grids.OnGetType(this,r,CC[i],type); if(tmp!=null) type = tmp; } |
| | | if(!CUpdateTypes[type]) continue; |
| | | if(!CUpdateTypes[type]) { |
| | | if(UE&&type=="Enum"&&r[c]!=null) { UE[c] = 1; uecnt++; } |
| | | continue; |
| | | } |
| | | var val = r[c], v; |
| | | |
| | | |
| | |
| | | r[c] = hir ? L.StringToDateHirji(val) : L.StringToDateEng(val,null,null,0); |
| | | } |
| | | } |
| | | else if(exc) r[c] = (r[c]+2209161600000)/86400000; |
| | | else if(exc) r[c] = L.ToExcelDate(r[c]); |
| | | } |
| | | } |
| | | else if(this.DateStrings==null) this.DateStrings = 0; |
| | |
| | | r[c+"IsSelect"] = 1; |
| | | if(r[c+"CanFocus"]==null && r.Space) r[c+"CanFocus"] = 0; |
| | | if(r[c+"Wrap"]==null) r[c+"Wrap"] = 0; |
| | | continue; |
| | | } |
| | | ME.Defaults; |
| | | } |
| | | |
| | | MS.Enum; |
| | | if(uecnt){ |
| | | function UpdateEnum(c){ |
| | | var rel = T.GetAttr(r,c,"Related"), rp = null; |
| | | if(rel){ |
| | | rel = rel.split(","); |
| | | for(var i=0;i<rel.length;i++) if(!UU[rel[i]]) UpdateEnum(rel[i]); |
| | | rp = T.GetRelatedPrefix(r,c); |
| | | } |
| | | var ek = T.GetEnum(r,c,"EnumKeys",rp); |
| | | if(ek||T.IndexEnum){ |
| | | var en = T.GetEnum(r,c,"Enum",rp), val = r[c]; |
| | | if(en){ |
| | | en = en.split(en.charAt(0)); if(val==null) val = ""; |
| | | for(var j=1;j<en.length;j++) if(val==en[j]){ |
| | | if(ek) { ek = ek.split(ek.charAt(0)); if(ek[j]!=null) r[c] = ek[j]; } |
| | | else r[c] = j-1; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | UU[c] = 1; |
| | | } |
| | | var UU = {}, T = this; |
| | | for(var c in UE) if(!UU[c]) UpdateEnum(c); |
| | | } |
| | | ME.Enum; |
| | | } |
| | | ME.Date$Number$Defaults; |
| | | // ----------------------------------------------------------------------------------------------------------- |
| | |
| | | else if(typeof(D)!="string") return; |
| | | D = this.Def[D]; |
| | | if(this.InitDef){ |
| | | if(!D) D = this.Def["R"]; |
| | | var dp = r.DefParent!=null ? r.DefParent : D.DefParent; |
| | | var de = r.DefEmpty!=null ? r.DefEmpty : D.DefEmpty; |
| | | if(r.firstChild){ if(dp&&(D.Name==de||!r.Def)) D = this.Def[dp]; } |
| | |
| | | ME.Master; |
| | | } |
| | | // ----------------------------------------------------------------------------------------------------------- |
| | | TGP.UpdateChildValues = function(row,CC,CCT,prep){ |
| | | TGP.UpdateChildValues = function(row,CC,CCT,prep,flg){//**** |
| | | for(var r=row.firstChild;r;r=r.nextSibling){ |
| | | this.UpdateRowValues(r,CC,CCT,prep); |
| | | r.Level = row.Level+1; |
| | | this.LoadedCount++; |
| | | if(r.firstChild) this.UpdateChildValues(r,CC,CCT,prep); |
| | | if(flg==undefined){//***控制只执行一次,会存在加载完数据,treegrid在分页功能里又重新执行多一次,造成超链接的生成有问题 |
| | | this.setPession(r);//**权限控制 |
| | | } |
| | | } |
| | | } |
| | | // ----------------------------------------------------------------------------------------------------------- |
| | |
| | | } |
| | | else r[c] = hir ? L.StringToDateHirji(d) : L.StringToDateEng(d,null,null,0); |
| | | } |
| | | else if(exc) r[c] = (r[c]+2209161600000)/86400000; |
| | | else if(exc) r[c] = L.ToExcelDate(r[c]); |
| | | } |
| | | } |
| | | else if(this.DateStrings==null) this.DateStrings = 0; |
| | |
| | | TGP.UpdateValues = function(){ |
| | | var C = this.Cols, CC = [], CCT = [], p = 0, R = this.Def["R"]; |
| | | this.AutoId = 1; this.ChildAutoId = 1; this.Rows = { }; |
| | | |
| | | this.gridTitleMap=new Map(); |
| | | for(var c in C) { |
| | | if(C[c].Prepared) continue; |
| | | CCT[p] = c+"Type"; |
| | |
| | | MS.Calc; |
| | | if(this.Calculating==null) for(var c in C) if(C[c].Formula) { this.Calculating = 1; break; } |
| | | ME.Calc; |
| | | |
| | | var R = this.GetFixedRows(), hc = this.XH.childNodes.length, dyb = this.DynamicBorder; |
| | | for(var i=0;i<R.length;i++){ |
| | | var r = R[i]; |
| | |
| | | var prd = 382879445; |
| | | |
| | | var prep = this.Prepared; |
| | | for(var B=this.XB.firstChild;B;B=B.nextSibling) { B.Level = -1; this.UpdateChildValues(B,CC,CCT,prep); } |
| | | for(var B=this.XB.firstChild;B;B=B.nextSibling) { B.Level = -1; this.UpdateChildValues(B,CC,CCT,prep,false); }//****false表示不需要执行权限控制的处理 by 2021-11-8 |
| | | this.XB.firstChild.Page = 1; |
| | | if(!this.Paging){ |
| | | this.XB.firstChild.State = 4; |