Hoy tenemos un tip que nos ahorrará mucho tiempo. Por lo general, la forma en la que lo hace el DMF y algunos otros procesos de AX es mapear uno por uno los campos en la tabla nueva con un changeconpany y problema resuelto. Pero nosotros encontramos una función con la que prácticamente copiamos la misma tabla pero en otra compañía. Así:
static void CopyData(Args _args)
{
SysOperationProgress operationProgress;
NASIV navivTest, nasivDat;
str toCompany = "dat";
int i, totalRecords;
#avifiles
;
operationProgress = SysOperationProgress::newGeneral(#aviUpdate,
strFmt("Importando de datos desde '%1' a '%2'", curext(), toCompany),
totalRecords);
while select navivTest
{
i++;
changeCompany(toCompany)
{
ttsbegin;
buf2buf(navivTest, nasivDat);
nasivDat.insert();
ttscommit;
}
operationProgress.setText(strfmt("Registro número: %1", i));
operationProgress.setCount(i, 1);
}
}
Después de ejecutar este código, los datos que teníamos en la empresa actual se visualizaran en la empresa 'DAT'.
No hay comentarios:
Publicar un comentario