Kde(mod)- is the bloat worth the functionality?
I am running Xfce right now but I'm on a moderately powerful laptop: 2gigs RAM, 2GHZ dual core processor, 335MB videoRAM, and ~30GB partitioned off to Linux. Xfce, LXDE, *box, etc. seem to be advertising their greatness on slow or old machines, but I don't think I fit in that category. My laptop, Sony VAIO VGN-SZ430N, has all the hardware bells and whistles and I feel like I'm losing a lot of functionality without GNOME or KDE. The latter two are noticeably slower than the light DEs/WMs, but is it worth it for the functionality that is gained (if any)? I am considering switching to KDEmod once 4.2 comes out; I hate 4, 4.1, and don't really like 3.5. I'm sick of GNOME from Ubuntu, so is this a good choice? Am I really gaining anything with the loss of speed and disk space?
I'd really like some guidance or extra information about this if anyone can help. Any help would be greatly appreciated.
Thanks,
Redrazor39
kaola_linux wrote:So I want to know if I'm going to enable the repos of kdemod, can I install apps for kdemod on my xfce without the extra dependencies of KDE itself? For example if I want to run amarok will it download also some kde dependencies?
Kdemod tries to use as much packages from arch repos as possible.
(which seems to be pretty hard since sometimes, since kde sees way too less love)
But in amarok's case its a kde app so yes it needs kde deps, that kdemod does provide if its installed.
I use kdemod but build amarok2 from arch abs since mysql seems to need to be rebuilt in 64 bit arch.
Heres the pkgbuilds:
Mysgl:
# $Id: PKGBUILD 14174 2008-10-04 15:06:14Z andyrtr $
# Maintainer: Alexander Baldeck <[email protected]>
# Contributor: judd <[email protected]>
pkgname=mysql
pkgver=5.0.75
pkgrel=2
pkgdesc="A fast SQL database server"
arch=(i686 x86_64)
backup=(etc/my.cnf etc/conf.d/mysqld)
depends=("mysql-clients>=${pkgver}" 'tcp_wrappers')
makedepends=('libtool')
url=('http://www.mysql.com/')
options=('!libtool')
license=('GPL')
source=(ftp://ftp.pucpr.br/mysql/Downloads/MySQL-5.0/mysql-${pkgver}.tar.gz
mysql-no-clients.patch
mysqld
my.cnf
mysqld.conf.d)
build() {
# PIC
export CFLAGS="$CFLAGS -fPIC"
export CXXFLAGS="$CXXFLAGS -fPIC"
cd ${startdir}/src/${pkgname}-${pkgver}
patch -Np1 -i ${startdir}/src/mysql-no-clients.patch || return 1
./configure --prefix=/usr --libexecdir=/usr/sbin \
--without-debug --without-docs --without-bench --without-readline \
--with-innodb --enable-local-infile --with-openssl \
--with-charset=latin1 --with-collation=latin1_general_ci \
--with-extra-charsets=complex --enable-thread-safe-client \
--with-libwrap --with-berkeley-db --with-embedded-server
# fixes
sed -i -e 's/^.*HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE.*$/#define\ HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE/g' include/config.h || return 1
sed -i -e 's/size_socket/socklen_t/g' sql/mysqld.cc || return 1
pushd include || return
make || return 1
popd
pushd libmysql
make link_sources get_password.lo || return
popd
make || return 1
make DESTDIR=${startdir}/pkg install
rm -rf ${startdir}/pkg/usr/{mysql-test,sql-bench}
install -D -m644 ../my.cnf ${startdir}/pkg/etc/my.cnf
install -D -m755 ../mysqld ${startdir}/pkg/etc/rc.d/mysqld
install -D -m644 ../mysqld.conf.d ${startdir}/pkg/etc/conf.d/mysqld
rm -f ${startdir}/pkg/usr/bin/mysql_config
md5sums=('')
Amarok:
# $Id: PKGBUILD 17565 2008-10-31 03:06:04Z pierre $
pkgname=amarok
pkgver=2.0.1.1
pkgrel=1
pkgdesc="A powerful music player with an intuitive interface"
arch=('i686' 'x86_64')
url='http://amarok.kde.org'
license=('GPL' 'LGPL' 'FDL')
depends=('kdelibs' 'kdebase-runtime' 'libgpod' 'libmtp' 'loudmouth' 'libmp4v2' 'taglib')
makedepends=('pkgconfig' 'cmake' 'automoc4' 'mysql')
provides=('amarok-base')
install='amarok.install'
source=("http://download.kde.org/stable/${pkgname}/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2")
build() {
cd $srcdir
mkdir build
cd build
cmake ../${pkgname}-${pkgver} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr
make
make DESTDIR=$pkgdir install
Edit: to recap:
1. Theres kde apps that need kdelibs, provided either by arch kde or kdemod
2. Theres QT apps that only need qt but no kdelibs
3. Theres gnome apps that need gnomelibs
4. Theres GTK apps that only need GTK but no gnomelibs
Last edited by Mikko777 (2009-01-16 16:01:46)
Similar Messages
-
How can I have both functions "Read Only" & "Write" mode on the same form?
Dear all,
How can I have both functions "Read Only" & "Write" mode on the same form? Is it possibile for this?
Please advice,
AmyThis is what I use in some dialogs:
PROCEDURE SET_QUERY_ONLY IS
-- Procedure Set_query_only
-- Rend les blocks non modifiables --
-- Disable menus Insert/Delete/Clear --
-- Entree :
-- Sortie :
-- Ent/Sortie :
-- Creation : FD 10/2003
-- Modification :
LC$Block Varchar2(30) ;
BEGIN
Set_Menu_Item_Property('Edit.Insert', ENABLED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Edit.Remove', ENABLED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Edit.Clear', ENABLED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Action.Save', ENABLED, PROPERTY_FALSE ) ;
LC$Block := get_form_property( NAME_IN('System.Current_Form'), FIRST_BLOCK ) ;
-- Tous les blocs en Query only --
While LC$Block is not null Loop
Enable_Block( LC$Block, FALSE ) ;
LC$Block := get_block_property( LC$Block, NEXTBLOCK ) ;
End loop ;
END;
PROCEDURE ENABLE_BLOCK
PC$Block in Varchar2,
PB$Enable in Boolean Default TRUE
) IS
-- Procedure Enable_block
-- Rend le bloc Enable / Disable --
-- Entree : PC$Block (nom du bloc Forms)
-- : PB$Enable (TRUE ou FALSE)
-- Sortie :
-- Ent/Sortie :
-- Creation : FD 10/2003
-- Modification :
BEGIN
If PB$Enable Then
Set_Block_Property( PC$Block, INSERT_ALLOWED, PROPERTY_TRUE ) ;
Set_Block_Property( PC$Block, UPDATE_ALLOWED, PROPERTY_TRUE ) ;
Set_Block_Property( PC$Block, DELETE_ALLOWED, PROPERTY_TRUE ) ;
Set_Menu_Item_Property('Edit.Insert', ENABLED, PROPERTY_TRUE ) ;
Set_Menu_Item_Property('Edit.Remove', ENABLED, PROPERTY_TRUE ) ;
Set_Menu_Item_Property('Edit.Clear', ENABLED, PROPERTY_TRUE ) ;
Set_Menu_Item_Property('Action.Save', ENABLED, PROPERTY_TRUE ) ;
Else
Set_Block_Property( PC$Block, INSERT_ALLOWED, PROPERTY_FALSE ) ;
Set_Block_Property( PC$Block, UPDATE_ALLOWED, PROPERTY_FALSE ) ;
Set_Block_Property( PC$Block, DELETE_ALLOWED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Edit.Insert', ENABLED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Edit.Remove', ENABLED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Edit.Clear', ENABLED, PROPERTY_FALSE ) ;
Set_Menu_Item_Property('Action.Save', ENABLED, PROPERTY_FALSE ) ;
End if ;
END;Francois -
Jobs to run the function modules to extract the generic extarctors
Gurus,
I have a Datasource 'ZCMS_PP_TRAN' with extract structure 'ZBW_ST_CMSD_PP'. The extract structure is populated using the function module Z_BW_GET_CMSD_PP.
But how do I schedule this FM or in general, are they run using std programs?
Thanks,
SimmiHi Simmi,
what ever it may be the DS(i mean Business Content DS, Generic DS).... these will extract the Data using Dynamic Function Calls(not always). Comming to Generic DS using FM, this will be called using Dynamic Function Module.
In RSA3 or while extracting data from BW, you will pass request number, Update Mode, debugging option, selection fields, BW source System ID, DS Name.
Based on these details system will extract the underlying extract structure and function module(or table/view/infoset).
No job(Job created from BW while extracting data in the source system BI_requestid) created for Generic DS while extracting data in SAP.
For Queue Delta, Background job will be created, it will move the data to Delta Queue.
i will update the thread with related function modules. Try to debugg in RSA3, you could find all the information.
all the best.
Nagesh. -
How can I use Automator to toggle the Function Keys?
I am trying to create a Automated process to toggle the Function Keys on my keyboard. This is because I use several programs, including After Effects, which use the F1-12 keys, but when I am not using that program I commonly use the Apple-defined shortcuts on the keyboard. I have a full-sized keyboard, hence no Fn key. So that's out right away – I've read several comments on this topic where people suggested that this is the ONLY option. I refuse to beleive that.
Automator contains a "Watch Me Do" feature, which I have tried to use to record this process. Problem is, it never clicks the right object. If I record clicking the dock, the magnification (I suspect) throws off the virtual-controlled mouse and picks the wrong object. If I record the Apple Menu route, it gets it about 1/2 the time.
I think what I'm really looking for is a console command I can feed into the Terminal which toggles the keys. It seems to be that this HAS to be an option, even if it is more than one line of commands. I believe if I can feed this process into Automator, it would work.
Any ideas?
Thanks in advance, Mac Geniuses!iKey lets you define function keys per application. You seem to want to turn on & off the defined apple keys. Not sure if these keyboard re-mappers will do the trick.
Here is my other most favored application. Of course, I haven't checked these out in newer OS's. I'm a Tiger man myself.
iKey is a front end program that simulates typing and mouse movements. I use iKey to remap the Function keys.
"iKey is an automation utility, a program that creates shortcuts to accomplish repetitive tasks. In essence, an iKey shortcut is a little program in its own right, but you don't need to know the first thing about programming to create an iKey shortcut. All you have to do is put together three necessary parts of a shortcut: One or more commands that give the shortcut its functionality, a context in which it runs, and a launcher that defines how the shortcut is activated."
http://www.scriptsoftware.com/ikey/
iKey has a little more function then the previous free version called youpi key. For many years, I used youpi key before switching to iKey. It works fairly well for me in MAC OS 10.4 although not officially supported. The youpi key download is hard to find & no longer here.
http://www.versiontracker.com/dyn/moreinfo/macosx/11485&vid=75326
( Send me a message for a copy of youpi key. )
*Examples:*
I have the common programs that I use assigned to function keys. I have F4 assigned to Firefox. When I want to start FireFox, I press F4. When I want to switch to firefox, I press F4! Starting & switching to an application in Mac OS are the same thing in Mac OS.
Here is an example of to assign volumn control to a function key.
http://discussions.apple.com/message.jspa?messageID=10361085#10361085
Here is my script for listing my application folder. I have it assigned to function-key 6.
tell application "Finder"
open folder "Applications" of startup disk
select Finder window 1
set bounds of Finder window 1 to {-3, 44, 691, 545}
--set position of Finder window 1 to {33, 44}
set position of Finder window 1 to {60, 45}
activate
end tell
The second portion of this script was generated in the script editor record mode. After I recorded the script and did some editing, I copy the script to ikey/youpi key.
Full Key Codes
http://download.cnet.com/Full-Key-Codes/3000-2094_4-44175.html
Spark
"Spark is a powerful, and easy Shortcuts manager. With Spark you can create Hot Keys to launch applications and documents, execute AppleScript, command iTunes, and more... You can also export and import your Hot Keys library, or save it in HTML format to print it. Spark is free, so use it without moderation!"
http://www.versiontracker.com/dyn/moreinfo/macosx/22675
Mac OS X remap or rename keyboard keys
by vivek
So how do you remap or rename keyboard keys under Mac OS X?
Simply use DoubleCommand software. It is a free program
http://theos.in/apple/download-doublecommand-to-remap-keyboard-keys/
Keyboard Maestro is a powerful macro program for Mac OS X (including Tiger and Leopard) which has received glowing reviews. Keyboard Maestro will take your Macintosh experience to a new level in “Ease of Use”. With Keyboard Maestro you can design a custom action sequence with your own shortcuts and use them at any time, you can navigate through running applications and open windows with Program Switcher, and you can work with an unlimited number of clipboards - all by pressing simple keystrokes.
http://www.keyboardmaestro.com/main/
"Spark is a powerful, and easy Shortcuts manager. With Spark you can create Hot Keys to launch applications and documents, execute AppleScript, command iTunes, and more... You can also export and import your Hot Keys library, or save it in HTML format to print it. Spark is free, so use it without moderation"
http://www.versiontracker.com/dyn/moreinfo/macosx/22675 -
Error while using the function module GUI_UPLOAD
Hi,
My requirement is to upload the data from .txt file into internal table.
I have given my code like this
PARAMETERS: p_fname LIKE rlgrap-filename.
data: begin of gt_string occurs 0,
record type char255,
end of gt_string.
AT SELECTION-SCREEN ON VALUE-REQUEST for p_fname.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
PROGRAM_NAME = SYST-REPID
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
STATIC = 'X'
MASK = ' '
CHANGING
file_name = p_fname
EXCEPTIONS
MASK_TOO_LONG = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = p_fname
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
CHECK_BOM = ' '
NO_AUTH_CHECK = ' '
IMPORTING
FILELENGTH =
HEADER =
tables
data_tab = gt_string
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Here I am getting dump error as 'Type conflict when calling a function module.
The function module interface allows you to specify only fields
of a particular type under "FILENAME". The field "P_FNAME" specified here has a different field type'.
What would be the reason for this error?
Can anyone help me?
Regards,
Hemasee this sample program for F4 help
*& Report ZSD_EXCEL_INT_APP
REPORT ZSD_EXCEL_INT_APP.
parameter: file_nm type localfile.
types : begin of it_tab1,
f1(20),
f2(40),
f3(20),
end of it_tab1.
data : it_tab type table of ALSMEX_TABLINE with header line,
file type rlgrap-filename.
data : it_tab2 type it_tab1 occurs 1,
wa_tab2 type it_tab1,
w_message(100) TYPE c.
at selection-screen on value-request for file_nm.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
PROGRAM_NAME = SYST-REPID
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
STATIC = 'X'
MASK = ' '
CHANGING
file_name = file_nm
EXCEPTIONS
MASK_TOO_LONG = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
start-of-selection.
refresh it_tab2[].clear wa_tab2.
file = file_nm.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = file
i_begin_col = '1'
i_begin_row = '1'
i_end_col = '10'
i_end_row = '35'
tables
intern = it_tab
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at it_tab.
case it_tab-col.
when '002'.
wa_tab2-f1 = it_tab-value.
when '004'.
wa_tab2-f2 = it_tab-value.
when '008'.
wa_tab2-f3 = it_tab-value.
endcase.
at end of row.
append wa_tab2 to it_tab2.
clear wa_tab2.
endat.
endloop.
data : p_file TYPE rlgrap-filename value 'TEST3.txt'.
OPEN DATASET p_file FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
*--- Display error messages if any.
IF sy-subrc NE 0.
MESSAGE e001(zsd_mes).
EXIT.
ELSE.
*---Data is downloaded to the application server file path
LOOP AT it_tab2 INTO wa_tab2.
TRANSFER wa_tab2 TO p_file.
ENDLOOP.
ENDIF.
*--Close the Application server file (Mandatory).
CLOSE DATASET p_file.
loop at it_tab2 into wa_tab2.
write : / wa_tab2-f1,wa_tab2-f2,wa_tab2-f3.
endloop. -
What are the functions of tables in ods
Hi,
what are the functions of tables in ods.
new data table
change log table
active data table.
How 0recordmode work with these 3 tables.
and how sid will work with ods?
can anyone give detailed explanation.
please do not give sap help links.
Thanks,
madhu
ThanksHi,
new table holds the "new" loaded data in ODS. If you start a new request to load data in your ODS, it firstgoes to table new data. Then you normally activate data either manually or by process chain. Then the daa will be copied over from new to active table. The change log table holds the delta information, what will change during activation or which records will be overwritten with new data or which data is new at all.
With recordmode you can specify which update mode will be used or more excalty which delta mode will be used. SID is necessary for master data, because ODS will only hold the SID values of the used characteristivcs and not the characteristic values itselfs. It's part of normalization used in BI.
For more details I recommend to look here in SDN, go to a class or read help.sap.com pages.
Regards,
Juergen -
My 27" iMac will not boot in normal mode. The screen stays white. The computer will boot in safe mode. Could this be virus related or is it possibly an issue with my video card. Before this happened, my computer screen was flashing weird things and the computer would unexpectedly power down.
1. This procedure is a diagnostic test. It changes nothing, for better or worse, and therefore will not, in itself, solve the problem. But with the aid of the test results, the solution may take a few minutes, instead of hours or days.
Don't be put off by the complexity of these instructions. The process is much less complicated than the description. You do harder tasks with the computer all the time.
2. If you don't already have a current backup, back up all data before doing anything else. The backup is necessary on general principle, not because of anything in the test procedure. Backup is always a must, and when you're having any kind of trouble with the computer, you may be at higher than usual risk of losing data, whether you follow these instructions or not.
There are ways to back up a computer that isn't fully functional. Ask if you need guidance.
3. Below are instructions to run a UNIX shell script, a type of program. As I wrote above, it changes nothing. It doesn't send or receive any data on the network. All it does is to generate a human-readable report on the state of the computer. That report goes nowhere unless you choose to share it. If you prefer, you can act on it yourself without disclosing the contents to me or anyone else.
You should be wondering whether you can believe me, and whether it's safe to run a program at the behest of a stranger. In general, no, it's not safe and I don't encourage it.
In this case, however, there are a couple of ways for you to decide whether the program is safe without having to trust me. First, you can read it. Unlike an application that you download and click to run, it's transparent, so anyone with the necessary skill can verify what it does.
You may not be able to understand the script yourself. But variations of the script have been posted on this website thousands of times over a period of years. The site is hosted by Apple, which does not allow it to be used to distribute harmful software. Any one of the millions of registered users could have read the script and raised the alarm if it was harmful. Then I would not be here now and you would not be reading this message.
Nevertheless, if you can't satisfy yourself that these instructions are safe, don't follow them. Ask for other options.
4. Here's a summary of what you need to do, if you choose to proceed:
☞ Copy a line of text in this window to the Clipboard.
☞ Paste into the window of another application.
☞ Wait for the test to run. It usually takes a few minutes.
☞ Paste the results, which will have been copied automatically, back into a reply on this page.
The sequence is: copy, paste, wait, paste again. You don't need to copy a second time. Details follow.
5. You may have started the computer in "safe" mode. Preferably, these steps should be taken in “normal” mode, under the conditions in which the problem is reproduced. If the system is now in safe mode and works well enough in normal mode to run the test, restart as usual. If you can only test in safe mode, do that.
6. If you have more than one user, and the one affected by the problem is not an administrator, then please run the test twice: once while logged in as the affected user, and once as an administrator. The results may be different. The user that is created automatically on a new computer when you start it for the first time is an administrator. If you can't log in as an administrator, test as the affected user. Most personal Macs have only one user, and in that case this section doesn’t apply. Don't log in as root.
7. The script is a single long line, all of which must be selected. You can accomplish this easily by triple-clicking anywhere in the line. The whole line will highlight, though you may not see all of it in the browser window, and you can then copy it. If you try to select the line by dragging across the part you can see, you won't get all of it.
Triple-click anywhere in the line of text below on this page to select it:
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/libexec;clear;cd;p=(Software Hardware Memory Diagnostics Power FireWire Thunderbolt USB Fonts SerialATA 4 1000 25 5120 KiB/s 1024 85 \\b%% 20480 1 MB/s 25000 ports ' com.clark.\* \*dropbox \*genieo\* \*GoogleDr\* \*k.AutoCAD\* \*k.Maya\* vidinst\* ' DYLD_INSERT_LIBRARIES\ DYLD_LIBRARY_PATH -86 "` route -n get default|awk '/e:/{print $2}' `" 25 N\\/A down up 102400 25600 recvfrom sendto CFBundleIdentifier 25 25 25 1000 MB ' com.adobe.AAM.Updater-1.0 com.adobe.CS4ServiceManager com.adobe.CS5ServiceManager com.adobe.fpsaud com.adobe.SwitchBoard com.apple.AirPortBaseStationAgent com.apple.FolderActions.enabled com.apple.FolderActions.folders com.apple.installer.osmessagetracing com.apple.mrt.uiagent com.apple.ReportCrash.Self com.apple.SafariNotificationAgent com.apple.usbmuxd com.google.keystone.agent com.google.keystone.daemon com.microsoft.office.licensing.helper com.oracle.java.Helper-Tool com.oracle.java.JavaUpdateHelper ' ' 879294308 3627668074 1083382502 1274181950 1855907737 464843899 3694147963 1417519526 1233118628 2456546649 2806998573 2636415542 842973933 3301885676 891055588 998894468 695903914 1443423563 ' 51 5120 files );N5=${#p[@]};p[N5]=` networksetup -listnetworkserviceorder|awk ' NR>1 { sub(/^\([0-9]+\) /,"");n=$0;getline;} $NF=="'${p[26]}')" { sub(/.$/,"",$NF);print n;exit;} ' `;f=('\n%s: %s\n' '\n%s\n\n%s\n' '\nRAM details\n%s\n' %s\ %s '%s\n-\t%s\n' );S0() { echo ' { q=$NF+0;$NF="";u=$(NF-1);$(NF-1)="";gsub(/^ +| +$/,"");if(q>='${p[$1]}') printf("%s (UID %s) is using %s '${p[$2]}'",$0,u,q);} ';};s=(' s/[0-9A-Za-z._]+@[0-9A-Za-z.]+\.[0-9A-Za-z]{2,4}/EMAIL/g;/faceb/s/(at\.)[^.]+/\1NAME/g;/\/Shared/!s/(\/Users\/)[^ /]+/\1USER/g;s/[-0-9A-Fa-f]{22,}/UUID/g;' ' s/^ +//;/de: S|[nst]:/p;' ' {sub(/^ +/,"")};/er:/;/y:/&&$2<'${p[10]} ' 1s/://;3,6d;/[my].+:/d;s/^ {4}//;H;${ g;s/\n$//;/s: [^EO]|x([^08]|02[^F]|8[^0])/p;} ' ' 5h;6{ H;g;/P/!p;} ' ' ($1~/^Cy/&&$3>'${p[11]}')||($1~/^Cond/&&$2!~/^N/) ' ' /:$/{ N;/:.+:/d;s/ *://;b0'$'\n'' };/^ *(V.+ [0N]|Man).+ /{ s/ 0x.... //;s/[()]//g;s/(.+: )(.+)/ (\2)/;H;};$b0'$'\n'' d;:0'$'\n'' x;s/\n\n//;/Apple[ ,]|Genesy|Intel|SMSC/d;s/\n.*//;/\)$/p;' ' s/^.*C/C/;H;${ g;/No th|pms/!p;} ' '/= [^GO]/p' '{$1=""};1' ' /Of/!{ s/^.+is |\.//g;p;} ' ' $0&&!/ / { n++;print;} END { if(n<10) print "com.apple.";} ' ' sub(/ :/,"");{ print|"tail -n'${p[12]}'";} ' ' NR==2&&$4<='${p[13]}' { print $4;} ' ' END { $2/=256;if($2>='${p[15]}') print int($2) } ' ' NR!=13{next};{sub(/[+-]$/,"",$NF)};'"`S0 21 22`" 'NR!=2{next}'"`S0 37 17`" ' NR!=5||$8!~/[RW]/{next};{ $(NF-1)=$1;$NF=int($NF/10000000);for(i=1;i<=3;i++){$i="";$(NF-1-i)="";};};'"`S0 19 20`" 's:^:/:p' '/\.kext\/(Contents\/)?Info\.plist$/p' 's/^.{52}(.+) <.+/\1/p' ' /Launch[AD].+\.plist$/ { n++;print;} END { if(n<200) print "/System/";} ' '/\.xpc\/(Contents\/)?Info\.plist$/p' ' NR>1&&!/0x|\.[0-9]+$|com\.apple\.launchctl\.(Aqua|Background|System)$/ { print $3;} ' ' /\.(framew|lproj)|\):/d;/plist:|:.+(Mach|scrip)/s/:[^:]+//p ' '/^root$/p' ' !/\/Contents\/.+\/Contents|Applic|Autom|Frameworks/&&/Lib.+\/Info.plist$/ { n++;print;} END { if(n<1100) print "/System/";} ' '/^\/usr\/lib\/.+dylib$/p' ' /Temp|emac/{next};/(etc|Preferences|Launch[AD].+)\// { sub(".(/private)?","");n++;print;} END { split("'"${p[41]}"'",b);split("'"${p[42]}"'",c);for(i in b) print b[i]".plist\t"c[i];if(n<500) print "Launch";} ' ' /\/(Contents\/.+\/Contents|Frameworks)\/|\.wdgt\/.+\.([bw]|plu)/d;p;' 's/\/(Contents\/)?Info.plist$//;p' ' { gsub("^| |\n","\\|\\|kMDItem'${p[35]}'=");sub("^...."," ") };1 ' p '{print $3"\t"$1}' 's/\'$'\t''.+//p' 's/1/On/p' '/Prox.+: [^0]/p' '$2>'${p[43]}'{$2=$2-1;print}' ' BEGIN { i="'${p[26]}'";M1='${p[16]}';M2='${p[18]}';M3='${p[31]}';M4='${p[32]}';} !/^A/{next};/%/ { getline;if($5<M1) a="user "$2"%, system "$4"%";} /disk0/&&$4>M2 { b=$3" ops/s, "$4" blocks/s";} $2==i { if(c) { d=$3+$4+$5+$6;next;};if($4>M3||$6>M4) c=int($4/1024)" in, "int($6/1024)" out";} END { if(a) print "CPU: "a;if(b) print "I/O: "b;if(c) print "Net: "c" (KiB/s)";if(d) print "Net errors: "d" packets/s";} ' ' /r\[0\] /&&$NF!~/^1(0|72\.(1[6-9]|2[0-9]|3[0-1])|92\.168)\./ { print $NF;exit;} ' ' !/^T/ { printf "(static)";exit;} ' '/apsd|BKAg|OpenD/!s/:.+//p' ' (/k:/&&$3!~/(255\.){3}0/ )||(/v6:/&&$2!~/A/ ) ' ' $1~"lR"&&$2<='${p[25]}';$1~"li"&&$3!~"wpa2";' ' BEGIN { FS=":";p="uniq -c|sed -E '"'s/ +\\([0-9]+\\)\\(.+\\)/\\\2 x\\\1/;s/x1$//'"'";} { n=split($3,a,".");sub(/_2[01].+/,"",$3);print $2" "$3" "a[n]$1|p;b=b$1;} END { close(p);if(b) print("\n\t* Code injection");} ' ' NR!=4{next} {$NF/=10240} '"`S0 27 14`" ' END { if($3~/[0-9]/)print$3;} ' ' BEGIN { L='${p[36]}';} !/^[[:space:]]*(#.*)?$/ { l++;if(l<=L) f=f"\n "$0;} END { F=FILENAME;if(!F) exit;if(!f) f="\n [N/A]";"cksum "F|getline C;split(C, A);C="checksum "A[1];"file -b "F|getline T;if(T!~/^(AS.+ (En.+ )?text(, with v.+)?$|(Bo|PO).+ sh.+ text ex|XM)/) F=F" ("T", "C")";else F=F" ("C")";printf("\nContents of %s\n%s\n",F,f);if(l>L) printf("\n ...and %s more line(s)\n",l-L);} ' ' s/^ ?n...://p;s/^ ?p...:/-'$'\t''/p;' 's/0/Off/p' ' END{print NR} ' ' /id: N|te: Y/{i++} END{print i} ' ' / / { print "'"${p[28]}"'";exit;};1;' '/ en/!s/\.//p' ' NR!=13{next};{sub(/[+-M]$/,"",$NF)};'"`S0 39 40`" ' $10~/\(L/&&$9!~"localhost" { sub(/.+:/,"",$9);print $1": "$9;} ' '/^ +r/s/.+"(.+)".+/\1/p' 's/(.+\.wdgt)\/(Contents\/)?Info\.plist$/\1/p' 's/^.+\/(.+)\.wdgt$/\1/p' ' /l: /{ /DVD/d;s/.+: //;b0'$'\n'' };/s: /{ /V/d;s/^ */- /;H;};$b0'$'\n'' d;:0'$'\n'' x;/APPLE [^:]+$/d;p;' ' /^find: /d;p;' "`S0 44 45`" ' BEGIN{FS="= "} /Path/{print $2} ' ' /^ *$/d;s/^ */ /;' ' s/^.+ |\(.+\)$//g;p ' '/\.appex\/Contents\/Info\.plist$/p' ' /2/{print "WARN"};/4/{print "CRITICAL"};' );c1=(system_profiler pmset\ -g nvram fdesetup find syslog df vm_stat sar ps sudo\ crontab sudo\ iotop top pkgutil 'PlistBuddy 2>&1 -c "Print' whoami cksum kextstat launchctl sudo\ launchctl crontab 'sudo defaults read' stat lsbom mdfind ' for i in ${p[24]};do ${c1[18]} ${c2[27]} $i;done;' defaults\ read scutil sudo\ dtrace sudo\ profiles sed\ -En awk /S*/*/P*/*/*/C*/*/airport networksetup mdutil sudo\ lsof test osascript\ -e sysctl\ -n pluginkit );c2=(com.apple.loginwindow\ LoginHook '" /L*/P*/loginw*' "'tell app \"System Events\" to get properties of login items'|tr , \\\n" 'L*/Ca*/com.ap*.Saf*/E*/* -d 1 -name In*t -exec '"${c1[14]}"' :CFBundleDisplayName" {} \;|sort|uniq' '~ $TMPDIR.. \( -flags +sappnd,schg,uappnd,uchg -o ! -user $UID -o ! -perm -600 \)' '.??* -path .Trash -prune -o -type d -name *.app -print -prune' :${p[35]}\" :Label\" '{/,}L*/{Con,Pref}* -type f ! -size 0 -name *.plist -exec plutil -s {} \;' "-f'%N: %l' Desktop L*/Keyc*" therm sysload boot-args status " -F '\$Time \$(RefProc): \$Message' -k Sender kernel -k Message Req 'bad |Beac|caug|corru|dead[^bl]|FAIL|fail|GPU |hfs: Ru|inval|jnl:|last value [1-9]|n Cause: -|NVDA\(|pagin|proc: t|Roamed|rror|ssert|Thrott|tim(ed? ?|ing )o|WARN' -k Message Rne 'Goog|ksadm|Roame|SMC:|suhel| VALI|ver-r|xpma' -o -o -k Sender fseventsd -k Message Req SL -o -k Sender Req launchd -k Message Req de: " '-du -n DEV -n EDEV 1 10' 'acrx -o comm,ruid,%cpu' '-t1 10 1' '-f -pfc /var/db/r*/com.apple.*.{BS,Bas,Es,J,OSXU,Rem,up}*.bom' '{/,}L*/Lo*/Diag* -type f -regex .\*[cght] ! -name .?\* ! -name \*ag \( -exec grep -lq "^Thread c" {} \; -exec printf \* \; -o -true \) -execdir stat -f:%Sc:%N -t%F {} \;|sort -t: -k2 |tail -n'${p[38]} '/S*/*/Ca*/*xpc* >&- ||echo No' '-L /{S*/,}L*/StartupItems -type f -exec file {} +' '-L /S*/L*/{C*/Sec*A,Ex}* {/,}L*/{A*d,Ca*/*/Ex,Co{mpon,reM},Ex,In{p,ter},iTu*/*P,Keyb,Mail/B,Pr*P,Qu*T,Scripti,Sec,Servi,Spo,Widg}* -path \\*s/Resources -prune -o -type f -name Info.plist' '/usr/lib -type f -name *.dylib' `awk "${s[31]}"<<<${p[23]}` "/e*/{auto,{cron,fs}tab,hosts,{[lp],sy}*.conf,mach_i*/*,pam.d/*,ssh{,d}_config,*.local} {,/usr/local}/etc/periodic/*/* /L*/P*{,/*}/com.a*.{Bo,sec*.ap}*t {/S*/,/,}L*/Lau*/*t .launchd.conf" list getenv /Library/Preferences/com.apple.alf\ globalstate --proxy '-n get default' -I --dns -getdnsservers\ "${p[N5]}" -getinfo\ "${p[N5]}" -P -m\ / '' -n1 '-R -l1 -n1 -o prt -stats command,uid,prt' '--regexp --only-files --files com.apple.pkg.*|sort|uniq' -kl -l -s\ / '-R -l1 -n1 -o mem -stats command,uid,mem' '+c0 -i4TCP:0-1023' com.apple.dashboard\ layer-gadgets '-d /L*/Mana*/$USER&&echo On' '-app Safari WebKitDNSPrefetchingEnabled' "+c0 -l|awk '{print(\$1,\$3)}'|sort|uniq -c|sort -n|tail -1|awk '{print(\$2,\$3,\$1)}'" -m 'L*/{Con*/*/Data/L*/,}Pref* -type f -size 0c -name *.plist.???????|wc -l' kern.memorystatus_vm_pressure_level );N1=${#c2[@]};for j in {0..9};do c2[N1+j]=SP${p[j]}DataType;done;N2=${#c2[@]};for j in 0 1;do c2[N2+j]="-n ' syscall::'${p[33+j]}':return { @out[execname,uid]=sum(arg0) } tick-10sec { trunc(@out,1);exit(0);} '";done;l=(Restricted\ files Hidden\ apps 'Elapsed time (s)' POST Battery Safari\ extensions Bad\ plists 'High file counts' User Heat System\ load boot\ args FileVault Diagnostic\ reports Log 'Free space (MiB)' 'Swap (MiB)' Activity 'CPU per process' Login\ hook 'I/O per process' Mach\ ports kexts Daemons Agents XPC\ cache Startup\ items Admin\ access Root\ access Bundles dylibs Apps Font\ issues Inserted\ dylibs Firewall Proxies DNS TCP/IP Wi-Fi Profiles Root\ crontab User\ crontab 'Global login items' 'User login items' Spotlight Memory Listeners Widgets Parental\ Controls Prefetching SATA Descriptors App\ extensions Lockfiles Memory\ pressure );N3=${#l[@]};for i in 0 1 2;do l[N3+i]=${p[5+i]};done;N4=${#l[@]};for j in 0 1;do l[N4+j]="Current ${p[29+j]}stream data";done;A0() { id -G|grep -qw 80;v[1]=$?;((v[1]==0))&&sudo true;v[2]=$?;v[3]=`date +%s`;clear >&-;date '+Start time: %T %D%n';};for i in 0 1;do eval ' A'$((1+i))'() { v=` eval "${c1[$1]} ${c2[$2]}"|'${c1[30+i]}' "${s[$3]}" `;[[ "$v" ]];};A'$((3+i))'() { v=` while read i;do [[ "$i" ]]&&eval "${c1[$1]} ${c2[$2]}" \"$i\"|'${c1[30+i]}' "${s[$3]}";done<<<"${v[$4]}" `;[[ "$v" ]];};A'$((5+i))'() { v=` while read i;do '${c1[30+i]}' "${s[$1]}" "$i";done<<<"${v[$2]}" `;[[ "$v" ]];};';done;A7(){ v=$((`date +%s`-v[3]));};B2(){ v[$1]="$v";};for i in 0 1;do eval ' B'$i'() { v=;((v['$((i+1))']==0))||{ v=No;false;};};B'$((3+i))'() { v[$2]=`'${c1[30+i]}' "${s[$3]}"<<<"${v[$1]}"`;} ';done;B5(){ v[$1]="${v[$1]}"$'\n'"${v[$2]}";};B6() { v=` paste -d: <(printf "${v[$1]}") <(printf "${v[$2]}")|awk -F: ' {printf("'"${f[$3]}"'",$1,$2)} ' `;};B7(){ v=`grep -Fv "${v[$1]}"<<<"$v"`;};C0() { [[ "$v" ]]&&sed -E "$s"<<<"$v";};C1() { [[ "$v" ]]&&printf "${f[$1]}" "${l[$2]}" "$v"|sed -E "$s";};C2() { v=`echo $v`;[[ "$v" != 0 ]]&&C1 0 $1;};C3() { v=`sed -E "${s[63]}"<<<"$v"`&&C1 1 $1;};for i in 1 2;do for j in 0 2 3;do eval D$i$j'(){ A'$i' $1 $2 $3; C'$j' $4;};';done;done;{ A0;D20 0 $((N1+1)) 2;D10 0 $N1 1;B0;C2 27;B0&&! B1&&C2 28;D12 15 37 25 8;A1 0 $((N1+2)) 3;C0;D13 0 $((N1+3)) 4 3;D23 0 $((N1+4)) 5 4;D13 0 $((N1+9)) 59 50;for i in 0 1 2;do D13 0 $((N1+5+i)) 6 $((N3+i));done;D13 1 10 7 9;D13 1 11 8 10;D22 2 12 9 11;D12 3 13 10 12;D23 4 19 44 13;D23 5 14 12 14;D22 6 36 13 15;D22 38 52 66 54;D22 7 37 14 16;D23 8 15 38 17;D22 9 16 16 18;B1&&{ D22 35 49 61 51;D22 11 17 17 20;for i in 0 1;do D22 28 $((N2+i)) 45 $((N4+i));done;};D22 12 44 54 45;D22 12 39 15 21;A1 13 40 18;B2 4;B3 4 0 19;A3 14 6 32 0;B4 0 5 11;A1 17 41 20;B7 5;C3 22;B4 4 6 21;A3 14 7 32 6;B4 0 7 11;B3 4 0 22;A3 14 6 32 0;B4 0 8 11;B5 7 8;B1&&{ A2 19 26 23;B7 7;C3 23;};A2 18 26 23;B7 7;C3 24;D13 4 21 24 26;B4 4 12 26;B3 4 13 27;A1 4 22 29;B7 12;B2 14;A4 14 6 52 14;B2 15;B6 14 15 4;B3 0 0 30;C3 29;A1 4 23 27;B7 13;C3 30;B3 4 0 65;A3 14 6 32 0;B4 0 16 11;A1 39 50 64;B7 16;C3 52;D13 24 24 32 31;D13 25 37 32 33;A2 23 18 28;B2 16;A2 16 25 33;B7 16;B3 0 0 34;B2 21;A6 47 21&&C0;B1&&{ D13 21 0 32 19;D13 10 42 32 40;D22 29 35 46 39;};D23 14 1 62 42;D12 34 43 53 44;D12 22 20 32 25;D22 0 $((N1+8)) 51 32;D13 4 8 41 6;D12 26 28 35 34;D13 27 29 36 35;A2 27 32 39&&{ B2 19;A2 33 33 40;B2 20;B6 19 20 3;};C2 36;D23 33 34 42 37;B1&&D23 35 45 55 46;D23 32 31 43 38;D12 36 47 32 48;D13 20 42 32 41;D13 37 2 48 43;D13 4 5 32 1;D13 4 3 60 5;D12 26 48 49 49;B3 4 22 57;A1 26 46 56;B7 22;B3 0 0 58;C3 47;D22 4 4 50 0;D12 4 51 32 53;D23 22 9 37 7;A7;C2 2;} 2>/dev/null|pbcopy;exit 2>&-
Copy the selected text to the Clipboard by pressing the key combination command-C.
8. Launch the built-in Terminal application in any of the following ways:
☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
☞ Open LaunchPad. Click Utilities, then Terminal in the icon grid.
Click anywhere in the Terminal window and paste by pressing command-V. The text you pasted should vanish immediately. If it doesn't, press the return key.
9. If you see an error message in the Terminal window such as "Syntax error" or "Event not found," enter
exec bash
and press return. Then paste the script again.
10. If you're logged in as an administrator, you'll be prompted for your login password. Nothing will be displayed when you type it. You will not see the usual dots in place of typed characters. Make sure caps lock is off. Type carefully and then press return. You may get a one-time warning to be careful. If you make three failed attempts to enter the password, the test will run anyway, but it will produce less information. In most cases, the difference is not important. If you don't know the password, or if you prefer not to enter it, press the key combination control-C or just press return three times at the password prompt. Again, the script will still run.
If you're not logged in as an administrator, you won't be prompted for a password. The test will still run. It just won't do anything that requires administrator privileges.
11. The test may take a few minutes to run, depending on how many files you have and the speed of the computer. A computer that's abnormally slow may take longer to run the test. While it's running, there will be nothing in the Terminal window and no indication of progress. Wait for the line
[Process completed]
to appear. If you don't see it within half an hour or so, the test probably won't complete in a reasonable time. In that case, close the Terminal window and report what happened. No harm will be done.
12. When the test is complete, quit Terminal. The results will have been copied to the Clipboard automatically. They are not shown in the Terminal window. Please don't copy anything from there. All you have to do is start a reply to this comment and then paste by pressing command-V again.
At the top of the results, there will be a line that begins with the words "Start time." If you don't see that, but instead see a mass of gibberish, you didn't wait for the "Process completed" message to appear in the Terminal window. Please wait for it and try again.
If any private information, such as your name or email address, appears in the results, anonymize it before posting. Usually that won't be necessary.
13. When you post the results, you might see an error message on the web page: "You have included content in your post that is not permitted," or "You are not authorized to post." That's a bug in the forum software. Please post the test results on Pastebin, then post a link here to the page you created.
14. This is a public forum, and others may give you advice based on the results of the test. They speak only for themselves, and I don't necessarily agree with them.
Copyright © 2014 by Linc Davis. As the sole author of this work, I reserve all rights to it except as provided in the Use Agreement for the Apple Support Communities website ("ASC"). Readers of ASC may copy it for their own personal use. Neither the whole nor any part may be redistributed. -
IPhoto 11 slideshow mode decreases the image sharpness and quality
The images that weight over 5 MB and are fine and sharp become somewhat blured when displayed in the iPhoto '11 slideshow mode. The loss of image sharpness is just too big. The pictures look like they were made with a 100$ camera or even worse. I know the images are fine and big enough. I used picasa slideshow mode just to check. I saw a much better image quality and no noticable lose of sharpness.
Anyone has an idea why the iPhoto 11 slideshow mode looses so much image sharpness?We all like iPhoto and its ease of use, good looks and fancy features.
However Aplle must concentrate on the core .... sufficient quality of the displayed images. The colors, sharpness, tones - the essence of photography
I understand that iPhoto is not the Aperture. But if the Slide Show mode virtually washes the sharpness away from the pictures than something is not right! Picture that is not sharp is worth the trash
If picasa slide show can do it I am sure iPhoto slide show can do it even better! We are waiting for the upgrade -
How to get the functionality of FM 'RV_PRICE_PRINT_ITEM' for archived data
Hi All,
I am trying to print archived billing data using archiving object SD_VBRK. I am able to print all the related information except the pricing.
Apart from reading all the tables archived under the archiving object SD_VBRK, I also need to use the function module 'RV_PRICE_PRINT_ITEM' to print the pricing related information on the SAP form.
However this function module reads the data from standard tables KONV etc., which are archived. Due to this I can not use this function module for printing the pricing related information for archived billing document.
However I need to incorporate similar functionality for the archived data.
Can anyone help me in replacing the FM 'RV_PRICE_PRINT_ITEM' for the archived data.
Thanks and Regards,
SanthoshiPlease use this FM to read information from the Archived mode '/PBS/RV_PRICE_PRINT_ITEM'
Thanks,
Ranjith. -
Doubt in the function module POPUP_GET_VALUES
Hi,
i am using the function module POPUP_GET_VALUES. I am giving the table name and field name but the field name shows in display mode i am not able to enter any values in the given popup. What is the problemHi,
U can go through the FM documentation:
Dialog box for the display and request of values, without check
Preliminary comment
This function module has been released.
The documentation is being revised so that it conforms to the requirements for released function modules.
Function
This function module sends a dialog box and includes the fields specified in the FIELDS interface table. The fields specified in the FIELDS table must be defined in the ABAP Dictionary.
If no text is specified for a field, the ABAP Dictionary key word is displayed. The key words and fields can be displayed normally or highlighted. You must also define whether the fields are ready for input or not, and whether they are mandatory or not. Defaults can be defined for the fields.
After the display, the values entered by the user in the date and time fields are checked for formatting and plausability. Otherwise, the values entered are returned to the user unchecked.
The function module can be used, for example, to:
Display information
Request values which do not need to be checked
Request values to limit data accesses ( from - to)
Support prototyping
Examples
For examples, see the program RSSPO410.
Notes
Conversion exits are handled normally.
References from CURR and QUAN fields are handled if the reference fields are also specified. The display of the reference fields can be suppressed.
If a currency field (type CURR) is specified, then the field assigned in the ABAP Dictionary for the currency key (type CUKY) must also be specified. The display of the currency key field can be suppressed (if filled initially).
Dates are checked according to the definition in the user master data.
Times must be entered using the '__:__:__' template.
F1 help and F4 help are supported.
Each field can be specified once only. Repeated fields or field groups are not supported. Table names preceded by an asterisk are an exception to this.
Only fields wih the ABAP type C, N, T, D, P, or Integer are permitted.
No updates are performed.
A maximum of ten fields can be displayed in a dialog box. If there are more than ten fields, a dialog box with a scroll bar is sent. You can use the POPUP_GET_VALUES_SET_MAX_FIELD function module to change the maximum number of fields in a dialog box.
If you use this function module, remember that ABAP Dictionary tables are sent implicitly using variables. A cross-reference across tables used in programs cannot determine these tables. For this reason, declare the tables under TABLES in the calling program.
Hope this helps. -
Hello, everybody, who know how to use the function READ_TEXT
Hello , everybody, I came across a program in which there is a function READ_TEXT, what is it used for ? please specify the parameters id object
. Thank you in advance, mate.
Best regards
Frank
CALL FUNCTION 'READ_TEXT'
EXPORTING
CLIENT = SY-MANDT
id = '0207'
language = sy-langu
name = tmp_name
object = 'VBBK'
ARCHIVE_HANDLE = 0
LOCAL_CAT = ' '
IMPORTING
HEADER =
TABLES
lines = text_itab
EXCEPTIONS
id = 1
language = 2
name = 3
not_found = 4
object = 5
reference_check = 6
wrong_access_to_archive = 7
OTHERS = 8Refer this link:
http://help.sap.com/saphelp_nw04/helpdata/en/d6/0db764494511d182b70000e829fbfe/frameset.htm
READ_TEXT provides a text for the application program in the specified work areas.
The function module reads the desired text from the text file, the text memory, or the archive. You must fully specify the text using OBJECT, NAME, ID, and LANGUAGE. An internal work area can hold only one text; therefore, generic specifications are not allowed with these options.
After successful reading, the system places header information and text lines into the work areas specified with HEADER and LINES.
If a reference text is used, SAPscript automatically processes the reference chain and provides the text lines found in the text at the end of the chain. If an error occurs, the system leaves the function module and triggers the exception REFERENCE_CHECK.
Function call:
CALL FUNCTION 'READ_TEXT'
EXPORTING CLIENT = SY-MANDT
OBJECT = ?...
NAME = ?...
ID = ?...
LANGUAGE = ?...
ARCHIVE_HANDLE = 0
IMPORTING HEADER =
TABLES LINES = ?...
EXCEPTIONS ID =
LANGUAGE =
NAME =
NOT_FOUND =
OBJECT =
REFERENCE_CHECK =
WRONG_ACCESS_TO_ARCHIVE =
Export parameters:
CLIENT
Specify the client under which the text is stored. If you omit this parameter, the system uses the current client as default.
Reference field: SY-MANDT
Default value: SY-MANDT
OBJECT
Enter the name of the text object to which the text is allocated. Table TTXOB contains the valid objects.
Reference field: THEAD-TDOBJECT
NAME
Enter the name of the text module. The name may be up to 70 characters long. Its internal structure depends on the text object used.
Reference field: THEAD-TDNAME
ID
Enter the text ID of the text module. Table TTXID contains the valid text IDs, depending on the text object.
Reference field: THEAD-TDID
LANGUAGE
Enter the language key of the text module. The system accepts only languages that are defined in table T002.
Reference field: THEAD-TDSPRAS
ARCHIVE_HANDLE
If you want to read the text from the archive, you must enter a handle here. The system uses it to access the archive. You can create the handle using the function module ACHIVE_OPEN_FOR_READ.
The value '0' indicates that you do not want to read the text from the archive.
Reference field: SY-TABIX
Default value: 0
Import parameters:
HEADER
If the system finds the desired text, it returns the text header in this parameter.
Structure: THEAD
Table parameters:
LINES
The table contains all text lines that belong to the text read.
Structure: TLINE
Exceptions:
ID
The text ID specified in the parameter ID does not exist in table TTXID. It must be defined there together with the object of the text module.
LANGUAGE
The parameter LANGUAGE contains a language key that does not exist in table T002.
NAME
The parameter NAME contains the name of a text module that does not correspond to the SAPscript conventions.
Possible errors:
The field contains only blanks.
The field contains the invalid characters * or ,.
OBJECT
The parameter OBJECT contains the name of a text object that does not exist in table TTXOB.
NOT_FOUND
The system did not find the specified text module.
REFERENCE_CHECK
The text module to be read has no text lines of its own but refers to the lines of another text module. This reference chain can include several levels. For the current text, the chain is interrupted, that is, one of the text modules referred to in the chain no longer exists.
WRONG_ACCESS_ TO_ARCHIVE
The exception WRONG_ACCESS_TO_ARCHIVE is triggered if an archive is accessed using an incorrect or non-existing archive handle or an incorrect mode (that is, read if the archive is open for writing or vice versa).
Raja T -
Regarding the function module 'REUSE_ALV_GRID_DISPLAY'
wat do these things do in 'REUSE_ALV_GRID_DISPLAY' function module and how to use them??
IS_VARIANT =
IT_EVENTS =
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0Hi
See the function module Documentation,
Passing an EXIT routine indicates to the ALV that the application wants to respond to certain function codes.
Generally, these are function codes that are unknown to the ALV (that is, are not standard ALV functions) and that were defined and set by a user status.
See also the documentation on parameter I_CALLBACK_PF_STATUS_SET.
The interface of the form routine specified must be defined as follows:
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
Parameter R_UCOMM contains the function code triggered.
Structure RS_SELFIELD contains the following information:
tabname : Name of the internal output table
tabindex : Index of the internal output table
fieldname: Field name
endsum : Cursor is located on the totals line
sumindex : If >0, the cursor is located on a subtotals line
value : Value of the field on the list
refresh : (Exporting) List should be set up again
col_stable:(Exporting) Keep column position when list is set up again
row_stable:(Exporting) Keep row position when list is set up again
exit :(Exporting) Exit list (and ALV)
before_action: Call before standard action execution
after_action : Call after standard action execution, before list setup
ignore_multi : Internal use
sel_tab_field: Internal use
The EXIT routine is called whenever a function unknown to the ALV is triggered or if the routine call before/after the execution of a standard function code has been defined by interface parameter IT_EVENT_EXIT.
See also the documentation on parameter IT_EVENT_EXIT.
The function code and the current cursor position are then passed on to the calling program through the EXIT routine.
If the user has selected multiple rows by selecting checkboxes, the output table field designated as the checkbox contains the current state of the checkbox in the list.
Top_Of_page :
If the caller specifies an EXIT routine, this routine must have the following form:
FORM top_of_page.
Module REUSE_ALV_COMMENTARY_WRITE can then be called within the EXIT routine. This module is responsible for formatting the header information and also ensures online HTML formatting. In the print preview or in batch mode, the text passed is then output in the normal format.
If module REUSE_ALV_COMMENTARY_WRITE cannot be used, you must use two parameters instead. In I_CALLBACK_TOP_OF_PAGE you pass the form routine that is responsible for normal formatting in batch mode or in the print preview mode. The form routine that is responsible for online formatting, is passed in parameter I_CALLBACK_HTML_TOP_OF_PAGE. If one of these parameters is not filled, top-of-page is not output in the respective mode.
The important parameters are :
I. Export :
i. I_callback_program : report id
ii. I_callback_pf_status_set : routine where a user can set his own pf status or change the functionality of the existing pf status
iii. I_callback_user_command : routine where the function codes are handled
iv. I_structure name : name of the dictionary table
v. Is_layout : structure to set the layout of the report
vi. It_fieldcat : internal table with the list of all fields and their attributes which are to be printed (this table can be populated automatically by the function module REUSE_ALV_FIELDCATALOG_MERGE
vii. It_events : internal table with a list of all possible events of ALV and their corresponding form names.
II. Tables :
i. t_outtab : internal table with the data to be output
<b>REward if usefull</b> -
Debugging the Functional Module in Background.
I am calling a Custom Functional module in Background mode using the syntax CALL FUNCTION ZFM in background task.
Can anyone tell how to debug the code using this..
Thanks ,
YatishHello Yatish
You could try to use the following trick:
(1) Put an endless loop into the coding of your function module where you want to start debugging, e.g.
DATA:
lx_exit_loop(1) TYPE c.
lx_exit_loop = ' '.
DO.
IF ( lx_exit_loop = 'X' ).
EXIT.
ENDIF.
ENDDO.
(2) Call your function module in background task
(3) Call transaction <b>SM50</b> and search for the background process.
(3) Choose from menu <i>Program/Mode -> Program -> Debugging</i>
Now you the debugger should bring you right to your endless loop. Set lx_loop_exit = 'X' in the debugger and continue (F5 or F6).
Regards
Uwe -
What is the function code of create new session?
what is the function code of create new session?
thanks...Hi
Please put a "/n" (to open a new session after killing the current session)
or "/o" (to open a new session without killing the current session)
or "/i" (to end the current session) before the below T Codes as per your requirement...
<u><b>For more Tcodes check the following</b></u>
=>smartforms - Smartforms (SAP Form Builder to Create and Adjust Forms)
=>cmod - Enhancements, User Exits (Project Tool to coordinate changes into projects for the purpose of activating all user exits for a particular project)
=>sale - ALE Customizing
=>bale - Distribution Administration (ALE)
=>wedi - IDOC Type and EDI Basis
=>shdb - BDC (Transaction Recorder)
=>lsmw - LSMW
=>bapi - BAPI
=>spau - Display Modified DE Objects
=>spdd - Display Modified DDIC Objects
=>sara - central idoc archiving
=>stms - Transport Management System
=>wedi - IDOC Type and EDI Basis (IDOC Configuration)
=>bd21 - Analyze change pointers - create IDOC from change pointer
=>bd10 - Send Material Master
=>bd12 - Send Customer Master
=>bd14 - Send Vendor Master
=>bd50 - Activate Change Pointer for Message Type
=>bd55 - Conversion rule user exit (Link conversion rule user exit to the different system \ partner combinations)
=>bd54 - Maintain Logical Systems
=>bd71 - Distribute Customer Model
=>bd87 - Process Inbound IDOCs
=>bd88 - Process Outbound IDOCs
=>bdm2 - Cross-system IDOC Reporting
=>bdm7 - ALE Audit - statistical analyses
=>bdm8 - ALE Audit - sending confirmations
=>bd61 - Activate Change Pointer generally
=>bmv0 - Direct Input Data Transfer Administration
=>rz04 - Operation Mode
=>rz12 - RFC Server Group Maintenance
=>sar3 - Archiving object customizing
=>s001 - SAPoffice Inbox
=>s010 - Standards Texts (SAP Script)
=>se01 - Transport Organizer (Extended View - Performing and managing the transport of development object across different systems)
=>se09 - Transport (Workbench) Organizer (Controlling and keeping track of Development work and Development Objects)
=>se24 - Class Builder (BAPI)
=>se30 - Runtime Analysis
=>se36 - LDB
=>se37 - Function Builder
=>se38 - ABAP Editor (to modify ABAP programs)
=>se39 - Split-Screen-Editor
=>se11 - ABAP Dictionary
=>se16 - Data Browser (Table contents display)
=>se41 - Menu Painter
=>se51 - Screen Painter
=>se71 - SAPScript Forms
=>se73 - SAPScript Font Maintenance
=>se75 - Graphic Objects and Graphic IDs Sapscript Settings
=>se78 - Administration of Form Graphics (Import Graphics into SAP System)
=>se80 - Object Navigator
=>se84 - ABAP Repository Information (search for SAP objects)
=>se91 - Message Maintenance
=>se93 - Maintain T codes
=>su01 - User Maintenance (Security)
=>su02 - Maintain Authorization Profiles
=>su03 - Maintain Authorizations
=>slg1 - Evaluate Application Log
=>sm12 - Lock Entries
=>sm21 - System Logs
=>sm36 - Background Job Scheduling
=>sm37 - Background Job Monitoring (display batch jobs)
=>sm31 - Table Maintenance
=>sm30 - Calling View Maintenance
=>sm35 - Batch Input Monitoring (Error Logs)
=>sm50 - Process Overview
=>sm58 - Transactional RFC Monitoring
=>sm59 - Maintain RFC Destinations (Define RFC Configuration)
=>snro - Number Range Objects (for IDOCs)
=>scc4 - Client Overview (Create, Quick Delete, Modify)
=>spro - Customizing, Execute Project
=>sp01 - Spool Administration
=>sq01 - Maintain SAP Queries
=>st02 - Buffer Analysis (Status Overview)
=>st03 - Workflow Analysis
=>st05 - Performance SQL trace (Tracking the Database calls from the System Transaction and Programs)
=>st22 - ABAP Dump Analysis, check logical runtime errors
=>/h - ABAP Debugger
=>we02 - Display IDOC
=>we05 - IDOC lists
=>we07 - IDOC statistics
=>we12 - Inbound processing of outbound file - convert outbound to inbound file
=>we14 - Process (dispatch) IDOCs through Port - RSEOUT00
=>we15 - Outbound IDOC from NAST - message control
=>we16 - Inbound File
=>we18 - Generate status file
=>we19 - Test tool
=>we20 - Add new Message Type to Partner Profile
=>we21 - Maintain Port Definition
=>we30 - IDOC Type development
=>we31 - IDOC Segment development
=>we41 - Process Code Outbound
=>we42 - Process Code Inbound
=>we46 - IDoc Administration
=>we47 - Status Code Maintenance
=>we57 - Assign function module to logical message and IDoc type
=>we63 - IDOC Type for Parser Output
=>we82 - Assign IDOC to Message Type
=>we60 - IDOC Documentation - IDOC Types
=>we61 - IDOC Documentation - IDOC Record Types
=>we81 - Create new IDOC Message Types
=>we82 - Assign IDOC to Message Type
=>pa20 - Display HR Master Data
=>pa30 - Maintain HR Master Data
=>bd59 - Create and assign Filter Object Type for Message Type
=>bd64 - Maintenance of ALE or any other Distribution Model
=>db02 - Storage Management and Database Performance
=>db14 - Database monitor
=>se18 - BADI definitions
=>se19 - BADI implementations
=>fd03 - Accounts Receivable Master Data (Display Customer in Accounting)
=>me22 - Change Purchase Order
=>me21 - Create Purchase Order
=>me51 - Create Purchase Requisition
<u><b>Official source of SAP T Codes -</b></u>Go to se11 or se16 and view table entries for
TSTC and TSTCT. This will give you the Transaction List.
Reward all helpfull answers
Regards
Pavan -
What are the function modules used in CRM_ORDER_STATUS
Hi,
what are the function modules used in CRM_ORDER_STATUS(BADI) IN THIS METHOD AFTER_CHANGE...Hi,
http://scn.sap.com/thread/3202739
AFTER_CHANGE
ABAP ABAP Code
Follow-Up Action After Status Change
BEFORE_CHANGE
ABAP ABAP Code
Checks for Status Changeability
Sample code to set date on status change ------
INCLUDE crm_direct.
DATA : ls_status TYPE crmt_status_wrk.
DATA : lv_process_type TYPE crmt_process_type.
DATA : lit_appointment TYPE crmt_appointment_wrkt.
DATA : wa_appointment TYPE crmt_appointment_wrk.
DATA : ls_appoint TYPE crmt_appointment_com.
DATA : lt_appoint TYPE crmt_appointment_comt.
DATA : ls_input_field TYPE crmt_input_field.
DATA : lt_input_field TYPE crmt_input_field_tab.
DATA : ls_fieldnames TYPE crmt_input_field_names.
DATA : lt_fieldnames TYPE crmt_input_field_names_tab.
DATA : lt_exception TYPE crmt_exception_t.
DATA : lv_timestamp TYPE sc_tstfro.
DATA : lt_header_guid TYPE crmt_object_guid_tab.
DATA : lt_req_objects TYPE crmt_object_name_tab.
ls_status = is_status_wrk.
*Get process type
CALL FUNCTION 'CRM_INTLAY_GET_PROCESS_TYPE'
EXPORTING
iv_orderadm_h_guid = ls_status-guid
IMPORTING
ev_process_type = lv_process_type.
* Check process type
IF lv_process_type = 'ZZZ'.
INSERT ls_status-guid INTO TABLE lt_header_guid.
INSERT gc_object_name-appointment INTO TABLE lt_req_objects.
**Get appoinment data
CALL FUNCTION 'CRM_ORDER_READ'
EXPORTING
it_header_guid = lt_header_guid
iv_mode = gc_mode-display
it_requested_objects = lt_req_objects
IMPORTING
et_appointment = lit_appointment
EXCEPTIONS
document_not_found = 1
error_occurred = 2
document_locked = 3
no_change_authority = 4
no_display_authority = 5
no_change_allowed = 6
OTHERS = 7.
IF sy-subrc NE 0.
EXIT.
ENDIF.
*read item level data
READ TABLE lit_appointment INTO wa_appointment WITH KEY ref_kind = 'B'.
IF sy-subrc = 0.
* *Time-stamp set to as per current date and time.
CONVERT DATE sy-datum TIME sy-uzeit INTO TIME STAMP lv_timestamp
TIME ZONE sy-zonlo.
*Fill appoinment structure
ls_appoint-ref_guid = wa_appointment-ref_guid."appoinment gid
ls_appoint-ref_kind = 'B'."Item
ls_appoint-ref_handle = '0000000000'.
ls_appoint-appt_type = 'ZSERV_CLOSE'."c_appt_type .
ls_appoint-timestamp_from = lv_timestamp.
ls_appoint-timezone_from = 'GMTUK'."time zone
ls_appoint-mode = ''.
ls_appoint-rule_name = 'TODAY'.
INSERT ls_appoint INTO TABLE lt_appoint.
ls_input_field-ref_guid = wa_appointment-ref_guid.
ls_input_field-ref_kind = 'B'.
ls_input_field-objectname = 'APPOINTMENT'.
ls_input_field-logical_key = 'ZSTATUS_NEW'.
*Fill input fields
ls_fieldnames-fieldname = 'TIMESTAMP_FROM'.
INSERT ls_fieldnames INTO TABLE ls_input_field-field_names.
INSERT ls_input_field INTO TABLE lt_input_field.
CLEAR lt_fieldnames[].CLEAR ls_fieldnames. CLEAR ls_input_field.
*To update date
CALL FUNCTION 'CRM_APPT_MAINTAIN_MULTI_OW'
EXPORTING
iv_ref_guid = wa_appointment-ref_guid
iv_ref_kind = 'B'
it_appointment_com = lt_appoint
CHANGING
ct_input_fields = lt_input_field
EXCEPTIONS
OTHERS = 1.
ENDIF.
ENDIF.
Standard BADI Order_Save will take care to save into database.
Regards,
Sumeet
Maybe you are looking for
-
How to get the values from popup window to mainwindow
HI all, I want to get the details from popup window. i have three input fields and one search button in my main window. when i click search button it should display popup window.whenever i click on selected row of the popup window table ,val
-
Hello everyone! I have a SSD drive that I have installed Yosemite on and have the following question: I have an iMac with an external SSD disk on 250 GB that I have connected in a thunderbolt enclosure and have an internal hard drive on 500 GB SATA d
-
Adobe Media Encoder Excessively Slow After New Update
Recently (since the last update it seems like) Media Encoder has been excessively slow for me. For example - I loaded 4 videos in the the queue from Premiere that were about 5-10 minutes each. These videos were shot on DSLR and was a one shot the who
-
#Error & #Syntax when we are using merged dimension in BO4.1 SP3
Dear All, We are using BO4.1 SP3 and Bex query as datasource. When we are trying to take merged dimensions in Report block its giving #Syntax Error. When we are defining variable with merged dimension, its giving #Error message and the merged dimensi
-
Ipod won't power on or sync. Is fully charged. Shows Apple image only.
Ipod is charged but won't power on or sync. Only shows the apple image for about a minute and then gone. When connect to computer it doesn't show in iPhoto or iTunes.