<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to hide an ABAP program? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620818#M1760750</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gurus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is a need in our organization to hide some ABAP code. We want other programs to call it (eg via a method or function module), but we don't want any developers looking at the source code. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This needs to be done for legal reasons.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've seen postings in SCN on this topic, and someone even posted sample code. However it does not work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you yourself have successfully hidden ABAP code, can you please explain how you did it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks!&lt;/P&gt;&lt;P&gt;Paul Bakker&lt;/P&gt;&lt;P&gt;ECC 6.0&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Aug 2013 00:09:56 GMT</pubDate>
    <dc:creator>paul_bakker2</dc:creator>
    <dc:date>2013-08-06T00:09:56Z</dc:date>
    <item>
      <title>How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620818#M1760750</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gurus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is a need in our organization to hide some ABAP code. We want other programs to call it (eg via a method or function module), but we don't want any developers looking at the source code. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This needs to be done for legal reasons.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've seen postings in SCN on this topic, and someone even posted sample code. However it does not work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you yourself have successfully hidden ABAP code, can you please explain how you did it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks!&lt;/P&gt;&lt;P&gt;Paul Bakker&lt;/P&gt;&lt;P&gt;ECC 6.0&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Aug 2013 00:09:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620818#M1760750</guid>
      <dc:creator>paul_bakker2</dc:creator>
      <dc:date>2013-08-06T00:09:56Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620819#M1760751</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Paul,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;I also have never found anything that could explicitly hide an ABAP program or direct changes in REPOSRC table that could hide them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But maybe you can use alternative ways of hiding your code like:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;- The code you wanna hide don't do it in ABAP, encapsulate them using Java, VB or C, and interface with RFC/BAPI;&lt;/P&gt;&lt;P&gt; - or you can take away authorizations;&lt;/P&gt;&lt;P&gt; - or for specific t-codes you can use user exits to prevent from reading the code, &lt;/P&gt;&lt;P&gt;like EXIT_SAPLS38E_001 for example and then make a check: &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;if PROGRAM = 'Z_'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; raise cancelled.&lt;/P&gt;&lt;P&gt; endif.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Otherwise, if you just want to protect the code from being modified just check the editor lock&lt;/P&gt;&lt;P&gt; in the program attributes.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Best regards!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Aug 2013 02:40:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620819#M1760751</guid>
      <dc:creator>Paulo_Vantini</dc:creator>
      <dc:date>2013-08-06T02:40:53Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620820#M1760752</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The most simple approach may be to write a code in Exit SEU00001 for SE38 or do some Authorization Object in the same to avoid calling programs that might be maintained in a Z-Table. (Way to maintain the list of prohibited objects). may be put such a check in developer role or exits for all development T-Codes such as SE37, SE51 etc.. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Arindam&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Aug 2013 03:22:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620820#M1760752</guid>
      <dc:creator>arindam_m</dc:creator>
      <dc:date>2013-08-06T03:22:26Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620821#M1760753</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Paulo,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Making Code Non Editable&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Steps: Goto se38&lt;BR /&gt;for your Program. Choose Attributes radio Button and click Change.In this screen check the check box Editor Lock and save it.Now this locked for editing by any other use.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Hiding a Code&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;report zhide no standard page heading.&amp;nbsp; &lt;/P&gt;&lt;P&gt;************************************************************************&lt;BR /&gt;* This program hides any ABAP’s source code and protects it with a&lt;BR /&gt;* password in this source code.&lt;BR /&gt;*&lt;BR /&gt;* After hiding, you can still run the abap (the load version is intact)&lt;BR /&gt;* but it cannot be displayed, edited, traced, transported or generated.&lt;BR /&gt;*&lt;BR /&gt;* If the ABAP is not hidden, the program hides it, if it is hidden, it&lt;BR /&gt;* unhide it.&lt;BR /&gt;* Remember to hide this program first!&lt;BR /&gt;************************************************************************&lt;/P&gt;&lt;P&gt;selection-screen begin of block block.&lt;BR /&gt;parameters: program(30) obligatory.&lt;BR /&gt;selection-screen begin of line.&lt;BR /&gt;selection-screen comment 1(8) pwd.&lt;BR /&gt;selection-screen position 35.&lt;BR /&gt;parameters: password(8) modif id aaa.&lt;BR /&gt;selection-screen end of line.&lt;BR /&gt;selection-screen end of block block.&lt;/P&gt;&lt;P&gt;*&lt;BR /&gt;data: message(60) type c.&lt;BR /&gt;*&lt;/P&gt;&lt;P&gt;at selection-screen output.&lt;/P&gt;&lt;P&gt;loop at screen.&lt;BR /&gt;if screen-group1 = ‘AAA’.&lt;BR /&gt;screen-invisible = ’1′.&lt;BR /&gt;modify screen.&lt;BR /&gt;endif.&lt;BR /&gt;endloop.&lt;/P&gt;&lt;P&gt;*&lt;BR /&gt;initialization.&lt;BR /&gt;pwd = ‘Password’.&lt;BR /&gt;*&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;tables: trdir.&lt;/P&gt;&lt;P&gt;* User name and password check&lt;BR /&gt;if password ‘ABCDEFG’.&lt;BR /&gt;write: / ‘Wrong password’.&lt;BR /&gt;exit.&lt;BR /&gt;endif.&lt;/P&gt;&lt;P&gt;* SAP owned?&lt;BR /&gt;if not program cp ‘Z*’ and not program cp ‘Y*’.&lt;BR /&gt;write: / ‘Do not hide original SAP programs!’.&lt;BR /&gt;exit.&lt;BR /&gt;endif.&lt;/P&gt;&lt;P&gt;* Exists?&lt;BR /&gt;select single * from trdir where name = program.&lt;BR /&gt;if sy-subrc 0.&lt;BR /&gt;write: / ‘Program does not exists!’.&lt;BR /&gt;exit.&lt;BR /&gt;endif.&lt;/P&gt;&lt;P&gt;* Does it have a current generated version?&lt;BR /&gt;data: f1 type d, f3 type d.&lt;BR /&gt;data: f2 type t, f4 type t.&lt;BR /&gt;EXEC SQL.&lt;BR /&gt;SELECT UDAT, UTIME, SDAT, STIME INTO :F1, :F2, :F3, :F4 FROM D010LINF&lt;BR /&gt;WHERE PROG = &lt;IMG alt=":P" class="wp-smiley jiveImage" src="http://s2.wp.com/wp-includes/images/smilies/icon_razz.gif?m=1129645325g" /&gt; ROGRAM&lt;BR /&gt;ENDEXEC.&lt;/P&gt;&lt;P&gt;if f1 1.&lt;BR /&gt;write: / ‘Cannot generate appropriate program name’.&lt;BR /&gt;exit.&lt;BR /&gt;endif.&lt;/P&gt;&lt;P&gt;* Check if it is already hidden&lt;BR /&gt;data: f5(30).&lt;BR /&gt;EXEC SQL.&lt;BR /&gt;SELECT PROG INTO :F5 FROM D010S WHERE PROG = :NEW_NAME&lt;BR /&gt;ENDEXEC.&lt;/P&gt;&lt;P&gt;if f5 is initial.&lt;/P&gt;&lt;P&gt;* There is no such hidden program, hide it&lt;BR /&gt;EXEC SQL.&lt;BR /&gt;UPDATE D010S SET PROG = :NEW_NAME WHERE PROG = &lt;IMG alt=":P" class="wp-smiley jiveImage" src="http://s2.wp.com/wp-includes/images/smilies/icon_razz.gif?m=1129645325g" /&gt; ROGRAM&lt;BR /&gt;ENDEXEC.&lt;BR /&gt;concatenate ‘Program’ :program ‘was hidden.’&lt;BR /&gt;into message separated by space.&lt;BR /&gt;else.&lt;/P&gt;&lt;P&gt;* There is already a hidden program there, unhide it&lt;BR /&gt;EXEC SQL.&lt;BR /&gt;UPDATE D010S SET PROG = &lt;IMG alt=":P" class="wp-smiley jiveImage" src="http://s2.wp.com/wp-includes/images/smilies/icon_razz.gif?m=1129645325g" /&gt; ROGRAM WHERE PROG = :NEW_NAME&lt;BR /&gt;ENDEXEC.&lt;/P&gt;&lt;P&gt;concatenate ‘Program’ :program ‘was restored.’&lt;BR /&gt;into message separated by space.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;write message.&lt;/P&gt;&lt;P&gt;*** end of program &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Katrice&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Aug 2013 04:11:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620821#M1760753</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-08-06T04:11:56Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620822#M1760754</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Katrice,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Have you tried that program yourself? It does not work. It won't even compile because some table names don't exist (at least in my version of SAP).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers&lt;/P&gt;&lt;P&gt;Paul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 03:51:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620822#M1760754</guid>
      <dc:creator>paul_bakker2</dc:creator>
      <dc:date>2013-08-09T03:51:18Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620823#M1760755</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Thanks - that's not a bad idea, but of course any programmer can use 'debug' to get around such authorization checks in a development environment....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; I'm thinking perhaps we have to create an &lt;STRONG&gt;unreadable&lt;/STRONG&gt; version of the code that can still (somehow!) be executed. I'd like to implement it in ABAP if possible.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers&lt;/P&gt;&lt;P&gt;Paul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 03:55:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620823#M1760755</guid>
      <dc:creator>paul_bakker2</dc:creator>
      <dc:date>2013-08-09T03:55:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620824#M1760756</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Paul,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do as Arindam suggests but do all the checks in a macro, this way it can not be debugged.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Custodio&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 04:40:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620824#M1760756</guid>
      <dc:creator>custodio_deoliveira</dc:creator>
      <dc:date>2013-08-09T04:40:25Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620825#M1760757</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This used to work in previous version (up to 4.6C I'm sure it did). Does not work on ECC6.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 04:41:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620825#M1760757</guid>
      <dc:creator>custodio_deoliveira</dc:creator>
      <dc:date>2013-08-09T04:41:14Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620826#M1760758</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Just wondering: if the ABAP is hidden and it's executed and then someone goes into debug mode, is the code readable or not?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Aug 2013 11:31:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620826#M1760758</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-08-12T11:31:49Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620827#M1760759</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This message was moderated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Aug 2013 11:46:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620827#M1760759</guid>
      <dc:creator>SujeetMishra</dc:creator>
      <dc:date>2013-08-12T11:46:21Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620828#M1760760</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Code can be hidden via a special ABAP command in a program. However, it cannot be retreived (I think). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If this is a feasbile requirement for legal reasons, then I would raise it on OSS and get assistance from SAP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Martin. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Aug 2013 11:49:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620828#M1760760</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-08-12T11:49:32Z</dc:date>
    </item>
    <item>
      <title>Re: How to hide an ABAP program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620829#M1760761</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If it's a legal requirement, write it in some compilable language like C, and call it via RFC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Otherwise, forget it. Cannot be done. This question has been discussed at length many many times. Generally it is extremely &lt;STRONG&gt;un&lt;/STRONG&gt;desirable to hide code. So I am locking this thread.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Aug 2013 12:05:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-hide-an-abap-program/m-p/9620829#M1760761</guid>
      <dc:creator>matt</dc:creator>
      <dc:date>2013-08-12T12:05:32Z</dc:date>
    </item>
  </channel>
</rss>

