From 03ef0b51103c735077c784c7df81ae2bcc1599ab Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期四, 13 二月 2025 18:33:56 +0800
Subject: [PATCH] update

---
 jrj/xframe/xcontrol/xdwgrid.hpp |  137 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 120 insertions(+), 17 deletions(-)

diff --git a/jrj/xframe/xcontrol/xdwgrid.hpp b/jrj/xframe/xcontrol/xdwgrid.hpp
index 8f4a517..16c97b0 100644
--- a/jrj/xframe/xcontrol/xdwgrid.hpp
+++ b/jrj/xframe/xcontrol/xdwgrid.hpp
@@ -28,7 +28,7 @@
 	int SetRow(int row) { return getKReport()->SetRow_(row); }
 public:
 	int GetColumnCount() { return getKReport()->GetColumnCount_(); }
-	LPCTSTR GetColumnName(int col) { return getKReport()->GetColumnName_(col); }
+	xstring GetColumnName(int col) { return getKReport()->GetColumnName_(col); }
 	int GetColumnIndex(LPCTSTR pColumn) { return getKReport()->GetColumnIndex_(pColumn); }
 public:
 	xstring GetItemString(int nRow, int nColumn, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
@@ -52,7 +52,7 @@
 	{
 		return getKReport()->SaveAs_(pXmlArg);
 	}
-	int SaveAs(KXMLDOMDocument& xml, LPCTSTR pFileName = NULL) //鍙﹀瓨涓�
+	int SaveAs(KXMLDOMDocument xml, LPCTSTR pFileName = NULL) //鍙﹀瓨涓�
 	{
 		return getKReport()->SaveAs_(xml,pFileName);
 	}
@@ -71,6 +71,7 @@
 	int SelectRow(int nRow, bool bSelect = true) { return getKReport()->SelectRow_(nRow, bSelect); }
 	int SelectRow(int sRow, int eRow, bool bSelect = true) { return getKReport()->SelectRow_(sRow, eRow, bSelect); }
 	int GetNextSelectRow(int nStartRow) { return getKReport()->GetNextSelectRow_(nStartRow); }
+	int GetPrevSelectRow(int nStartRow) { return getKReport()->GetPrevSelectRow(nStartRow); }
 	bool IsRowSelected(int nRow) { return getKReport()->IsRowSelected_(nRow); }
 	//int SetSelectBkColor(COLORREF color){return getKReport()->SetSelectBkColor_(color);}
 	int SetSelectionMode(int nMode) { return getKReport()->SetSelectionMode_(nMode); } //0 unselection 1 singleSelection 2 multiselection 3 multiselectionex 
@@ -83,8 +84,8 @@
 	//int Retrieve(ITrans *pTrans,LPCTSTR pDataUrl, LPCTSTR pArgStr);//璇诲彇鏁版嵁
 	int Retrieve(LPCTSTR pDataUrl, LPCTSTR pArgStr) { return getKReport()->Retrieve_(pDataUrl, pArgStr); }//璇诲彇鏁版嵁
 
-	int Retrieve(KXMLDOMElement  pElement) { return getKReport()->Retrieve_(pElement); }//璇诲彇鏁版嵁
-	int Retrieve(KXMLDOMDocument& xml) { return  getKReport()->Retrieve_(xml); }//璇诲彇鏁版嵁
+	int Retrieve(KXMLDOMElement  pElement) { return pElement?getKReport()->Retrieve_(pElement):0; }//璇诲彇鏁版嵁
+	int Retrieve(KXMLDOMDocument xml) { return  xml?getKReport()->Retrieve_(xml):0; }//璇诲彇鏁版嵁
 
 public:
 	int SetDataObject(LPCTSTR pServer, LPCTSTR pUrl) { return getKReport()->SetDataObject_(pServer, pUrl); }//璁剧疆妯℃澘瀵硅薄
@@ -101,6 +102,11 @@
 public:
 	int	Reset() { return getKReport()->Reset_(); }
 	int	ResetUpdateStatus() { return getKReport()->ResetUpdateStatus_(); }
+public:
+	LPTSTR GetColumnProps(LPCTSTR pColName) { return getKReport()->GetColumnProps_(pColName); } //寰楀埌鍒楁暣浣揦ML灞炴��
+	int SetColumnProps(LPCTSTR pColName, LPCTSTR pXmlProp) { return getKReport()->SetColumnProps_(pColName, pXmlProp); } //璁剧疆鍒楁暣浣揦ML灞炴��
+	LPTSTR GetColumnProp(LPCTSTR pColName, LPCTSTR pItem) { return getKReport()->GetColumnProp_(pColName, pItem); } //寰楀埌鍒楀睘鎬�
+	int SetColumnProp(LPCTSTR pColName, LPCTSTR pItem, LPCTSTR pProp) { return getKReport()->SetColumnProp_(pColName, pItem, pProp); }//璁剧疆鍒楀睘鎬�
 
 public:
 	int event_ItemFocusChanged(int nRow, int nCol) { return getKReport()->event_ItemFocusChanged_(nRow, nCol); }
@@ -206,22 +212,22 @@
 		return getKReport()->AllowSort(sort);
 	}
 public:
-	int FindByColumn(int startRow, int columnIndex, LPCTSTR columnValue)
+	int FindByColumn(int startRow, int columnIndex, xstring columnValue)
 	{
-		return getKReport()->FindByColumn(startRow, columnIndex, columnValue);
+		return getKReport()->FindByColumn(startRow, columnIndex, columnValue.c_str());
 	}
-	int FindByColumn(int startRow, LPCTSTR column, LPCTSTR columnValue)
+	int FindByColumn(int startRow, xstring column, xstring columnValue)
 	{
-		return getKReport()->FindByColumn(startRow,column,columnValue);
+		return getKReport()->FindByColumn(startRow,column.c_str(), columnValue.c_str());
 	}
 
 	int SetReadOnlyColumn(int columnIndex, bool flag = true)
 	{
 		return getKReport()->SetReadOnlyColumn(columnIndex, flag);
 	}
-	int SetReadOnlyColumn(LPCTSTR column, bool flag = true)
+	int SetReadOnlyColumn(xstring column, bool flag = true)
 	{
-		return getKReport()->SetReadOnlyColumn(column, flag);
+		return getKReport()->SetReadOnlyColumn(column.c_str(), flag);
 	}
 
 	int SetColumnWidth(int columnIndex, int width = 1)
@@ -255,7 +261,7 @@
 	}
 	int AcceptText()
 	{
-		return getKReport()->AcceptText();
+		return getKReport()->AcceptText_();
 	}
 	int ShowRowTo(int row)
 	{
@@ -270,9 +276,9 @@
 		return getKReport()->GetTitleName(col);
 	}
 public:
-	int SetRowSort(LPTSTR colName, bool colOrder = true)
+	int SetRowSort(LPCTSTR colName, bool colOrder = true)
 	{
-		return getKReport()->SetRowSort(colName, colOrder);
+		return getKReport()->SetRowSort((LPTSTR)colName, colOrder);
 	}
 	int SetClickEditFlag(bool f)
 	{
@@ -280,7 +286,7 @@
 	}
 	int Redraw()
 	{
-		return getKReport()->RedrawEx();
+		return getKReport()->Redraw();
 	}
 	bool SetRowMove(int row, int movecount)
 	{
@@ -302,9 +308,9 @@
 	{
 		return getKReport()->RetrieveDiff(xml);
 	}
-	int Filter(LPTSTR pColumn, LPTSTR pStr)
+	int Filter(LPCTSTR pColumn, LPCTSTR pStr)
 	{
-		return getKReport()->Filter(pColumn, pStr);
+		return getKReport()->Filter((LPTSTR)pColumn, (LPTSTR)pStr);
 	}
 public:
 	int SetHeaderText(int row, int col, LPTSTR name)
@@ -334,6 +340,12 @@
 		return getKReport()->AddRepeats(colName);
 	}
 public:
+	void ShowEditor()
+	{
+		getKReport()->ShowEditor();
+	}
+public:
+	/*
 	LPCTSTR GetColumnProp(int nCol, LPCTSTR pItem)
 	{
 		return L"";
@@ -345,6 +357,7 @@
 		return L"";
 		//return getKReport()->GetColumnProp(pColName, pItem);
 	}
+	*/
 
 	int GetItemInt(int row, int col)
 	{
@@ -387,7 +400,68 @@
 
 	bool SetItemDouble(int row, xstring col, double str)
 	{
-		return SetItemString(row, col.c_str(), xstring(str));
+		return SetItemString(row, col, xstring(str));
+	}
+
+	int DataBI(LPCTSTR pSchema = NULL) //鏁版嵁BI鍒嗘瀽
+	{
+		return getKReport()->DataBI_(pSchema);
+	}
+	LPTSTR DataAnalysis(LPCTSTR pSchema = NULL)
+	{
+		return getKReport()->DataAnalysis(pSchema);
+	}
+
+	xstring GetItemString(int nRow, xstring ColumnName, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->GetItemString_(nRow, ColumnName.c_str(),dwBuffer);
+	}
+
+	bool SetItemString(int nRow, int ColumnName, xstring lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemString_(nRow, ColumnName, lptStr.c_str(), dwBuffer);
+	}
+
+	bool SetItemString(int nRow, LPCTSTR ColumnName, xstring lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemString_(nRow, ColumnName, lptStr.c_str(), dwBuffer);
+	}
+
+	bool SetItemString(int nRow, xstring ColumnName,xstring lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemString_(nRow, ColumnName.c_str(), lptStr.c_str(), dwBuffer);
+	}
+	bool SetItemString(int nRow, xstring ColumnName, LPCTSTR lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemString_(nRow, ColumnName.c_str(), lptStr, dwBuffer);
+	}
+
+	xstring GetItemDisplayString(int nRow, xstring ColumnName, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->GetItemDisplayString(nRow, ColumnName.c_str(), dwBuffer);
+	}
+
+	bool SetItemDisplayString(int nRow, int ColumnName, xstring lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemDisplayString(nRow, ColumnName, lptStr.c_str(), dwBuffer);
+	}
+
+	bool SetItemDisplayString(int nRow, LPCTSTR ColumnName, xstring lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemDisplayString(nRow, ColumnName, lptStr.c_str(), dwBuffer);
+	}
+
+	bool SetItemDisplayString(int nRow, xstring ColumnName, xstring lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemDisplayString(nRow, ColumnName.c_str(), lptStr.c_str(), dwBuffer);
+	}
+	bool SetItemDisplayString(int nRow, xstring ColumnName, LPCTSTR lptStr, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->SetItemDisplayString(nRow, ColumnName.c_str(), lptStr, dwBuffer);
+	}
+	LPCTSTR GetItemTipString(int nRow, xstring ColumnName, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return getKReport()->GetItemTipString(nRow, ColumnName.c_str(), dwBuffer);
 	}
 
 public:
@@ -460,6 +534,17 @@
 		return L"";
 	}
 
+	int SetGuid(int row,xstring val)
+	{
+		KXMLDOMElement  e = GetRowElement(row);
+		if (e)
+		{
+			e.setAttribute(L"guid",val.c_str());
+			return 1;
+		}
+		return 0;
+	}
+
 public:
 
 	int DwRetrieve(string ServerUrl, string src, string argstr)
@@ -487,6 +572,24 @@
 		DwRetrieve(ServerUrl, src, arg.GetString());
 		return 1;
 	}
+
+	xstring GetItemDisplayXmlString(int nRow, int nColumn, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return xutil::ToXmlText(getKReport()->GetItemDisplayString(nRow, nColumn, dwBuffer));
+	}
+	xstring GetItemDisplayXmlString(int nRow, xstring ColumnName, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return xutil::ToXmlText(getKReport()->GetItemDisplayString(nRow, ColumnName.c_str(), dwBuffer));
+	}
+	xstring GetItemXmlString(int nRow, int nColumn, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return xutil::ToXmlText(getKReport()->GetItemString_(nRow, nColumn, dwBuffer));
+	}
+	xstring GetItemXmlString(int nRow, xstring ColumnName, kdwgrid::DWBuffer dwBuffer = kdwgrid::dbuf_normal)
+	{
+		return xutil::ToXmlText(getKReport()->GetItemString_(nRow, ColumnName.c_str(), dwBuffer));
+	}
+
 };
 
 

--
Gitblit v1.9.3