PlugBox Linux - Arch variant for ARM plugbox

Today's woot was a $20 Seagate DockStar.
Basically, its a little usb hub with a 1.2ghz ARM Marvell Sheeva cpu, 128mb ram, gigabit connection, and very very low power consumption (like a SheevaPlug or TonitoPlug with half the ram). Curiosity got the best of me and some googling turned up PlugBox Linux; and ARM based Arch variant!
http://www.plugapps.com/index.php5?titl … gBox_Linux
After some research, I caved and bought the DockStar. If everything goes as planned, this little thing is going to consolidate 2 outdated servers into one tight little Arch system!
Anyone have any experience with this?
I plan to drop a 300gb external usb drive on this and use it for Samba sharing, uShare video streaming to my Xbox360, and as an rTorrent slave.
Side Note:
It seems a few months ago Office Depot was selling these things for $1 (not a typo, one dollar)!

sand_man wrote:
Labello wrote:i would use transmission as bittorrent client. has got a nicer webinterface. might not be as lightweight but also has more features :-)
I went back to rtorrent after using transmission briefly. I had problems with transmission retaining settings after service restarts. It was a major inconvenience since the downloads were going to the default transmission home
This was under FreeBSD btw. Sorry for the slightly off-topic
Major inconvenience!
Sorry, I had to do that...
Last edited by Roline (2010-07-07 10:29:26)

Similar Messages

  • Archmobile: Arch Linux for ARM Devices

    Hello,
    I want to introduce our Operating System for ARM Devices, that's running on the OpenMoko NeoFreerunner, but we want to support more Devices.
    We from http://archmobile.org port Arch Linux on ARM, and we want to give you the simple Freedom which has Arch Linux x86 for ARM.
    We can already SSH on our Freerunners, and we nearly have X working. One of the Devs already uses our OS as Daily-Phone with QT Extended.
    If you want to know more about us, or you want to try out our System visit us at http://archmobile.org !
    The first Snapshot is already at http://naeg.archmobile.org/snapshots/ available. This Snapshot works on the Freerunner and you can SSH into your phone and play a lil bit with our OS Also you can install the System with our Installation Script we provide, to get a really up-to-date System and not configured.
    It would be great if other people with other ARM Devices would contact us on IRC(on freenode #arch-arm) and we will try to support your ARM Device too. New Developer are always welcome
    I think it would be awesome if we get some support from the official Arch Linux. An Entry in the list of Arch Related Projects would be great.
    Feel free to talk about that.
    Greetings, naeg - alias rott_at

    Thanks for your tips to make the wiki better. I will edit the pages to avoid any confusion you've had. Although I won't do all the changes (e.g. remove $ and #). But I will then make a note which should clarify it.
    markc wrote:
    Some errors I encountered...
    # touch /_Archlinux_ARM
    /bin/touch: setting times of `_Archlinux_ARM': Invalid argument
    This issue is known with a x86_64 host. I don't know where it originates from as i686 host is fine. Use this binary instead: http://stanny.homelinux.org/touch [1]. This is my home FTP. Thus it might not be available 24/7.
    markc wrote:checking dependency style of gcc... /bin/touch: setting times of `sub/conftst1.h': Invalid argument
    Should be fixed using the touch binary I provided.
    markc wrote:bsdtar: Failed to set default locale
    Unsupported ioctl: cmd=0xffffffff80046601
    bsdtar: Couldn't list extended attributes: Function not implemented
    The error in the first line might be solved by configuring your locales correctly. The error below is issued by qemu.
    While this is annoying it doesn't appear to cause any harm. Just ignore it. You'll find other ioctls not being supported by qemu and we expect them to be fixed along with qemu's development.
    edit:
    [1] I moved it to a permanent location: http://archmobile.org/~harlekin/touch
    Last edited by harlekin (2009-07-30 22:16:59)

  • Midp porting for arm linux

    hi
    I ahve sucessfully ported kvm for arm.
    now i have to put midp on my device ,can anyone tell me where i can get midp source for arm linux.
    Thanx
    Gajanan

    Hi,
    I was also facing the same problem. Let me tell you that you should use the source code of KVM and CLDC 1.1, dont use CLDC 1.0.4.
    Secondly install j2sdk1.4 for linux, i am tellin this specifically becuse just installing the jre for linux won't solve the problem.
    AFter installin all these things, go into the directory
    <root dir>/j2me_cldc/build/linux and give the "make" command.
    I think this should solve the problem.
    ---Rahul.

  • Create a cross compiler for arm

    I am struggling with building a cross toolchain, essentially it boils down to building these packages (in thegiven order):
    binutils gcc-base newlib gcc
    When done I am trying to compile a dummy cpp algorithm (euler gcd/ggT search) with no includes.
    What the cross toolchain spits at me is the following:
    $ arm-unknown-eabi-gcc -march=armv5te ./euklidisch_ggt.c -o ./euklidisch_ggt.bin.armv5te
    /usr/bin/arm-unknown-eabi-ld: skipping incompatible /usr/lib/gcc/arm-unknown-eabi/4.5.2/../../../../arm-unknown-eabi/lib/libc.a when searching for -lc
    /usr/bin/arm-unknown-eabi-ld: skipping incompatible /usr/arm-unknown-eabi/lib/libc.a when searching for -lc
    /usr/bin/arm-unknown-eabi-ld: cannot find -lc
    collect2: ld returned 1 exit status
    I wrote a little script to build it (as I got pretty much fed up doing it all by hund, round #7 just failed again)
    Note: it is semi-automated, you will still be requested to give your passwd to agree with install and blah
    Note: use it with arg "cleanup" to get rid of old installed packages (run as root)
    Note: use it to compile as user
    #!/bin/bash
    BUILDERUSER=buildmonkey
    PREFIX="/usr"
    TARGET="arm-unknown-eabi"
    PKGBUILDDIR="/home/${BUILDERUSER}/PKGBUILD"
    PKGS="binutils gcc-base newlib gcc"
    export PREFIX
    export TARGET
    export BUILDERUSER
    export PKGS
    export PKGBUILDDIR
    function cleanup
    for j in ${PKGS}
    do
    export j
    echo "Removing package ${TARGET}-${j}"
    su -c'pacman -R ${TARGET}-${j}'
    done
    function compile_and_install
    cd ${PKGBUILDDIR}
    echo ""
    echo ""
    echo "Compileing ${TARGET}-${1} ... "
    echo ""
    echo ""
    cd ./${TARGET}-${1}
    rm ./${TARGET}-${1}*
    makepkg -f || return 1
    su -c 'pacman -U ./${TARGET}-${1}*'
    echo ""
    if [ "${1}" == "cleanup" ]; then
    echo "cleanup requested...."
    cleanup
    exit 0
    fi
    if [ "$(id -u)" == "0" ]; then
    echo "This script must not be run as root!!" 1>&2
    exit 1
    fi
    echo ""
    if [ -d "${PKGBUILDDIR}" ]; then
    echo "PKGBUILD directory is ${PKGBUILDDIR}"
    else
    echo "PKGBUILD directory ${PKGBUILDDIR} is missing!!"
    exit 1
    fi
    echo "PKGs are ${PKGS}"
    echo ""
    for i in ${PKGS}
    do
    compile_and_install ${i}
    done
    exit 0
    The packagebuilds are as following (hacked away versions of the ones existing in AUR, which give me linker errors)
    binutils
    pkgname=arm-unknown-eabi-binutils
    pkgver=2.21
    pkgrel=1
    pkgdesc="A set of programs to assemble and manipulate binary and object files"
    arch=(i686 x86_64)
    license=(GPL)
    options=(!libtool)
    url="http://sources.redhat.com/binutils"
    depends=('glibc' 'zlib')
    source=(ftp://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.bz2)
    md5sums=('c84c5acc9d266f1a7044b51c85a823f5')
    build() {
    cd $srcdir/binutils-${pkgver}
    [ $NOEXTRACT -eq 1 ] || ./configure\
    --prefix=${PREFIX} \
    --program-prefix=${TARGET}- \
    --enable-shared \
    --disable-multilib \
    --with-lib-path=${PREFIX}/lib/binutils/{TARGET} \
    --disable-nls \
    --target=${TARGET} \
    --build=${CHOST} \
    --host=${CHOST}
    # mkdir -p $pkgdir/${PREFIX}/lib/binutils
    sed -i 's|know (S_GET_VALUE (frag->tc_frag_data.last_map) < S_GET_VALUE (symbolP));|{know (S_GET_VALUE (frag->tc_frag_data.last_map) < S_GET_VALUE (symbolP));}|' gas/config/tc-arm.c || return 1
    make configure-host
    make tooldir=$pkgdir/${PREFIX}
    make prefix=$pkgdir/${PREFIX} tooldir=$pkgdir/${PREFIX} install
    mkdir -p $pkgdir/${PREFIX}/lib/binutils/${TARGET}
    cp -v include/libiberty.h $pkgdir/${PREFIX}/lib/binutils/${TARGET}
    rm -f $pkgdir/${PREFIX}/man/man1/{dlltool,nlmconv,windres}*
    rm -f $pkgdir/usr/bin/ar
    rm -f $pkgdir/usr/bin/as
    rm -f $pkgdir/usr/bin/ld
    rm -f $pkgdir/usr/bin/nm
    rm -f $pkgdir/usr/bin/objdump
    rm -f $pkgdir/usr/bin/ranlib
    rm -f $pkgdir/usr/bin/strip
    rm -f $pkgdir/usr/bin/objcopy
    rm -f $pkgdir/usr/lib/libiberty.a
    rm -rf $pkgdir/usr/share
    rm -rf $pkgdir/usr/lib/ldscripts
    gcc-base
    pkgname=arm-unknown-eabi-gcc-base
    pkgver=4.5.2
    pkgrel=1
    pkgdesc="The GNU Compiler Collection"
    arch=(i686 x86_64)
    license=('GPL' 'LGPL')
    url="http://gcc.gnu.org"
    depends=('arm-unknown-eabi-binutils' 'libmpc' 'libelf' 'cloog-ppl')
    options=(!libtool !emptydirs zipman docs !strip)
    source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-core-${pkgver}.tar.bz2)
    md5sums=('aa9e36bec080452372bfba793428ee82')
    build() {
    cd $srcdir/gcc-$pkgver
    export CFLAGS="-O2 -pipe"
    export CXXFLAGS="-O2 -pipe"
    [ $NOEXTRACT -eq 1 ] || rm -rf build
    mkdir build
    cd build
    [ $NOEXTRACT -eq 1 ] || ../configure --prefix=${PREFIX} \
    --target=${TARGET} \
    --host=$CHOST \
    --build=$CHOST \
    --enable-shared \
    --disable-nls \
    --enable-languages=c \
    --enable-multilib \
    --with-local-prefix=${PREFIX}/lib/${TARGET} \
    --with-as=${PREFIX}/bin/${TARGET}-as \
    --with-ld=${PREFIX}/bin/${TARGET}-ld \
    --enable-softfloat \
    --with-float=soft \
    --with-newlib
    make all-gcc all-target-libgcc
    make DESTDIR=$pkgdir install-gcc install-target-libgcc
    rm -f $pkgdir/usr/share/man/man7/fsf-funding.7*
    rm -f $pkgdir/usr/share/man/man7/gfdl.7*
    rm -f $pkgdir/usr/share/man/man7/gpl.7*
    rm -rf $pkgdir/usr/share/info
    cp -r $pkgdir/usr/libexec/* $pkgdir/usr/lib/
    rm -rf $pkgdir/usr/libexec
    # strip it manually
    strip $pkgdir/usr/bin/* 2>/dev/null || true
    find $pkgdir/usr/lib -type f -exec arm-none-eabi-strip {} \; 2>/dev/null || true
    newlib
    pkgname=arm-unknown-eabi-newlib
    pkgver=1.19.0
    pkgrel=1
    pkgdesc="Newlib is a C library intended for use on embedded systems."
    arch=('i686' 'x86_64')
    groups=('devel')
    url="http://sourceware.org/newlib/"
    license=('GPL')
    depends=('arm-unknown-eabi-binutils' 'arm-unknown-eabi-gcc-base')
    source=(ftp://sources.redhat.com/pub/newlib/newlib-${pkgver}.tar.gz)
    md5sums=('0966e19f03217db9e9076894b47e6601')
    build() {
    cd ${srcdir}
    rm -rf build
    mkdir build
    cd build
    export CFLAGS="-O2"
    ../newlib-${pkgver}/configure \
    --target=${TARGET} \
    --prefix=${PREFIX} \
    --enable-interwork \
    --enable-multilib \
    --with-gnu-as \
    --with-gnu-ld \
    --with-float=soft \
    --disable-nls || return 1
    make || return 1
    make -j1 DESTDIR=${pkgdir} install || return 1
    rm -rf ${pkgdir}/usr/share/info
    return 0
    gcc:
    pkgname=arm-unknown-eabi-gcc
    pkgver=4.5.2
    pkgrel=1
    pkgdesc="The GNU Compiler Collection - Cross compiler for ARM target"
    arch=(i686 x86_64)
    license=('GPL' 'LGPL')
    url="http://gcc.gnu.org"
    #an installed libc/newlib is needed for libstdc++ compile
    depends=('arm-unknown-eabi-binutils>=2.18' 'cloog-ppl>=0.15.3' 'arm-unknown-eabi-newlib>=1.18.0')
    # cross-arm-none-eabi-gcc is an superset of cross-arm-none-eabi-gcc-base
    conflicts=('arm-unknown-eabi-gcc-base')
    provides=("arm-unknown-eabi-gcc-base=${pkgver}")
    options=(!libtool !emptydirs !strip zipman docs)
    source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2)
    md5sums=('d6559145853fbaaa0fd7556ed93bce9a')
    build() {
    cd ${srcdir}/gcc-$pkgver
    export CFLAGS="-O2 -pipe"
    export CXXFLAGS="-O2 -pipe"
    rm -rf build
    mkdir build
    cd build
    ../configure \
    --prefix=${PREFIX} \
    --target=${TARGET} \
    --build=${CHOST} \
    --host=${CHOST} \
    --disable-nls \
    --enable-multilib \
    --enable-languages=c,c++ \
    --enable-__cxa_atexit \
    --enable-interwork \
    --with-local-prefix=${PREFIX}/lib/${TARGET} \
    --with-as=${PREFIX}/bin/${TARGET}-as \
    --with-ld=${PREFIX}/bin/${TARGET}-ld \
    --with-newlib \
    --with-float=soft
    make all-gcc all-target-libgcc all-target-libstdc++-v3 || return 1
    make DESTDIR=${pkgdir} install-gcc install-target-libgcc install-target-libstdc++-v3 || return 1
    rm -f $pkgdir/usr/share/man/man7/fsf-funding.7*
    rm -f $pkgdir/usr/share/man/man7/gfdl.7*
    rm -f $pkgdir/usr/share/man/man7/gpl.7*
    rm -rf $pkgdir/usr/share/info
    rm -rf $pkgdir/usr/share/gcc-4.5.2
    cp -r $pkgdir/usr/libexec/* $pkgdir/usr/lib/ && \
    rm -rf $pkgdir/usr/libexec
    I already read linux from scratch howto for building cross compilers, though partly it contradicts with AUR comments especially in regard to --with-sysroot and --with-build-sysroot
    If someone can please shed some light on this, the gcc doc is not very helpfull
    Note: I know that a bare metal arm elf cross compiler exisis in the archlinux repository but that is not sufficient as I need different targets with some special options (where can I get the PKGBUILD from packages within the ABS?)

    Current targets are armv7vfpv3 and armv5te softfloat, this compiler(s) (afaik softfloat and hardfloat can not be put into one compiler, correct me if I am wrong) will be used as basis for kernel compileing for these architectures plus the basic packages (afaik called bootstrapping).
    And I knew it was not really newby stuff, but .. well .. after searching like 5 mins for an appropriate subforum I gave up and posted it just here, sorry
    The point is this is the basis for a lot of core packages and I just want to do it right (and atm it ain't working at all )
    Last edited by drahnr (2011-04-05 22:36:11)

  • JRE OR JDK just for ARM processor

    Dear friends,
    Really need you help, please, please.
    Firstly, I need help to know where I can download a jre or jdk just for ARM 9 Processor. I found one on the website of http://www.blackdown.org, and I try to use tar to extract it in hyperterminal of Windows XP OS, but always problems. Do you know where I can get one which is good to use. Please, please, please
    Then, I want to ask if the file for ARM Processor "j2re-1.3.1-RC1-linux-arm.tar.bz2" is good to use, how can I install it in ARM Embedded Linux OS. What I did through hyperterminal which link to ARM Processor as follows:
    step 1: mkdir test
    step2: mount dev\sda1 \test
    step3: tar -xvf j2re-1.3.1-RC1-linux-arm.tar.bz2
    after this, it's always displayed as invalid magic, no such file or sth. like that.
    Please, please give me some suggestions, what's wrong with that? Really sad, sad, sad!!!
    Thank you very much.

    I need jvm for 32bit arm processor. Moreover the size of jvm must be small. Can anybody provide some information.
    Regards,
    Nitin

  • Is Arch right for me?

    I'm currently using Ubuntu.
    I switched from Windows to Linux bout 9 months ago.
    The main reason I want to switch to Arch is because it is said to be much more simple and lightweight, which is exactly what I want.
    I'm not very good with the terminal and shell, but I'm willing to do some extra learning if I need to for Arch.
    I'm slowly getting into computer programming too.

    pointone wrote:
    An equivalent question: Do I like ice cream?
    How do you expect us to answer that? Just try it! With VirtualBox et. al., distro-hopping has never been easier.
    True, but once you try Arch, are you really that likely to keep hopping?
    weasel8 wrote:
    Is Arch right for me?
    You've got to be kidding me. This is the 37,529th thread like this. If you honestly don't know after doing some actual research, then no.
    In your opinon. And If you're going to be a condescending ass about it, than keep your opinion to yourself.
    On the flip side of that, T2manner, weasel8 is technically correct. A quick search of the forums would have brought you a plethora of information on the subject at hand. I'll assume you didn't search because it just didn't occur to you (shit happens, oh well) and point you to the search page for future reference.
    I hope that you decide to at least give us a decent shot, and I guarantee that once you get past the initial anticipation and hesitations, you'll grow to love Arch as much as the rest of us do. If you do have issues, the Beginners Guide and wiki are great resources, as are the forums. If you have further difficulties, feel free to stop by our room on IRC (if you don't know how to get there, read this).
    Best of luck and let me know what happens!

  • JRE for ARM Processor

    Dear friends,
    Really need you help, please, please.
    Firstly, I need help to know where I can download a jre or jdk just for ARM 9 Processor. I found one on the website of http://www.blackdown.org, and I try to use tar to extract it in hyperterminal of Windows XP OS, but always problems. Do you know where I can get one which is good to use. Please, please, please
    Then, I want to ask if the file for ARM Processor "j2re-1.3.1-RC1-linux-arm.tar.bz2" is good to use, how can I install it in ARM Embedded Linux OS. What I did through hyperterminal which link to ARM Processor as follows:
    step 1: mkdir test
    step2: mount dev\sda1 \test
    step3: tar -xvf j2re-1.3.1-RC1-linux-arm.tar.bz2
    after this, it's always displayed as invalid magic, no such file or sth. like that.
    Please, please give me some suggestions, what's wrong with that? Really sad, sad, sad!!!
    Thank you very much.

    See also http://www.acunia.com...
    this site has very small JVM..

  • How to Save Multiple Variants for a Report at a time?

    Hi Experts,
    I have a report in one server and I have copied the same into another server.
    And now I also have to copy the variants of that report.
    There are totally 192 variants for the report. So, is there any easier way to copy all those variants for the new report that I have created, rather than re-creating the variants one-by-one manually.
    Note:There is no connection to both the servers. So I cannot transport them.
    Thanks in advance.

    Basis can do a export and import transport, still if don't have connection between boxes.
    or
    check this
    http://www.sap-basis-abap.com/abap/copy-program-variants-from-one-to-another.htm

  • How to set up Dynamic Variants for job which is based on Pay Period

    Hi,
    We need to set up dynamic variant for payroll interface.  This interface is based on Pay periods and that is why we need to use different variant for each month.  Letus know how to set up dynamic variant which will take care of Pay Periods

    Hi,  Thnx for reply.
    We are not changing the control records, current period will be some old period in system. 
    payroll is not processed in SAP,

  • How to create a variant for  a selection screen  button

    hi ,
          i have  created a selection screen for a normal report .   
    In the selection screen  there is one button after the selct option for company code. when user enters some company code and  presses the button the user i call a able contraol in which user gives some additional values for the comapny code.
    how  do i create variant.  when i create  varaint  for the slection screen  it does  not take into account the  other screen i called .
    so every time user has to click that button and enter some values and execute. please suggest  some way.
    THANKX IN ADAVANCE:)

    Hi,
          Inorder to create a variant for selection screen report, you need to enter valid data on the screen and click on the SAVE button which is available in the Menu.
          And regarding the button you were asking about after select option, it is not created manually it comes automatically,, you can remove this by mentioning no-extension after the select-option. You can get clear information of this if you do F1 help on select-option.
    My advice to you, make effect use of F1 help.
    Edited by: Madhuri on Sep 23, 2008 4:46 PM

  • LabVIEW for ARM 2009 Read from text file bug

    Hello,
    If you use the read from text file vi for reading text files from a sdcard there is a bug when you select the option "read lines"
    you cannot select how many lines you want to read, it always reads the whole file, which cause a memory fault if you read big files!
    I fixed this in the code (but the software doesn't recognize a EOF anymore..) in CCGByteStreamFileSupport.c
    at row 709 the memory is allocated but it tries to allocate to much (since u only want to read lines).
    looking at the codes it looks like it supposed to allocated 256 for a string:
    Boolean bReadEntireLine = (linemode && (cnt == 0)); 
    if(bReadEntireLine && !cnt) {
      cnt = BUFINCR;    //BUFINCR=256
    but cnt is never false since if you select read lines this is the size of the file!
    the variable linemode is also the size of the file.. STRANGE!
    my solution:
    Boolean bReadEntireLine = (linemode && (cnt > 0));  // ==
     if(bReadEntireLine) {    //if(bReadEntireLine && !cnt) {
      cnt = BUFINCR;
    and now the read line option does work, and reads one line until he sees CR or LF or if the count of 256 is done.
    maybe the code is good but the data link of the vi's to the variables may be not, (cnt and linemode are the size of the file!)
    count should be the number of lines, like chars in char mode.
    linemode should be 0 or 1.
    Hope someone can fix this in the new version!
    greets,
    Wouter
    Wouter.
    "LabVIEW for ARM guru and bug destroyer"

    I have another solution, the EOF works with this one.
    the cnt is the bytes that are not read yet, so the first time it tries to read (and allocate 4 MB).
    you only want to say that if it's in line mode and cnt > 256 (BUFINCR) cnt = BUFINCR
    the next time cnt is the value of the bytes that are not read yet, so the old value minus the line (until CR LF) or if cnt (256) is reached.
    with this solution the program does not try to allocate the whole file but for the max of 256.
    in CCGByteStreamFileSupprt.c row 705
     if(linemode && (cnt>BUFINCR)){
       cnt = BUFINCR;
    don't use the count input when using the vi in line mode. count does not make sense, cnt will be the total file size. also the output will be an array.
    linemode seems to be the value of the file size but I checked this and it is just 0 or 1, so this is good
    update: damn it doesn't work!
    Wouter.
    "LabVIEW for ARM guru and bug destroyer"

  • How to create a variant for a screen (not a selection screen)

    Hi
    I foud a function module RS_CREATE_VARIANT.
    Is this the correct fm for creating screen variant, if yes then pls provide me some help about how to pass values to this fm.
    if not then pls help me to find out new one.
    thnks
    satisfactory answer will be definitely rewarded.
    S@meer

    passing values to RS_CREATE_VARIANT.
    data : LS_VARIANTDESC TYPE VARID.
      DATA : LT_VARIANTTEXT TYPE TABLE OF VARIT ,
             WA_VARIANTTEXT TYPE VARIT.
      DATA : TT_REPORTPARAM TYPE TABLE OF  RSPARAMS,
             WA_REPORTPARAM TYPE RSPARAMS.
    CLEAR LS_VARIANTDESC.
              LS_VARIANTDESC-MANDT   = SY-MANDT.                " gr 46A
              LS_VARIANTDESC-REPORT  = 'ZXXXXX'.
              LS_VARIANTDESC-VARIANT = 'VARIANT'.
              LS_VARIANTDESC-EDAT    = SY-DATUM.
              LS_VARIANTDESC-ETIME   = SY-UZEIT.
              REFRESH LT_VARIANTTEXT.
              CLEAR WA_VARIANTTEXT.
              WA_VARIANTTEXT-MANDT    = SY-MANDT.               " gr 46A
              WA_VARIANTTEXT-LANGU    = SY-LANGU.
              WA_VARIANTTEXT-REPORT   = 'ZXXXXXX'.
              WA_VARIANTTEXT-VARIANT  = 'VARIANT'.
              APPEND WA_VARIANTTEXT TO LT_VARIANTTEXT.
           CALL FUNCTION 'RS_CREATE_VARIANT'
                  EXPORTING
                    CURR_REPORT               = 'ZXXXXX'
                    CURR_VARIANT              = 'VARIANT'
                    VARI_DESC                 = LS_VARIANTDESC
                  TABLES
                    VARI_CONTENTS             = TT_REPORTPARAM
                    VARI_TEXT                 = LT_VARIANTTEXT
                  EXCEPTIONS
                    ILLEGAL_REPORT_OR_VARIANT = 1
                    ILLEGAL_VARIANTNAME       = 2
                    NOT_AUTHORIZED            = 3
                    NOT_EXECUTED              = 4
                    REPORT_NOT_EXISTENT       = 5
                    REPORT_NOT_SUPPLIED       = 6
                    VARIANT_EXISTS            = 7
                    VARIANT_LOCKED            = 8
                    OTHERS                    = 9.
                IF SY-SUBRC EQ 7.
    If variant with same name already exists, change variant
                  CALL FUNCTION 'RS_CHANGE_CREATED_VARIANT'
                    EXPORTING
                      CURR_REPORT               = 'ZXXXXX'
                      CURR_VARIANT              = 'VARIANT'
                      VARI_DESC                 = LS_VARIANTDESC
                    TABLES
                      VARI_CONTENTS             = TT_REPORTPARAM
                    EXCEPTIONS
                      ILLEGAL_REPORT_OR_VARIANT = 1
                      ILLEGAL_VARIANTNAME       = 2
                      NOT_AUTHORIZED            = 3
                      NOT_EXECUTED              = 4
                      REPORT_NOT_EXISTENT       = 5
                      REPORT_NOT_SUPPLIED       = 6
                      VARIANT_DOESNT_EXIST      = 7
                      VARIANT_LOCKED            = 8
                      SELECTIONS_NO_MATCH       = 9
                      OTHERS                    = 10.
                ELSEIF SY-SUBRC NE 0.
                MESSAGE WITH 'Cannot create/change variant for'
                SY-UNAME.
                ENDIF.

  • How to create variant for table/view ?

    Hi,
    When I go through SM30, I find a radio button called variant. I don't know the effect.
    Can anyone tell me how to create variant for table / view ?
    I want to know when we need to create variant for table/view.
    Best regards,
    Chris Gu

    hi ,
    Whenever you start a program in which selection screens are defined, the system displays a set of input fields for database-specific and program-specific selections. To select a certain set of data, you enter an appropriate range of values.
    For further information about selection screens, refer to Selection Screens in the ABAP User's Guide.
    If you often run the same program with the same set of selections (for example, to create a monthly statistical report), you can save the values in a selection set called a variant
    Procedure
    To create a new variant:
           1.      On the ABAP Editor initial screen, enter the name of the program for which you want to create a variant, select Variants, and choose Change.
           2.      On the variant maintenance initial screen, enter the name of the variant to be created.
    Note the naming convention for variants (see below).
           3.      Choose Create.
    If the program has more than one selection screen, a dialog box for screen assignment appears. The dialog box does not appear if the program only has one selection screen. The selection screen appears in this case.
           4.      If there is more than one selection screen, select the screens for which you want to create the variant
    5.      Choose Continue.
    The (first) selection screen for the report appears.
    If your program has more than one selection screen, use the scroll buttons in the left-hand corner of the application toolbar to navigate between them and to fill the fields with values. If you keep scrolling forwards, the Continue button appears on the last selection screen.
           6.      Enter the desired selection values, including multiple selection and dynamic selection.
           7.      Choose Continue.

  • How to create transaction or screen variant for custom tcode in module pool

    Hi,
              I have one module pool program with custome tcode ,i want to create transaction or screen variant for this tcode.Next time when we run this tcode we need a variant for this tcode.
    I tried by using of SHD0 but it is working only for standred tcodes.Is there any possibilty please help me.
    thanks,
    Lavanya.

    Hi,
    you created a Custom Tcode for ur module pool Pgm..if u execute the Tcode in the output screen give the input details and press Save Option then variant will be created. Then you can use that variant.
    otherwise.. while creating a Tcode..
    select an option for Tcode type Tranasction With variant ..there u will provide the variant for ur Tcode ( which is already created ).
    Regards,
    PraVeen.

  • HOW TO Create  variants for transaction MASS on LFA1 object?

    hOW TO Create  variants for transaction MASS on LFA1 object?
    Edited by: cheppalliakr on Nov 10, 2011 1:09 PM
    Moderator message: please do more research before asking, show what you have done yourself and provide more information when asking.
    Edited by: Thomas Zloch on Nov 10, 2011 3:10 PM

    Hi Oscar ,
    You need to create optional date prompt variable  in BW which fills your requirement .
    Ex : If you require report should always run for 1st of the month to last of month .Then create Optional date variable in BW with interval .write customer exit ,
    if from date is left blank it should take 1st of the month and if todate is left blank it should take last of the month .
    when creating webi schedules , leave prompts as blank.

Maybe you are looking for