Anonymous
CSV Helper — создание числового столбца вместо общего
Сообщение
Anonymous » 05 авг 2024, 12:10
Я использую CSV Helper для создания файла CSV следующим образом:
Код: Выделить всё
for (int i = 0; i < dsData.Rows.Count; i++)
{
DateTime invDate = Convert.ToDateTime(dsData.Rows[i]["DocDate"].ToString());
string invoiceDate = invDate.ToString("yyyyMMdd");
invoices.Add(new Invoices
{
Recordtype = "DIALSALES01ZA",
DistributorCode = 161457,
InvoiceNumber = dsData.Rows[i]["DocNum"].ToString(),
InvDate = invoiceDate,
SCJProductCode = dsData.Rows[i]["CardCode"].ToString(),
DistributorProductCode = dsData.Rows[i]["CardCode"].ToString(),
SalesmanCode = dsData.Rows[i]["SlpCode"].ToString(),
SalesmanName = dsData.Rows[i]["SlpName"].ToString(),
SupervisorCode = "Kinyanjui",
SupervisorName = "Kamau",
WarehouseCode = dsData.Rows[i]["WhsCode"].ToString(),
WarehouseName = dsData.Rows[i]["WhsName"].ToString(),
OutletTypeCode = "Mini mart",
OutletTypeName = "Mini mart",
ClientInternalCode = dsData.Rows[i]["CardCode"].ToString(),
ClientFederalID = dsData.Rows[i]["CardCode"].ToString(),
ClientName = dsData.Rows[i]["CardName"].ToString(),
City = dsData.Rows[i]["City"].ToString(),
ZipCode = 0,
DeliveryAddress = dsData.Rows[i]["Address"].ToString(),
Quantity = Convert.ToDouble(dsData.Rows[i]["U_PCs"].ToString()),
GrossValue = Convert.ToDouble(dsData.Rows[i]["GTotal"].ToString()),
NetValue = Convert.ToDouble(dsData.Rows[i]["LineTotal"].ToString()),
Fraction = 1,
EANCode = "1",
});
}
DateTime dateTimeNow = DateTime.Now;
Random rnd = new Random();
double num = rnd.Next(1, 10000000);
string filename = dateTimeNow.ToString("yyyyMMdd") + num.ToString() + ".csv";
var csvPath = "C:/Integrations/RAISONS/SCJohnsonIntegration/Invoices_CSVs/" + filename + "";
using (var streamWriter = new StreamWriter(csvPath))
{
using (var csvWriter = new CsvWriter(streamWriter, CultureInfo.InvariantCulture))
{
csvWriter.WriteRecords(invoices);
}
}
}
Он создает следующий CSV-файл, и вы можете видеть, что в столбце «Количество» указано «Общее». Я хотел бы сделать этот столбец как «Число». Как мне этого добиться?
Подробнее здесь:
https://stackoverflow.com/questions/788 ... of-general
1722849038
Anonymous
Я использую CSV Helper для создания файла CSV следующим образом: [code]for (int i = 0; i < dsData.Rows.Count; i++) { DateTime invDate = Convert.ToDateTime(dsData.Rows[i]["DocDate"].ToString()); string invoiceDate = invDate.ToString("yyyyMMdd"); invoices.Add(new Invoices { Recordtype = "DIALSALES01ZA", DistributorCode = 161457, InvoiceNumber = dsData.Rows[i]["DocNum"].ToString(), InvDate = invoiceDate, SCJProductCode = dsData.Rows[i]["CardCode"].ToString(), DistributorProductCode = dsData.Rows[i]["CardCode"].ToString(), SalesmanCode = dsData.Rows[i]["SlpCode"].ToString(), SalesmanName = dsData.Rows[i]["SlpName"].ToString(), SupervisorCode = "Kinyanjui", SupervisorName = "Kamau", WarehouseCode = dsData.Rows[i]["WhsCode"].ToString(), WarehouseName = dsData.Rows[i]["WhsName"].ToString(), OutletTypeCode = "Mini mart", OutletTypeName = "Mini mart", ClientInternalCode = dsData.Rows[i]["CardCode"].ToString(), ClientFederalID = dsData.Rows[i]["CardCode"].ToString(), ClientName = dsData.Rows[i]["CardName"].ToString(), City = dsData.Rows[i]["City"].ToString(), ZipCode = 0, DeliveryAddress = dsData.Rows[i]["Address"].ToString(), Quantity = Convert.ToDouble(dsData.Rows[i]["U_PCs"].ToString()), GrossValue = Convert.ToDouble(dsData.Rows[i]["GTotal"].ToString()), NetValue = Convert.ToDouble(dsData.Rows[i]["LineTotal"].ToString()), Fraction = 1, EANCode = "1", }); } DateTime dateTimeNow = DateTime.Now; Random rnd = new Random(); double num = rnd.Next(1, 10000000); string filename = dateTimeNow.ToString("yyyyMMdd") + num.ToString() + ".csv"; var csvPath = "C:/Integrations/RAISONS/SCJohnsonIntegration/Invoices_CSVs/" + filename + ""; using (var streamWriter = new StreamWriter(csvPath)) { using (var csvWriter = new CsvWriter(streamWriter, CultureInfo.InvariantCulture)) { csvWriter.WriteRecords(invoices); } } } [/code] Он создает следующий CSV-файл, и вы можете видеть, что в столбце «Количество» указано «Общее». Я хотел бы сделать этот столбец как «Число». Как мне этого добиться? [img]https://i.sstatic.net/AWwinr8J.png[/img] Подробнее здесь: [url]https://stackoverflow.com/questions/78833268/csv-helper-create-numeric-column-instead-of-general[/url]