Buenas días,
Una vez mas es un placer compartir mi problema en esta gran comunidad de SAP, trabajo como Analista Programador y la empresa donde laboro, ha realizado una migración de SAP BO 9.0 a 9.3; estoy teniendo un problema al momento registrar los asientos, no me permite realizar la transacción ya que me emite el siguiente error " Código de moneda no permitido , ‘SOL’", he verificado y las monedas estan creadas, asimismo realice pruebas con la versión anterior 9.0, y si funciona el problema es en la nueva versión que no me permite realizar el registro, de antemano agradezco su apoyo,
Adjunto codigo:
int iResultado = 0;
strMensaje = string.Empty;
mobjCnn.StartTransaction();
try
{
SAPbobsCOM.JournalEntries asiento = mobjCnn.GetBusinessObject(BoObjectTypes.oJournalEntries);
//SAPbobsCOM.JournalEntries asiento = null;
//asiento = (SAPbobsCOM.JournalEntries)mobjCnn.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oJournalEntries);
if (dtDueDate != null) asiento.DueDate = dtDueDate.Value;
asiento.Memo = sMemo;
asiento.TaxDate = dtTaxDate;
asiento.AutoVAT = (sAutoVat == "N" ? BoYesNoEnum.tNO : BoYesNoEnum.tYES);
asiento.ReferenceDate = dtReferenceDate;
if (!string.IsNullOrWhiteSpace(sReference)) asiento.Reference = sReference;
if (!string.IsNullOrWhiteSpace(sTransCode)) asiento.TransactionCode = sTransCode;
int ntotal = items.Length;
int ncolumnas = 15;
int nfilas = ntotal / ncolumnas;
for (int i = 0; i < nfilas; i++)
{
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas])) asiento.Lines.AccountCode = items[i * ncolumnas];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 1])) asiento.Lines.ShortName = items[i * ncolumnas + 1];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 2])) asiento.Lines.LineMemo = items[i * ncolumnas + 2];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 3])) asiento.Lines.Credit = Convert.ToDouble("888");//Convert.ToDouble(items[i * ncolumnas + 3]);
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 4])) asiento.Lines.Debit = Convert.ToDouble("0");//Convert.ToDouble(items[i * ncolumnas + 4]);
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 5])) asiento.Lines.DueDate = Convert.ToDateTime(items[i * ncolumnas + 5]);
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 6])) asiento.Lines.UserFields.Fields.Item("U_BPP_CTAD").Value = items[i * ncolumnas + 6];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 7])) asiento.Lines.TaxDate = Convert.ToDateTime(items[i * ncolumnas + 7]);
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 8])) asiento.Lines.ProjectCode = items[i * ncolumnas + 8];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 9])) asiento.Lines.CostingCode = items[i * ncolumnas + 9];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 10])) asiento.Lines.FCCurrency = items[i * ncolumnas + 10];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 11])) asiento.Lines.FCDebit = Convert.ToDouble(items[i * ncolumnas + 11]);
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 12])) asiento.Lines.FCCredit = Convert.ToDouble(items[i * ncolumnas + 12]);
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 13])) asiento.Lines.Reference1 = items[i * ncolumnas + 13];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 14])) asiento.Lines.Reference2 = items[i * ncolumnas + 14];
String RS = asiento.Lines.FCCurrency = items[i * ncolumnas + 10];
string AccountCode = items[i * ncolumnas];
string ShortName = items[i * ncolumnas + 1];
string ineMemo = items[i * ncolumnas + 2];
string Credit = items[i * ncolumnas + 3];
string Debit = items[i * ncolumnas + 4];
DateTime DueDate = Convert.ToDateTime(items[i * ncolumnas + 5]);
string U_BPP_CTAD = items[i * ncolumnas + 6];
DateTime TaxDate = Convert.ToDateTime(items[i * ncolumnas + 7]);
string ProjectCode = items[i * ncolumnas + 8];
if (!string.IsNullOrWhiteSpace(items[i * ncolumnas + 9])) asiento.Lines.CostingCode = items[i * ncolumnas + 9];
string FCCurrency = items[i * ncolumnas + 10];
double FCDebit = Convert.ToDouble(items[i * ncolumnas + 11]);
double FCCredit = Convert.ToDouble(items[i * ncolumnas + 12]);
string Reference1 = items[i * ncolumnas + 13];
string Reference2 = items[i * ncolumnas + 14];
asiento.Lines.Add();
}
iResultado = asiento.Add();
if (iResultado < 0)
{
iResultado = 0;
int iError;
string sErrorMensaje;
mobjCnn.GetLastError(out iError, out sErrorMensaje);
try
{
mobjCnn.EndTransaction(SAPbobsCOM.BoWfTransOpt.wf_RollBack);
}
catch { }
strMensaje = iError.ToString() + ": " + sErrorMensaje;
return iResultado;
}
else
{
string strDocEntry;
mobjCnn.GetNewObjectCode(out strDocEntry);
mobjCnn.EndTransaction(SAPbobsCOM.BoWfTransOpt.wf_Commit);
iResultado = 1;
strMensaje = strDocEntry;
}
}
catch (Exception ex)
{
iResultado = 0;
mobjCnn.EndTransaction(SAPbobsCOM.BoWfTransOpt.wf_RollBack);
strMensaje = "(GT) " + ex.Message;
}
return iResultado;