Com afegir files a una taula en un document MS Word amb C#
Problemes de format:Utilitzeu tipus de dades i format adequats quan prepareu dades per a la combinació de correu per mantenir la coherència.
Utilitzeu tipus de dades i format adequats quan prepareu dades per a la combinació de correu per mantenir la coherència.
- Gestió dinàmica de contingut: - Verifiqueu que la vostra plantilla de Word estigui formatada correctament i que no contingui elements no compatibles que puguin causar errors durant el processament.
- Flexibilitat: - Per a escenaris d’automatització de documents més complexos, Aspose.Words ofereix un potent motor de informes LINQ que va més enllà de la simple combinació de correu. Admet:.
- Automatització: - Regions repetides — genera files de taula, elements de llista o paràgrafs a partir de col·leccions.
Expressions en línia — incrusta expressions C# directament a la sintaxi de la plantilla.
- Fonts de dades imbricades — gestiona dades jeràrquiques (p. ex., comandes amb línies d’articles).
- Les plantilles del LINQ Reporting Engine utilitzen la sintaxi
<<[expression]>>i blocs<<foreach>>...<<end>>, fent‑les més expressives que el mail merge per a documents basats en dades.
Recursos: Millora les teves habilitats d’automatització de documents
Imagina un món on les factures es creen soles, els rebuts es materialitzen amb un clic, i la teva paperassa comptable desapareix màgicament a l’èter digital. Sona com un somni? Amb Aspose.Words per a .NET, aquest somni es converteix en la teva realitat. Diu adéu a la introducció manual de dades i hola a la generació de documents automatitzada i optimitzada que fa que el teu negoci sembli tan professional com és eficient.
Per què avançar cap al futur de la facturació automatitzada?.
Install-Package Aspose.WordsEl temps és diners: Recupera innombrables hores dedicades a la facturació manual.
Precisió i professionalitat: Genera factures de marca, sense errors, cada vegada.
using Aspose.Words;
using Aspose.Words.Tables;Satisfacció del client: Envia rebuts i factures puntuals i precisos, augmentant la confiança del client.
Escalabilitat a demanda: Gestiona pics de facturació sense esforç.
Document MSWordDocument = new Document(@"MS Word.docx");La teva caixa d’eines: Preparant-se per al viatge d’automatització
Abans d’endinsar-nos en la màgia de l’automatització, reunim les nostres eines:.
Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];El .NET Forge: Baixa i instal·la l’últim SDK de .NET per al teu sistema.
Aspose.Words Alchemy: Afegeix Aspose.Words al teu projecte utilitzant el NuGet Package Manager:dotnet add package Aspose.Words.
Row row = new Row(MSWordDocument);El Blueprint de la plantilla: Dissenya el teu InvoiceTemplate.docx amb marcadors de posició com {{CustomerName}}, {{InvoiceDate}}, i una taula per a les línies d’articles.
Creant la teva factura automatitzada.
using Aspose.Words;
using Aspose.Words.Tables;
// Open MS Word Document
Document MSWordDocument = new Document(@"BigDocument.docx");
// Get the Table by index
Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];
// Create a new Row class object
Row row = new Row(MSWordDocument);
// Add three Cells to Row's cells collection
for (int i = 0; i < 3; i++)
{
Cell cell = new Cell(MSWordDocument);
cell.AppendChild(new Paragraph(MSWordDocument));
cell.FirstParagraph.Runs.Add(new Run(MSWordDocument, "Text in Cell " + i));
row.Cells.Add(cell);
}
// Insert new Row after the first Row
tableToAddRowsTo.Rows.Insert(1, row);
// Clone an existing Row from Table
Row cloneOfRow = (Row)tableToAddRowsTo.FirstRow.Clone(true);
// Remove all content from all Cells
foreach (Cell cell in cloneOfRow)
{
cell.RemoveAllChildren();
cell.EnsureMinimum();
}
// Add multiple empty rows to the end of table
for (int i = 0; i < 10; i++)
{
Row emptyRow = (Row)cloneOfRow.Clone(true);
tableToAddRowsTo.Rows.Add(emptyRow);
}
// Save updated document
MSWordDocument.Save(@"output.docx");Carregant la teva plantilla
La nostra història comença carregant la plantilla de factura, la base del nostre document automatitzat.
tableToAddRowsTo.Rows.Add(row);Omplint amb les dades del client
A continuació, infonem vida a la nostra plantilla amb les dades del client, fent que cada factura sigui únicament personalitzada.
tableToAddRowsTo.Rows.Insert(1, row);Afegint taules dinàmiques
Aquí és on la màgia realment succeeix—afegint dinàmicament elements de línia a la teva factura.
MSWordDocument.Save(@"Added Rows to Table in MS Word.docx");Amb les dades i els elements de línia en el seu lloc, guardem la nostra obra mestra com a PDF, preparada per a la distribució.
Èpics del món real: On la facturació automatitzada prospera:
using Aspose.Words;
using Aspose.Words.Tables;
// Open MS Word Document
Document MSWordDocument = new Document(@"BigDocument.docx");
// Get the Table by index
Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];
// Create a new Row class object
Row row = new Row(MSWordDocument);
// Add three Cells to Row's cells collection
for (int i = 0; i < 3; i++)
{
Cell cell = new Cell(MSWordDocument);
cell.AppendChild(new Paragraph(MSWordDocument));
cell.FirstParagraph.Runs.Add(new Run(MSWordDocument, "Text in Cell " + i));
row.Cells.Add(cell);
}
// Insert new Row after the first Row
tableToAddRowsTo.Rows.Insert(1, row);
// Clone an existing Row from Table
Row cloneOfRow = (Row)tableToAddRowsTo.FirstRow.Clone(true);
// Remove all content from all Cells
foreach (Cell cell in cloneOfRow)
{
cell.RemoveAllChildren();
cell.EnsureMinimum();
}
// Add multiple empty rows to the end of table
for (int i = 0; i < 10; i++)
{
Row emptyRow = (Row)cloneOfRow.Clone(true);
tableToAddRowsTo.Rows.Add(emptyRow);
}
// Save updated document
MSWordDocument.Save(@"output.docx");Conclusió
Reialmes de Subscripció: Crea factures recurrents amb detalls de facturació dinàmics, assegurant transaccions fluides.