logo
down
shadow

Progress ABL - strip and add to temp table


Progress ABL - strip and add to temp table

Content Index :

Progress ABL - strip and add to temp table
Tag : development , By : Cesar Sanz
Date : November 23 2020, 01:01 AM

wish help you to fix your issue I'm coming from a Java/.NET background and trying to learn ABL but the difference in structure and the limited information on the internet is making it hard. What I want to do is import data from a text file which is in the following format: , If space is a delimiter you can use the IMPORT statement.
DEFINE TEMP-TABLE tt-employee NO-UNDO
    FIELD firstname AS CHARACTER
    FIELD lastname  AS CHARACTER
    FIELD age       AS INTEGER
    FIELD empTitle  AS CHARACTER.

INPUT FROM c:\temp\indata.dat.
REPEAT:
    CREATE tt-employee.
    IMPORT DELIMITER " " tt-employee.
END.
INPUT CLOSE.
/* Skipping temp-table definition - copy-paste from above */
DEFINE VARIABLE cRow AS CHARACTER   NO-UNDO.

INPUT FROM c:\temp\indata.dat.
REPEAT:

    IMPORT UNFORMATTED cRow.
    /* You could replace 0 with a higher number that qualifies a record so 
       SUBSTRING doesn't return an error if reading past end of line */
    IF LENGTH(cRow) > 0 THEN DO:
        CREATE tt-employee.
        ASSIGN 
            tt-employee.firstname = SUBSTRING(cRow, 1, 10)
            tt-employee.lastname  = SUBSTRING(cRow, 11, 10)
            tt-employee.age       = INTEGER(SUBSTRING(cRow, 21, 2))
            tt-employee.empTitle  = SUBSTRING(cRow, 23, 10) NO-ERROR.
    END.
END.
INPUT CLOSE.

Comments
No Comments Right Now !

Boards Message :
You Must Login Or Sign Up to Add Your Comments .

Share : facebook icon twitter icon

Creating Temp-Table taking the table name from combo box in progress 4gl, Open Edge


Tag : development , By : brij
Date : March 29 2020, 07:55 AM
I think the issue was by ths following , Given that you have a handle to your ComboBox-Widget, you can create a new temp-table dynamically like this:
DEF VAR ttH AS HANDLE.
CREATE TEMP-TABLE ttH.
ttH:CREATE-LIKE(ComboBoxWidgetHandle:SCREEN-VALUE).

In progress 4gl get field names of temp-table


Tag : development , By : tommy
Date : March 29 2020, 07:55 AM
will help you I have some temp-tables in my script that I will be exporting to a csv file. I need to also export the field names as well as their values. How can I get the field names of temp-tables? , Here's a quick and dirty example of what you're asking for:
define temp-table tt1
  field f1 as character
  field f2 as decimal
  .

def var iCnt as integer no-undo.

create tt1.
assign 
   tt1.f1 = "f1"
   tt1.f2 = 123.456
   .

do icnt = 1 to buffer tt1:num-fields:

   display buffer tt1:buffer-field(icnt):name
           buffer tt1:buffer-field(icnt):buffer-value
       with down
       .

   down.

end.

How to strip characters out of Temp Table after Bulk Insert


Tag : sql-server , By : MrSparky
Date : March 29 2020, 07:55 AM
I hope this helps . @seagulledge, in a comment on the question, is correct, or at least partially correct, in stating that the CHAR(10) and CHAR(13) are out of order. A carriage-return (CR) is CHAR(13) and a line-feed (LF) is CHAR(10).
HOWEVER, the main thing preventing this from working is not the order of those two characters: it is the simple fact that the newlines -- whether they are \r\n or just \n -- are in the incoming CSV file, and hence the BULK INSERT command is assuming that the newlines are separating input rows (which makes sense for it to do). This can be seen looking at the VARBINARY output in the question. There are two rows of output, both starting with 0x.

Reading XML file to Temp-table in Progress-4gl


Tag : xml , By : Goeran
Date : March 29 2020, 07:55 AM
I wish this help you This seems to be a known bug, I found a Knowledge Base entry for it: https://knowledgebase.progress.com/articles/Article/How-to-read-an-XML-in-a-temp-table-using-READ-XML
The workaround: In your XML, you're going to need an outer node with the dataset name. Like this:
<dataset_name>
    <Table_Name>
        <Field_Name_1>Value_1</Field_Name_1>
        <Field_Name_2>Value_2</Field_Name_2>
    </Table_Name>
</dataset_name>
DEFINE TEMP-TABLE Table_Name 
    FIELD Field_Name_1 AS CHAR
    FIELD Field_Name_2 AS CHAR
.

define dataset dataset_name for table_name.

dataset dataset_name:read-xml("File","C:\myFile.xml","empty",?,?,?).
DEF VAR i AS INT NO-UNDO.
FOR EACH Table_Name: 
    i=i + 1.
    DISP Field_Name_1 format "x(20)" 
         Field_Name_2 format "x(20)".
END.
DISP i.

Getting XML data into Temp-Table in Progress 4GL/OpenEdge ABL


Tag : development , By : ck1
Date : March 29 2020, 07:55 AM
wish of those help Super close. CMA is not corresponding to the table but to a container tag that could be represented by a Prodataset in this case. Instead just use "QUOTES".
I would not use xml like this in production, you might not have any way to interfere if the source is down etc. I would pull the xml down another way and then load it.
DEF TEMP-TABLE QUOTES NO-UNDO
    FIELD PAPEL       AS CHAR
    FIELD DESCRICAO   AS CHAR
    FIELD ULTIMO      AS  DEC
    FIELD DIFERENCIAL AS  DEC
    FIELD VARIACAO    AS  DEC
    FIELD FECHANT     AS  DEC
    FIELD COMPRA      AS  DEC
    FIELD MINIMA      AS  DEC
    FIELD MAXIMA      AS  DEC
    FIELD VENCIMENTO  AS  INT
    FIELD HORA        AS CHAR
    FIELD DATA        AS DATE.

DEF VAR cSourceType             AS CHAR    NO-UNDO.
DEF VAR cFile                   AS CHAR    NO-UNDO.
DEF VAR cReadMode               AS CHAR    NO-UNDO.
DEF VAR cSchemaLocation         AS CHAR    NO-UNDO.
DEF VAR lOverrideDefaultMapping AS LOGICAL NO-UNDO.
DEF VAR cFieldTypeMapping       AS CHAR    NO-UNDO.
DEF VAR cVerifySchemaMode       AS CHAR    NO-UNDO.
DEF VAR lReturn                 AS LOGICAL NO-UNDO.

ASSIGN
    cSourceType             = "FILE"
    cFile                   = "http://sfeed-cot01.cma.com.br/clientes/cocamar/cbot.xml"
    cReadMode               = "EMPTY"
    cSchemaLocation         = ?
    lOverrideDefaultMapping = ?
    cFieldTypeMapping       = ?
    cVerifySchemaMode       = ?. 

lReturn = TEMP-TABLE QUOTES:READ-XML(cSourceType, cFile, cReadMode, 
    cSchemaLocation, lOverrideDefaultMapping, cFieldTypeMapping,
    cVerifySchemaMode).

DISP lReturn.
IF lReturn THEN
FOR EACH QUOTES NO-LOCK:
    DISPLAY QUOTES.PAPEL QUOTES.DESCRICAO.
END.
Related Posts Related QUESTIONS :
  • How parse data using join on Objection.js
  • Assign an array to a property in a Chapel Class
  • Netlogo: How can I obtain the accumulate value in Netlogo?
  • How to populate datasource for listview using api response in react native?
  • Why does gmail API when using history.list method send message ids without the field what action has been preformed on t
  • How to run an append query in ms access vba as part of a transaction
  • Wrong dates shown in Jekyll-based blog
  • How to concatenate two document lists in a webMethods flow service?
  • How to properly set up a site map addition in a customization project
  • IBM Content Collector error calling external Web Service
  • Is (0*1*)* equal to (0 | 1)*?
  • How do I configure phpMyAdmin to start with a blank sql query from the SQL tab?
  • "Objects are not valid as a React child" Redux error when conditionally connecting a component?
  • Displacy results are not showing
  • Strapi / Graphql. What am i doing wrong?
  • How to add Search bar for django template?
  • lookup in presto using single column against a range in lookup table
  • How can you stop videos being stolen on website?
  • Can't code substitution happen in Hybrid Flow?
  • Removed widget remains on parent
  • setup saga middleware with redux-starter-kit's configureStore()
  • How to get cookies from response of scrapy splash
  • I need to do a firebase stream and not a Http Get
  • Unable to compile node-runtime
  • SQLSTATE[42S22]: Column not found: 1054 Unknown column '' in 'where clause'
  • How to extract only the number from a variable
  • disable linter in DAML studio
  • RxJS: How to set exhaustMap concurrent?
  • How to remove perforce (p4) on Ubuntu
  • How do they know mean and std, the input value of transforms.Normalize
  • Why this type is not an Interface?
  • SugarCRM Rest API set_relationship between Contacts and Documents
  • Jira dashboard organization
  • Web worker importScripts fails to place script variables in global scope
  • Always errors - The "path" argument must be one of type string, Buffer, or URL. Received type undefined
  • How to create an observable of a stream of infinite items
  • Not efficiently to use multi-Core CPU for training Doc2vec with gensim
  • webGL gl_Position value saving outside shaders
  • Is it okay for a resolver to have side effects besides resolving the type?
  • Move 32bit register into a 8 bit register
  • Is there a way to update, not overwrite, worker_env for a Dask YarnCluster within a script?
  • Lotus Notes Deployment
  • How Do I Add Active Directory To APIM Using Terraform?
  • How to get the old parameter values in Blazor OnParameterSet?
  • How to debug "ERROR: Could not reach the worker node."?
  • How chain indefinite amount of flatMap operators in Reactor?
  • extract dates and times from string in Redshift
  • How do I make a column of 3 cards match in height in bootstrapVue?
  • how to replace missing values from another column in PySpark?
  • only read last line of text file (C++ Builder)
  • Snakemake --forceall --dag results in mysterius Error: <stdin>: syntax error in line 1 near 'File' from Graphvis
  • How Can I Remove Demo Products From APIM Created With Terraform?
  • How to avoid cloning a big integer in rust
  • Break a row of words into word groups in Hive
  • How can I add a path variable to existing files in an Installshield project converted from MSI
  • Certain languages are not available in postman; is there a way to enable it?
  • Concatenation step of U-Net for unequal number of channels
  • HL Fabric - states, transactions but varied keys
  • How to handle "flood wait" errors when using telethon.sync?
  • Any way to make closure which takes a destructured array?
  • shadow
    Privacy Policy - Terms - Contact Us © scrbit.com