<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: ABAP Freak Show – July 1st – ABAP OO Tutorial Part 1</title>
	<atom:link href="http://enterprisegeeks.com/blog/2009/07/01/abap-freak-show-%e2%80%93-july-1st-%e2%80%93-abap-oo-tutorial-part-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://enterprisegeeks.com/blog/2009/07/01/abap-freak-show-%e2%80%93-july-1st-%e2%80%93-abap-oo-tutorial-part-1/</link>
	<description></description>
	<lastBuildDate>Tue, 03 Aug 2010 22:14:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Thomas Jung</title>
		<link>http://enterprisegeeks.com/blog/2009/07/01/abap-freak-show-%e2%80%93-july-1st-%e2%80%93-abap-oo-tutorial-part-1/comment-page-1/#comment-1112</link>
		<dc:creator>Thomas Jung</dc:creator>
		<pubDate>Mon, 06 Jul 2009 12:26:23 +0000</pubDate>
		<guid isPermaLink="false">http://enterprisegeeks.com/blog/?p=1261#comment-1112</guid>
		<description>&gt;always thought that ABAP was originally procedural due to the fact that it was somehow compiled down to C (I’m not sure why I assumed this)

ABAP doesn&#039;t really compile down to C code.  The confusion is maybe the fact that the ABAP Compiler and the ABAP virtual machine are both implemented in C/C++. However ABAP creates a byte code that is interpreted by the ABAP virtual machine - actually a lot like the way Java works. But this doesn&#039;t really effect OO/Procedural.

ABAP was procedural simply because that was the way most programming languages were designed when ABAP first came about.  Procedural ABAP design is largely a mixture of concepts from COBOL and C.</description>
		<content:encoded><![CDATA[<p>&gt;always thought that ABAP was originally procedural due to the fact that it was somehow compiled down to C (I’m not sure why I assumed this)</p>
<p>ABAP doesn&#8217;t really compile down to C code.  The confusion is maybe the fact that the ABAP Compiler and the ABAP virtual machine are both implemented in C/C++. However ABAP creates a byte code that is interpreted by the ABAP virtual machine &#8211; actually a lot like the way Java works. But this doesn&#8217;t really effect OO/Procedural.</p>
<p>ABAP was procedural simply because that was the way most programming languages were designed when ABAP first came about.  Procedural ABAP design is largely a mixture of concepts from COBOL and C.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simon</title>
		<link>http://enterprisegeeks.com/blog/2009/07/01/abap-freak-show-%e2%80%93-july-1st-%e2%80%93-abap-oo-tutorial-part-1/comment-page-1/#comment-1111</link>
		<dc:creator>Simon</dc:creator>
		<pubDate>Mon, 06 Jul 2009 07:05:49 +0000</pubDate>
		<guid isPermaLink="false">http://enterprisegeeks.com/blog/?p=1261#comment-1111</guid>
		<description>Hi Thomas,

Thanks for doing these - they are really useful. I am not sure if this question even makes sense, but I will ask it anyway :-)... I always thought that ABAP was originally procedural due to the fact that it was somehow compiled down to C (I&#039;m not sure why I assumed this) - did something change in the underlying implementation of ABAP to allow for ABAP OO?

Keep up the great work. Really enjoy listening and learning about this stuff.

Simon</description>
		<content:encoded><![CDATA[<p>Hi Thomas,</p>
<p>Thanks for doing these &#8211; they are really useful. I am not sure if this question even makes sense, but I will ask it anyway <img src='http://enterprisegeeks.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> &#8230; I always thought that ABAP was originally procedural due to the fact that it was somehow compiled down to C (I&#8217;m not sure why I assumed this) &#8211; did something change in the underlying implementation of ABAP to allow for ABAP OO?</p>
<p>Keep up the great work. Really enjoy listening and learning about this stuff.</p>
<p>Simon</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Thomas Jung</title>
		<link>http://enterprisegeeks.com/blog/2009/07/01/abap-freak-show-%e2%80%93-july-1st-%e2%80%93-abap-oo-tutorial-part-1/comment-page-1/#comment-1105</link>
		<dc:creator>Thomas Jung</dc:creator>
		<pubDate>Thu, 02 Jul 2009 12:23:40 +0000</pubDate>
		<guid isPermaLink="false">http://enterprisegeeks.com/blog/?p=1261#comment-1105</guid>
		<description>Thanks for the questions.  These aspects of integration into the UI for Classic Dynpro constructs are all things I will cover in Part 4 of the tutorial. 

For any screen related elements (Selection Screens or Full Dynpro screens), you still need a program.  Yes it is old style, but by the time OO was coming along in ABAP we were already beginning the transition to new UI technologies and I suppose the investment in a full OO version of classic dynpro just wasn&#039;t worth it. 

However in part 4 I will talk about how to keep this program as mostly an empty shell and divert most of your processing into a class. 

Finally, yes the range table is the only way of declaring a parameter or variable to access a select-option.  You can at least create range tables as data dictionary table types.  I will show that in part 4 as well.</description>
		<content:encoded><![CDATA[<p>Thanks for the questions.  These aspects of integration into the UI for Classic Dynpro constructs are all things I will cover in Part 4 of the tutorial. </p>
<p>For any screen related elements (Selection Screens or Full Dynpro screens), you still need a program.  Yes it is old style, but by the time OO was coming along in ABAP we were already beginning the transition to new UI technologies and I suppose the investment in a full OO version of classic dynpro just wasn&#8217;t worth it. </p>
<p>However in part 4 I will talk about how to keep this program as mostly an empty shell and divert most of your processing into a class. </p>
<p>Finally, yes the range table is the only way of declaring a parameter or variable to access a select-option.  You can at least create range tables as data dictionary table types.  I will show that in part 4 as well.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steffen Froehlich</title>
		<link>http://enterprisegeeks.com/blog/2009/07/01/abap-freak-show-%e2%80%93-july-1st-%e2%80%93-abap-oo-tutorial-part-1/comment-page-1/#comment-1104</link>
		<dc:creator>Steffen Froehlich</dc:creator>
		<pubDate>Thu, 02 Jul 2009 08:20:14 +0000</pubDate>
		<guid isPermaLink="false">http://enterprisegeeks.com/blog/?p=1261#comment-1104</guid>
		<description>Thanks Thomas for the beginners oo-tutorials. I&#039;ve got two questions about OO and selection screens.

The way people start programs in ERP are done by transactions. So Tcodes can link directly to OO-Classes. Is there a way to use theses powerful selection-screens in OO methods, because for an selection screen you ever need to create a program (which seems a little bit old style ;) ).

When using a selection options with ranges for an data-element like:

SELECT-OPTIONS: so_matnr FOR mara-matnr.

and you want using it in OO-context you&#039;ve declare a separate range-table like this:

DATA: ltr_matnr TYPE RANGE OF mara-matnr.
ltr_matnr[] = so_matnr[].
CALL METHOD zcl_class=&gt;init_attr
    CHANGING matnr = ltr_matnr.

Are there other / smarter ways, today?</description>
		<content:encoded><![CDATA[<p>Thanks Thomas for the beginners oo-tutorials. I&#8217;ve got two questions about OO and selection screens.</p>
<p>The way people start programs in ERP are done by transactions. So Tcodes can link directly to OO-Classes. Is there a way to use theses powerful selection-screens in OO methods, because for an selection screen you ever need to create a program (which seems a little bit old style <img src='http://enterprisegeeks.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ).</p>
<p>When using a selection options with ranges for an data-element like:</p>
<p>SELECT-OPTIONS: so_matnr FOR mara-matnr.</p>
<p>and you want using it in OO-context you&#8217;ve declare a separate range-table like this:</p>
<p>DATA: ltr_matnr TYPE RANGE OF mara-matnr.<br />
ltr_matnr[] = so_matnr[].<br />
CALL METHOD zcl_class=&gt;init_attr<br />
    CHANGING matnr = ltr_matnr.</p>
<p>Are there other / smarter ways, today?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
