From: data _null_; on 12 Aug 2010 11:17 On Aug 12, 9:43 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > On Aug 12, 10:13 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > > On Aug 12, 8:51 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > On Aug 12, 9:40 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > On Aug 12, 8:21 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > I've searched for this answer but I'm not sure if I'm looking for the > > > > > right thing. I'm reading data from a table with both a fixed segment > > > > > and variable segment. I can read from the fixed segment just fine but > > > > > I have no idea how to continue on and pull data from the variable > > > > > segment. I'm using SAS 9.3.1 on a Z/os mainframe. Please let me know > > > > > what additional information is needed to help me with this. > > > > > > thanks. > > > > > The details are in the details. What are the details relating to the > > > > variable length segment? I can think of two scenarios that have very > > > > different solutions, and that's just two possibilities. > > > > I'm not sure what details you need but I'll try to put out there > > > whatever info I have: > > > > This is a COBOL-created table. I'm getting the information from the > > > copybook. > > > The last line on the fixed segment is called: VAR-BYTE-COUNT PIC > > > 9999 COMP > > > The variable segment looks similar to the fixed segment in that layout > > > with fields defined the same way. > > > > I'm sorry this isn't much to go on. If you have anything specific > > > that you need let me know and I'll see if I can find that out. > > > > thanks. > > > Sounds like VAR-BYTE-COUNT give the number of bytes in the variable > > segment. If so then the $VARYING format should work. > > > input {your fixed segment inputs with VAR_BYTE_COUNT as last field > > read} > > variable_segment $varying2048. var_byte_count; > > > You may need a number different from 2048. This will declare the > > width for the variable VARIABLE_SEGMENT ifs it is not already defined.- Hide quoted text - > > > - Show quoted text - > > I thought $varying only works when one variable is a variable length. > I have a few dozen in this variable segment. How do I pull out > specific ones? I did try you method and the error I got was: > > WARNING: VARIABLE VARIABLE_SEGMENT HAS ALREADY BEEN DEFINED AS > NUMERIC. I used your example above. > > I think that error is because I left something out or made wrong > assumptions from your example. > > Thanks for the help so far!- Hide quoted text - > > - Show quoted text - Give more details, I though VAR_BYTE_COUNT was the lenght of VARIABLE- SEGMENT. Is it the number of fields? Something else?
From: data _null_; on 12 Aug 2010 11:18 On Aug 12, 9:43 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > On Aug 12, 10:13 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > > On Aug 12, 8:51 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > On Aug 12, 9:40 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > On Aug 12, 8:21 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > I've searched for this answer but I'm not sure if I'm looking for the > > > > > right thing. I'm reading data from a table with both a fixed segment > > > > > and variable segment. I can read from the fixed segment just fine but > > > > > I have no idea how to continue on and pull data from the variable > > > > > segment. I'm using SAS 9.3.1 on a Z/os mainframe. Please let me know > > > > > what additional information is needed to help me with this. > > > > > > thanks. > > > > > The details are in the details. What are the details relating to the > > > > variable length segment? I can think of two scenarios that have very > > > > different solutions, and that's just two possibilities. > > > > I'm not sure what details you need but I'll try to put out there > > > whatever info I have: > > > > This is a COBOL-created table. I'm getting the information from the > > > copybook. > > > The last line on the fixed segment is called: VAR-BYTE-COUNT PIC > > > 9999 COMP > > > The variable segment looks similar to the fixed segment in that layout > > > with fields defined the same way. > > > > I'm sorry this isn't much to go on. If you have anything specific > > > that you need let me know and I'll see if I can find that out. > > > > thanks. > > > Sounds like VAR-BYTE-COUNT give the number of bytes in the variable > > segment. If so then the $VARYING format should work. > > > input {your fixed segment inputs with VAR_BYTE_COUNT as last field > > read} > > variable_segment $varying2048. var_byte_count; > > > You may need a number different from 2048. This will declare the > > width for the variable VARIABLE_SEGMENT ifs it is not already defined.- Hide quoted text - > > > - Show quoted text - > > I thought $varying only works when one variable is a variable length. > I have a few dozen in this variable segment. How do I pull out > specific ones? I did try you method and the error I got was: > > WARNING: VARIABLE VARIABLE_SEGMENT HAS ALREADY BEEN DEFINED AS > NUMERIC. I used your example above. > > I think that error is because I left something out or made wrong > assumptions from your example. > > Thanks for the help so far!- Hide quoted text - > > - Show quoted text - AND show some of your code not just error messages.
From: elsolo21 on 12 Aug 2010 11:47 On Aug 12, 11:18 am, "data _null_;" <datan...(a)gmail.com> wrote: > On Aug 12, 9:43 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > > On Aug 12, 10:13 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > On Aug 12, 8:51 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > On Aug 12, 9:40 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > On Aug 12, 8:21 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > > I've searched for this answer but I'm not sure if I'm looking for the > > > > > > right thing. I'm reading data from a table with both a fixed segment > > > > > > and variable segment. I can read from the fixed segment just fine but > > > > > > I have no idea how to continue on and pull data from the variable > > > > > > segment. I'm using SAS 9.3.1 on a Z/os mainframe. Please let me know > > > > > > what additional information is needed to help me with this. > > > > > > > thanks. > > > > > > The details are in the details. What are the details relating to the > > > > > variable length segment? I can think of two scenarios that have very > > > > > different solutions, and that's just two possibilities. > > > > > I'm not sure what details you need but I'll try to put out there > > > > whatever info I have: > > > > > This is a COBOL-created table. I'm getting the information from the > > > > copybook. > > > > The last line on the fixed segment is called: VAR-BYTE-COUNT PIC > > > > 9999 COMP > > > > The variable segment looks similar to the fixed segment in that layout > > > > with fields defined the same way. > > > > > I'm sorry this isn't much to go on. If you have anything specific > > > > that you need let me know and I'll see if I can find that out. > > > > > thanks. > > > > Sounds like VAR-BYTE-COUNT give the number of bytes in the variable > > > segment. If so then the $VARYING format should work. > > > > input {your fixed segment inputs with VAR_BYTE_COUNT as last field > > > read} > > > variable_segment $varying2048. var_byte_count; > > > > You may need a number different from 2048. This will declare the > > > width for the variable VARIABLE_SEGMENT ifs it is not already defined..- Hide quoted text - > > > > - Show quoted text - > > > I thought $varying only works when one variable is a variable length. > > I have a few dozen in this variable segment. How do I pull out > > specific ones? I did try you method and the error I got was: > > > WARNING: VARIABLE VARIABLE_SEGMENT HAS ALREADY BEEN DEFINED AS > > NUMERIC. I used your example above. > > > I think that error is because I left something out or made wrong > > assumptions from your example. > > > Thanks for the help so far!- Hide quoted text - > > > - Show quoted text - > > AND show some of your code not just error messages.- Hide quoted text - > > - Show quoted text - Sorry for the lack of details. I was able to get into the variable part. I think I might be reading in the length wrong, however. I'm formatting the PIC 9999 COMP as an IB2.0. I'm pretty sure that's not right. I'm only getting 20-30 characters of the variable segment. The fields in the fixed portion have comp-3 fields that I deal with all the time. I no longer get anymore errors, however! Here is the code for reading in the length and the variable segment: @239 varlgth IB2.0 variable_segment $varying512. varlgth; I'm guessing at the 512 right now but I really only need the first 50 so I'm ok if I cut stuff off. I really appreciate the help! thanks!
From: data _null_; on 12 Aug 2010 11:54 On Aug 12, 10:47 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > On Aug 12, 11:18 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > > On Aug 12, 9:43 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > On Aug 12, 10:13 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > On Aug 12, 8:51 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > On Aug 12, 9:40 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > > On Aug 12, 8:21 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > > > I've searched for this answer but I'm not sure if I'm looking for the > > > > > > > right thing. I'm reading data from a table with both a fixed segment > > > > > > > and variable segment. I can read from the fixed segment just fine but > > > > > > > I have no idea how to continue on and pull data from the variable > > > > > > > segment. I'm using SAS 9.3.1 on a Z/os mainframe. Please let me know > > > > > > > what additional information is needed to help me with this. > > > > > > > > thanks. > > > > > > > The details are in the details. What are the details relating to the > > > > > > variable length segment? I can think of two scenarios that have very > > > > > > different solutions, and that's just two possibilities. > > > > > > I'm not sure what details you need but I'll try to put out there > > > > > whatever info I have: > > > > > > This is a COBOL-created table. I'm getting the information from the > > > > > copybook. > > > > > The last line on the fixed segment is called: VAR-BYTE-COUNT PIC > > > > > 9999 COMP > > > > > The variable segment looks similar to the fixed segment in that layout > > > > > with fields defined the same way. > > > > > > I'm sorry this isn't much to go on. If you have anything specific > > > > > that you need let me know and I'll see if I can find that out. > > > > > > thanks. > > > > > Sounds like VAR-BYTE-COUNT give the number of bytes in the variable > > > > segment. If so then the $VARYING format should work. > > > > > input {your fixed segment inputs with VAR_BYTE_COUNT as last field > > > > read} > > > > variable_segment $varying2048. var_byte_count; > > > > > You may need a number different from 2048. This will declare the > > > > width for the variable VARIABLE_SEGMENT ifs it is not already defined.- Hide quoted text - > > > > > - Show quoted text - > > > > I thought $varying only works when one variable is a variable length. > > > I have a few dozen in this variable segment. How do I pull out > > > specific ones? I did try you method and the error I got was: > > > > WARNING: VARIABLE VARIABLE_SEGMENT HAS ALREADY BEEN DEFINED AS > > > NUMERIC. I used your example above. > > > > I think that error is because I left something out or made wrong > > > assumptions from your example. > > > > Thanks for the help so far!- Hide quoted text - > > > > - Show quoted text - > > > AND show some of your code not just error messages.- Hide quoted text - > > > - Show quoted text - > > Sorry for the lack of details. I was able to get into the variable > part. I think I might be reading in the length wrong, however. I'm > formatting the PIC 9999 COMP as an IB2.0. I'm pretty sure that's not > right. I'm only getting 20-30 characters of the variable segment. > The fields in the fixed portion have comp-3 fields that I deal with > all the time. I no longer get anymore errors, however! Here is the > code for reading in the length and the variable segment: > > @239 varlgth IB2.0 > variable_segment $varying512. varlgth; > > I'm guessing at the 512 right now but I really only need the first 50 > so I'm ok if I cut stuff off. I really appreciate the help! > > thanks!- Hide quoted text - > > - Show quoted text - This may help converting picture to informat. http://support.sas.com/kb/3/714.html
From: elsolo21 on 12 Aug 2010 16:27 On Aug 12, 11:54 am, "data _null_;" <datan...(a)gmail.com> wrote: > On Aug 12, 10:47 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > > On Aug 12, 11:18 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > On Aug 12, 9:43 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > On Aug 12, 10:13 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > On Aug 12, 8:51 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > > On Aug 12, 9:40 am, "data _null_;" <datan...(a)gmail.com> wrote: > > > > > > > > On Aug 12, 8:21 am, elsolo21 <eric_solo...(a)hotmail.com> wrote: > > > > > > > > > I've searched for this answer but I'm not sure if I'm looking for the > > > > > > > > right thing. I'm reading data from a table with both a fixed segment > > > > > > > > and variable segment. I can read from the fixed segment just fine but > > > > > > > > I have no idea how to continue on and pull data from the variable > > > > > > > > segment. I'm using SAS 9.3.1 on a Z/os mainframe. Please let me know > > > > > > > > what additional information is needed to help me with this. > > > > > > > > > thanks. > > > > > > > > The details are in the details. What are the details relating to the > > > > > > > variable length segment? I can think of two scenarios that have very > > > > > > > different solutions, and that's just two possibilities. > > > > > > > I'm not sure what details you need but I'll try to put out there > > > > > > whatever info I have: > > > > > > > This is a COBOL-created table. I'm getting the information from the > > > > > > copybook. > > > > > > The last line on the fixed segment is called: VAR-BYTE-COUNT PIC > > > > > > 9999 COMP > > > > > > The variable segment looks similar to the fixed segment in that layout > > > > > > with fields defined the same way. > > > > > > > I'm sorry this isn't much to go on. If you have anything specific > > > > > > that you need let me know and I'll see if I can find that out. > > > > > > > thanks. > > > > > > Sounds like VAR-BYTE-COUNT give the number of bytes in the variable > > > > > segment. If so then the $VARYING format should work. > > > > > > input {your fixed segment inputs with VAR_BYTE_COUNT as last field > > > > > read} > > > > > variable_segment $varying2048. var_byte_count; > > > > > > You may need a number different from 2048. This will declare the > > > > > width for the variable VARIABLE_SEGMENT ifs it is not already defined.- Hide quoted text - > > > > > > - Show quoted text - > > > > > I thought $varying only works when one variable is a variable length. > > > > I have a few dozen in this variable segment. How do I pull out > > > > specific ones? I did try you method and the error I got was: > > > > > WARNING: VARIABLE VARIABLE_SEGMENT HAS ALREADY BEEN DEFINED AS > > > > NUMERIC. I used your example above. > > > > > I think that error is because I left something out or made wrong > > > > assumptions from your example. > > > > > Thanks for the help so far!- Hide quoted text - > > > > > - Show quoted text - > > > > AND show some of your code not just error messages.- Hide quoted text - > > > > - Show quoted text - > > > Sorry for the lack of details. I was able to get into the variable > > part. I think I might be reading in the length wrong, however. I'm > > formatting the PIC 9999 COMP as an IB2.0. I'm pretty sure that's not > > right. I'm only getting 20-30 characters of the variable segment. > > The fields in the fixed portion have comp-3 fields that I deal with > > all the time. I no longer get anymore errors, however! Here is the > > code for reading in the length and the variable segment: > > > @239 varlgth IB2.0 > > variable_segment $varying512. varlgth; > > > I'm guessing at the 512 right now but I really only need the first 50 > > so I'm ok if I cut stuff off. I really appreciate the help! > > > thanks!- Hide quoted text - > > > - Show quoted text - > > This may help converting picture to informat. > > http://support.sas.com/kb/3/714.html- Hide quoted text - > > - Show quoted text - Thanks, that helped a lot. I still need to eventually figure out how to get the individual items from the large variable section but I got what I needed today. Thanks again for your help.
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 Prev: Filling up missing data Next: controlling Proc mixed output |