[x]
Posted via EE Mobile

Search, ask, and monitor your questions on the go with EE Mobile. Visit Experts Exchange from your mobile device and never be out of touch again.

Question
[x]
Attachment Details
[x]
The Solution Rating System

With so many solutions, how can you tell which solutions are most likely to help you and which ones are not? To provide you with a tool to use, we rate our solutions based on various elements that most accurately determine if a solution is a quality solution. To explain what factors affect the solution rating, here are the elements we take into consideration when formulating our solution rating.

  • The Grade of the Solution
  • The Zone Rank of the Expert Providing the Solution
  • The Number of Author and Expert Comments
  • The Number of Experts Contributing
  • The Feedback of the Community

Your Input Matters
Because of the way the system is set up, the most important variable in this equation is you. As a member of Experts Exchange, you are able to cast your vote on the quality of the solutions in regard to how complete, accurate, helpful and easy to understand each solution is. When you provide your feedback, each rating is adjusted accordingly. So, if you see a solution that has a poor rating that you think is a good solution, let us know by rating it. As you do, the rating will be adjusted and will become more accurate for other members of our site.

If you have any suggestions that you would like to make for our rating system, please ask a question in the Suggestions Zone of Community Support.

Thank you!

9.9

Unix variable to file write in new line

Asked by yadavricky in Unix Systems Programming

Tags: Unix variable to file write in new line, and short and get uniq record

Hi I need a script, which will write a variable(result) value to file and the variable will have value as below.

0202161075:201:01473999998:17-JAN-10:19-JAN-10 0202161075:200:01473999998:17-JAN-10:19-JAN-10 0202161075:201:01473999998:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10
0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10 0202161075:200:01473999999:17-JAN-10:19-JAN-10

further to this i want to cut the varible value is such a way so that the file should contain the data as below
0202161075:201:01473999998:17-JAN-10:19-JAN-10
0202161075:200:01473999998:17-JAN-10:19-JAN-10
and so on..

why i need this because i want to process each and every record line by line.

After this if some one can help me to sort the file containts and keep only one record of same type.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
 result=`sqlplus -S $DATABASE <<EOF
   set head off pages 0 feedback off serveroutput on
   DECLARE 
 
   vl_n_btr_params      IST.BTR_PARAMS.STRING_VALUE%TYPE ;
   vl_d_sysdat          DATE := TRUNC(GNVGEN.SYSTEMDATE);
   vl_c_brAccountNum    account.account_num%TYPE;
   status                        NUMBER;
   status_text                   VARCHAR2(3000);
 
   CURSOR cur_unload
   IS 
   SELECT cust.root_customer_ref,
          acc.customer_ref,
          acc.account_num, 
          ce.event_type_id, 
          ce.Event_source, 
          ce.Event_dtm, 
          br.BILL_DAT + 1 as bill_date
   FROM  costedevent ce,
         billrequest br,
         account acc,
         customer cust
   WHERE cust.root_customer_ref like 'FN_%'
      AND acc.customer_ref = cust.customer_ref
      AND ce.account_num = br.account_num
      AND acc.account_num = br.account_num
      AND ce.event_dtm > (br.BILL_DAT + vl_n_btr_params)
      AND (br.BILL_DAT + vl_n_btr_params) < vl_d_sysdat
      AND br.bill_type_id = 2
      AND br.bill_request_status = 1
      AND br.bill_seq IS NULL;
 
   BEGIN
 
      SELECT TO_NUMBER(STRING_VALUE)
      INTO vl_n_btr_params
      FROM IST.BTR_PARAMS
      WHERE NAME = 'Fnetallowbillingdelay';
 
 
      FOR rec_cur_unload IN cur_unload
      LOOP
         status := 0;
		dbms_output.put_line(status||','||rec_cur_unload.account_num||':'||rec_cur_unload.event_type_id||':'||rec_cur_unload.event_source||':'||rec_cur_unload.bill_date||':'||vl_d_sysdat);
         END LOOP ;
 
   EXCEPTION
      WHEN OTHERS
      THEN 
         status := SQLCODE;
         status_text := SQLERRM;
         dbms_output.put_line(status||',');
         dbms_output.put_line(status_text||',');
 
   END;
   /
   quit
   EOF`
 
status=`echo $result | awk '{FS = ","} {print $1}'`
   
echo $result
 
    if test $status -eq '0'
    then
       echo $result | cut -d "," -f2  >> ${CEP_REPORT_FILE}
	   
    else
       status_text=`echo $result | awk '{FS = ","} {print $2}'`
    fi
 
    return 0;
 
Related Solutions
Keywords: Unix variable to file write in new line
 
Loading Advertisement...
 
[+][-]09/29/09 10:44 PM, ID: 25455895Accepted Solution

View this solution now by starting your 30-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

About this solution

Zone: Unix Systems Programming
Tags: Unix variable to file write in new line, and short and get uniq record
Sign Up Now!
Solution Provided By: ozo
Participating Experts: 1
Solution Grade: A
 
 
Loading Advertisement...
20091021-EE-VQP-81 - Hierarchy / EE_QW_3_20080625