This commit is contained in:
chi
2024-01-17 13:20:41 +09:00
parent c2be3da94a
commit ff50832bdd
6 changed files with 350 additions and 226 deletions

View File

@@ -782,21 +782,58 @@ namespace FEQ0000
List<dsPurchase.EETGW_PurchaseCRRow> GetDatarows(bool all = false)
{
List<dsPurchase.EETGW_PurchaseCRRow> rows = new List<dsPurchase.EETGW_PurchaseCRRow>();
var idxcol = this.fpSpread1_Sheet1.Columns["idx"];
var idxconf = this.fpSpread1_Sheet1.Columns["conf_status"];
var idxstatus = this.fpSpread1_Sheet1.Columns["state"];
if (all)
{
var drows = (dsPurchase.EETGW_PurchaseCRRow[])(this.dsPurchase.EETGW_PurchaseCR.Select(this.bs.Filter, this.bs.Sort)); ;
foreach (var dr in drows)
rows.Add(dr);
FarPoint.Win.Spread.HideRowFilter f = (FarPoint.Win.Spread.HideRowFilter)fpSpread1_Sheet1.RowFilter;
int[] FRows = f.GetIntersectedFilteredInRows();
if (FRows == null)
{
var rowc = this.fpSpread1_Sheet1.RowCount;
var colc = this.fpSpread1_Sheet1.ColumnCount;
var drows = (dsPurchase.EETGW_PurchaseCRRow[])(this.dsPurchase.EETGW_PurchaseCR.Select(this.bs.Filter, this.bs.Sort));
foreach (var dr in drows)
rows.Add(dr);
}
else
{
List<int> rowidxs = new List<int>();
foreach (int i in FRows)
{
var row = this.fpSpread1_Sheet1.Rows[i];
if (fpSpread1_Sheet1.IsRowBound(i))
{
rowidxs.Add(i);
}
}
//수집된데이터를 보내야한다.
var idx = 0;
foreach (var i in rowidxs)
{
var rowidx = (int)fpSpread1.ActiveSheet.GetValue(i, idxcol.Index);
var row = this.dsPurchase.EETGW_PurchaseCR.Where(t => t.idx == rowidx).First();
rows.Add(row);
}
if (rows.Any() == false)
{
if (this.bs.Count > 0)
{
var drv = this.bs.Current as DataRowView;
rows.Add(drv.Row as dsPurchase.EETGW_PurchaseCRRow);
}
}
}
}
else
{
//선택된 자료의 데이터를 추출한다.
var selected = this.fpSpread1_Sheet1.GetSelections(); //선택된 개체확인
List<int> rowidxs = new List<int>();
var idxcol = this.fpSpread1_Sheet1.Columns["idx"];
var idxconf = this.fpSpread1_Sheet1.Columns["conf_status"];
var idxstatus = this.fpSpread1_Sheet1.Columns["state"];
foreach (var item in selected)
{
for (int i = item.Row; i < item.Row + item.RowCount; i++)