How to skip Dataport header?

yukonyukon Member Posts: 361
Hi Expert,

I downloaded this object from
http://www.mibuso.com/howtoinfo.asp?FileID=8&Type=howto. That one is export item card to csv file. It can export with field caption but can't import again. It show below error. How to slove it? Please let me know.


Best Regards,
Yukon
Make Simple & Easy

Comments

  • devu_13devu_13 Member Posts: 101
    Hi
    Take integer record and skip it to one time.Just try it.
    Devendra Kr. Sharma
    IBIZ Consulting Services,India
  • yukonyukon Member Posts: 361
    Hi devu_13,
    Thank 4 your reply.
    Take integer record and skip it to one time.Just try it.
    Field Caption is write from Inter DataItem. I also try skip at Integer OnPre/BeforeImport ..etc - Trigger. But get same error.
    Please look a code. But it is original code. Without skip.
    OBJECT Dataport 50000 Export Items
    {
      OBJECT-PROPERTIES
      {
        Date=05/11/09;
        Time=[ 4:14:11 PM];
        Modified=Yes;
        Version List=mibuso.com HowTo8;
      }
      PROPERTIES
      {
        DataItemSeparator=<NewLine>;
      }
      DATAITEMS
      {
        { PROPERTIES
          {
            DataItemTable=Table2000000026;
            DataItemTableView=SORTING(Number)
                              WHERE(Number=CONST(1));
          }
          FIELDS
          {
            {      ;     ;Item.FIELDCAPTION("No.") }
            {      ;     ;Item.FIELDCAPTION(Description) }
            {      ;     ;Item.FIELDCAPTION("Base Unit of Measure") }
            {      ;     ;Item.FIELDCAPTION("Unit Price") }
          }
           }
        { PROPERTIES
          {
            DataItemTable=Table27;
          }
          FIELDS
          {
            {      ;     ;"No."                }
            {      ;     ;Description          }
            {      ;     ;"Base Unit of Measure" }
            {      ;     ;"Unit Price"         }
          }
           }
      }
      REQUESTFORM
      {
        PROPERTIES
        {
          Width=9020;
          Height=3410;
        }
        CONTROLS
        {
        }
      }
      CODE
      {
    
        BEGIN
        END.
      }
    }
    
    Best Regards,
    Yukon
    Make Simple & Easy
  • yukonyukon Member Posts: 361
    Hi Savatage,

    Thx 4 your reply.
    viewtopic.php?f=5&t=10564
    That code is useful when we want to skip header. But in my case is not same.
    Because of i wrote header from Top Integer DataItem. That Integer Dataitem Dataport fields are caption of second item.Eg. Item.FieldCaption("No."). It does not have sourceExpr.
    When i import data it stay showing error message.

    I put this code at Integer DataItem OnPreDataItem Trigger.
    IF CurrDataport.IMPORT THEN BEGIN
      REPEAT
        CurrFile.READ(cha);
      UNTIL cha = 10; // of course in case the RecordSeparator is "<<NewLine>>"
    END;
    
    After Loop i got error.

    So how should we do when we use Integer DataItem(For Caption) before another dataitem.

    Thanks 4 everybody. I hope we can solve this case.

    Best Regards,
    Yukon
    Make Simple & Easy
  • yukonyukon Member Posts: 361
    Hi Everybody,

    I can solve it. We get error when data import without SourceExpr. In this case our SourceExpr is "FieldCaption" Of another DataItem Field. So I put "CurrDataport.SKIP;" each dataport field of "OnBeforeEvaluateField".
    OBJECT Dataport 50009 Export Items
    {
      OBJECT-PROPERTIES
      {
        Date=06/11/09;
        Time=12:15:28 PM;
        Modified=Yes;
        Version List=mibuso.com HowTo8;
      }
      PROPERTIES
      {
        DataItemSeparator=<NewLine>;
      }
      DATAITEMS
      {
        { PROPERTIES
          {
            DataItemTable=Table2000000026;
            DataItemTableView=SORTING(Number)
                              WHERE(Number=CONST(1));
          }
          FIELDS
          {
            {      ;     ;Item.FIELDCAPTION("No.");
                                               OnBeforeEvaluateField=BEGIN
                                                                       CurrDataport.SKIP;
                                                                     END;
                                                                      }
            {      ;     ;Item.FIELDCAPTION(Description);
                                               OnBeforeEvaluateField=BEGIN
                                                                       CurrDataport.SKIP;
                                                                     END;
                                                                      }
            {      ;     ;Item.FIELDCAPTION("Base Unit of Measure");
                                               OnBeforeEvaluateField=BEGIN
                                                                       CurrDataport.SKIP;
                                                                     END;
                                                                      }
            {      ;     ;Item.FIELDCAPTION("Unit Price");
                                               OnBeforeEvaluateField=BEGIN
                                                                       CurrDataport.SKIP;
                                                                     END;
                                                                      }
          }
           }
        { PROPERTIES
          {
            DataItemTable=Table27;
          }
          FIELDS
          {
            {      ;     ;"No."                }
            {      ;     ;Description          }
            {      ;     ;"Base Unit of Measure" }
            {      ;     ;"Unit Price"         }
          }
           }
      }
      REQUESTFORM
      {
        PROPERTIES
        {
          Width=9020;
          Height=3410;
        }
        CONTROLS
        {
        }
      }
      CODE
      {
    
        BEGIN
        END.
      }
    }
    

    Thanks everybody for your reply.

    Best Regards,
    Yukon
    Make Simple & Easy
Sign In or Register to comment.