Skip to main content
Version: Next

Récupération du nom du fichier d'import

1 - Rationale il est parfois demandé de logguer le statut d'import des documents dans une table dédiée.

2 - Préconditions NA

3 - Implémentation dans l'étape d'édition de code (étape 8), utiliser le code suivant :

Import Doc - Code C#

...

namespace Avanteam.Import.Documents
{
public class ExtendedImportClass : ImportBaseClass
{
private static readonly ILogger Log = LogManager.GetCurrentClassLogger();

string srcFilename;
public ExtendedImportClass(ApplicationProfile appProfile, SourceType srcType, string srcFilePath, ImportParams importParameters, bool watchForNewData)
: base(appProfile, srcType, srcFilePath, importParameters, watchForNewData)
{
//debugMode=true;

// récupération du nom du fichier
FileInfo srcFile = new FileInfo(importParameters.PathReplace);
srcFilename = Path.GetFileNameWithoutExtension(srcFile.Name);
}

...

4 - Exemple Alimentation d'une table de log dédiée à l'import :

Log dans une table dédiée - code C#

...

DocumentDataSource.SQL_ExecuteNonQuery(
@"insert into LOGImportDOC(Id,id_document,level,Message,Date, Filename)
values (newid(),@IdDocument,@Level,@Message,SYSDATETIME(), @Filename)",
new Avanteam.Kernel.KeyPair("IdDocument", doc.IdDocument),
new Avanteam.Kernel.KeyPair("Level", "Info"),
new Avanteam.Kernel.KeyPair("Message", msgDoc),
new Avanteam.Kernel.KeyPair("Filename", srcFilename));

...