Contributing Packages - The Current State

There has been some confusion going around when contributing packages.  A lot of changes are going on now with the new TUR system, the AUR.  The new AUR will have a nice systematic way of submitting packages.  But currently, there are two ways to submit packages.
1)  Post a PKGBUILD and build scripts of the New and Requested Packages category of the forum.  TURs and developers will look through these PKGBUILDs and pick up any that look interesting to them, and put them in a repository.
2)  Send a PKGBUILD to the tur-mailing list (http://www.archlinux.org/mailman/listinfo/tur-users/).  All the TURs will definately see your PKGBUILD if you post it on the mailing list.  Many TURs prefer new packages on the list, because they will definately see it.  Some TURs don't look at the forum as much as others. 
To be on the safe side, you can do both.
Here are some dont's:
1)  DONT submit packages to incoming.  No one looks at incoming.  Incoming is dead.  Incoming is from the old package submittal submission system, which is now being replaced with the AUR.
2)  DONT submit packages without PKGBUILD scripts.  No one wants a package from an untrusted source that could contain malicious code.
3)  DONT forget to include all files in your submission: .install files, PKGBUILDs, startup scripts, etc.
4)  DONT put patchfiles up on the forum:  the forum will mess up the formatting of the patch.  Upload the patch somewhere and post a link.
5)  DONT use namcap as your only resource for dependencies.  Check ./configure --help, README, INSTALL, and the website of the program.  Namcap is a guide, don't use it as truth.
6)  DONT use the license field yet.  A standard hasn't been decided of what to put there yet, so don't use it yet.
7)  DONT add a maintainer comment to your PKGBUILD unless you have a repository and you maintain it.  Put a contributor comment instead. 
There we go:  If everyone reads these, that will cut down on 90% of the submissions we have to fix    :twisted:

Could you transfer that message over into my sticky thread of "finding and creating new packages". I think this fits well with that.

Similar Messages

  • Error occurred in deployment step 'Add Solution': Operation is not valid due to the current state of the object

    hi,
      when i was trying to deploy a SP  solution from my vs 2012 solution. this error  is displayed.
    i tried many things like
    1) get the wsp and apply power shell cmds to add and deploy, here also it failed:
    Add-SPSolution -LiteralPath d:\mywsp.wsp
    Install-SPSolution mywsp.wsp -GacDeployment -AllWebApplications -Local
    2) restart the timer services and  do  iisreset and  reboot the server. etc .as mentioned in one of the  the below  blogs:
    http://sharepoint1on1.blogspot.in/2014/04/sharepoint-error-occurred-in-deployment.html
    http://suehernandez.wordpress.com/2011/03/31/error-occurred-in-deployment-step-activate-features-operation-is-not-valid-due-to-the-current-state-of-the-object/
    http://www.dotnetsharepoint.com/2014/04/error-occurred-in-deployment-step-add.html
    http://social.msdn.microsoft.com/Forums/en-US/63adde23-03cf-4b65-923e-1219da94a780/error-occurred-in-deployment-step-add-solution-operation-is-not-valid-due-to-the-current-state-of?forum=sharepointdevelopmentprevious
    http://www.shakirmajeed.com/error-occurred-in-deployment-step-activate-features-operation-is-not-valid-due-to-the-current-state-of-the-object/
    but even after doing all these steps, the  error still persists!. and am not deploying into a remote server, the dev env is in a VM, where sp 2013, vs 2012, sql 2012  are installed.
    just wanna share one  note:   there is a isue in my search admin component. index was reset due to some reason. and from that time onwards my search full/incremental crawls were not working!
    will this cause an issue in my wsp deployment ? i hope  it wont, still  asking...
    can anyone help me how to resolve this error.because this is a  show stopper for me for the last few days!
    help is highly appreciated!

    This issue cause because of feature activation failure while WSP deployment.
    when you create a WSP using visual studio, it creates WSP package with default deployment configuration settings.
    Please restrict feature activation configuration, this will help you to troubleshoot this issue.
    - Click on Project in WSP and press F4, it will open "Project Properties"
    - set "Active deployment Configuration" - as "No Activation"
    - you can activate this features in required sequence after deployment using Activate-SPFeature
    If my contribution helps you, please click Mark As Answer on that post and Vote as Helpful
    Thanks, ShankarSingh(MCP)

  • A better way to determine the current state of the FLVPlayback component?

    Below is the AS3 code I have used to display images (MCs) over an instance of the FLVPlayback component.  These images (one for loading, one for the title) are to appear – or disappear – according to the current state of the FLVPlayback component. 
    It “works,” but when testing, I have noticed that it can be rather finicky.  The most common issue that arises is that many times the loadPoster movieclip will still be visible even though the video has entered the playing state.
    Also, I wanted a title placeholder image to appear whenever the user stops the video or if the video completes.  However, I had to add the conditional statement to the “stoppedStateEntered” case to make everything appear when expected.  When the video is first viewed (and has completed buffering), it seems that the FLVPlayback component enters the stopped state before entering the playing state.  Thus, the titlePoster would flash on the screen right before it and the loadPoster “should” disappear when the video begins playing.
    Even in my limited testing, these issues were very easily re-created.  I am definitely looking for a more reliable solution.  Is there a better (or more correct) way to go about all this?  If possible, I would like to stick with the FLVPlayback component, just for the simple fact of not having to code my own.
    Where am I going wrong?
    function updateMoviePoster(event:VideoEvent):void
                    switch (event.type)
                                    case "playingStateEntered":
                                                    loadPoster.visible = false;
                                                    titlePoster.visible = false;
                                    break;
                                    case "stoppedStateEntered":
                                                    if (loadPoster.visible == false)
                                                                    titlePoster.visible = true;
                                    break;
                                    case "complete":
                                                    titlePoster.visible = true;
                                    break;
    myFLVPlayback.addEventListener(VideoEvent.PLAYING_STATE_ENTERED, updateMoviePoster);
    myFLVPlayback.addEventListener(VideoEvent.STOPPED_STATE_ENTERED, updateMoviePoster);
    myFLVPlayback.addEventListener(VideoEvent.COMPLETE, updateMoviePoster);

    Any suggestions?  I would truly appreciate the help.

  • HELP! InDesign CC got an error: The property is not applicable in the current state." number 30615

    HELP! Was working perfectly now it is giving me this error and doesn't seem to be going past the printing option. Code is below.
    main.scpt
    set posixIdPath to "/Applications/Adobe InDesign CC/Adobe InDesign CC.app"
    do shell script "/Users/cdapice/Desktop/cryptoquip/getquip.sh"
    delay 8
    tell application posixIdPath
    activate
    end tell
    delay 8
    set scripttoRun to ":Users:cdapice:Desktop:cryptoquip:Script.jsx" as alias
    tell application "Adobe InDesign CC"
    do script scripttoRun language javascript
    end tell
    delay 5
    Adobe InDesign CC got an error: The property is not applicable in the current state." number 30615
    Script.jsx
    var myDocument = app.open(File("/Users/cdapice/Desktop/cryptoquip/NewCryptoquip.indt"), true);
    //var myDocument = app.activeDocument;
    var myPage = myDocument.pages.item(0);
    var myTextFrame = myPage.textFrames.add();
    //Place a text file in the text frame.
    //Parameters for TextFrame.place():
    //File as File object,
    //[ShowingOptions as Boolean = False]
    //You'll have to fill in your own file path.
    myTextFrame.place(File("/Users/cdapice/Desktop/cryptoquip/quips.txt"));
    //var myTextFrame = app.selection[0];
    myTextFrame.parentStory.pointSize = 10;
    var brkStory = myTextFrame.parentStory.contents;
    var myPIs = myDocument.pageItems;
    var  destTextFrame = myPIs[6];
    destTextFrame.parentStory.contents = brkStory;
    firstChange();
    myTextFrame.remove();
    app.select(destTextFrame);
    splitStory();
    for (i = 0; i < myPIs.length; i++) {
              if (myPIs[i].appliedObjectStyle.name == "puzzleBox") {
                        var newBoxStyle = myPIs[i].appliedObjectStyle;
                        secondChange(myPIs[i]);
            myPIs[i].applyObjectStyle(newBoxStyle,true);
        if(myPIs[i].appliedObjectStyle.name == "otherBox"){
            var newBoxStyle = myPIs[i].appliedObjectStyle;
            myPIs[i].applyObjectStyle(newBoxStyle,true);
    Date.prototype.getMonthFormatted = function() {
        var month = this.getMonth() + 1;
        var formMonth = month < 10 ? '0' + month : month; // ('' + month) for string result
              return formMonth.toString();
    Date.prototype.getDayFormatted = function() {
        var day = this.getDate();
        var formDay = day < 10 ? '0' + day : day; // ('' + day) for string result
              return formDay.toString();
    var newdate = new Date();
    var laterdate = new Date();
    var dayofweek = newdate.getDay();
    var offsetdays = 0;
    switch(dayofweek) {
        case 2:
            offsetdays = 6;
            break;
        case 3:
            offsetdays = 5;
            break;
        case 4:
            offsetdays = 4;
            break;
        case 5:
            offsetdays = 3;
            break;
    app.epsExportPreferences.appliedFlattenerPreset.convertAllStrokesToOutlines = true;
    app.epsExportPreferences.appliedFlattenerPreset.convertAllTextToOutlines = true;
    app.epsExportPreferences.appliedFlattenerPreset.rasterVectorBalance = 100;
    //app.activeDocument.exportFile(ExportFormat.epsType, newFile, false);
    for (i = 1; i < 7; i++) {
        var curPage = i + "";
        var x = i + (offsetdays - 1);
        laterdate.setMonth(newdate.getMonth());
        laterdate.setDate(newdate.getDate());
        //alert(newdate);
        //alert(x);
        //alert(laterdate);
        laterdate.setDate(newdate.getDate() + x);
        //alert(laterdate);
        var nameDate = laterdate.getMonthFormatted() + laterdate.getDayFormatted() + ".eps"
        //alert(nameDate);
        app.epsExportPreferences.pageRange = curPage;
        var curFile = new File("/Users/cdapice/Desktop/cryptoquip/" + nameDate);
        app.activeDocument.exportFile(ExportFormat.epsType, curFile, false);
    var endDate = laterdate.getMonthFormatted() + laterdate.getDayFormatted();
    var firstDate = new Date();
    firstDate.setDate(newdate.getDate() + offsetdays);
    var startDate = firstDate.getMonthFormatted() + firstDate.getDayFormatted();
    var idFile = "cryptoquip_" + startDate + "_" + endDate + ".indd";
    app.activeDocument.save(new File("/Users/cdapice/Desktop/cryptoquip/" + idFile));
    with (app.activeDocument.printPreferences){
            printer = "Advertising - Creative - Color Xerox";
            copies = 1;
            pageRange = "1-6";
            paperSize = "US Letter";
            paperHeight = "11 in";
            paperWidth = "8.5 in";
            printPageOrientation = PrintPageOrientation.landscape;
            pagePosition = PagePositions.centered;
           scaleHeight = 100;
           scaleWidth = 100;
            scaleMode = ScaleModes.scaleWidthHeight;
            scaleProportional = true;
            pageInformationMarks = true;
            colorOutput = ColorOutputModes.COMPOSITE_CMYK;
    app.activeDocument.print(false);
    for(myCounter = app.documents.length; myCounter > 0; myCounter--){
    app.documents.item(myCounter-1).close(SaveOptions.no);
    function firstChange() {
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
              app.findChangeTextOptions.caseSensitive = false;
        app.findTextPreferences.findWhat = "^t";
              app.changeTextPreferences.changeTo = "";
              myDocument.changeText();
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
         app.findTextPreferences.findWhat = "^p^p";
              app.changeTextPreferences.changeTo = "^p";
              myDocument.changeText();
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
              app.findTextPreferences.findWhat = "^p";
              app.changeTextPreferences.changeTo = "^R";
              myDocument.changeText();
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
    function secondChange(curFrame) {
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
              app.findChangeTextOptions.caseSensitive = false;
        app.findTextPreferences.findWhat = "    ";
              app.changeTextPreferences.changeTo = "|";
              curFrame.changeText();
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
         app.findTextPreferences.findWhat = " ";
              app.changeTextPreferences.changeTo = "";
              curFrame.changeText();
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
              app.findTextPreferences.findWhat = "|";
              app.changeTextPreferences.changeTo = " ";
              curFrame.changeText();
              app.findTextPreferences = NothingEnum.NOTHING;
              app.changeTextPreferences = NothingEnum.NOTHING;
    function splitStory(){
              //Make certain that user interaction (display of dialogs, etc.) is turned on.
              app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
              if(app.documents.length != 0){
                        if(app.selection.length != 0){
                                  //Get the first item in the selection.
                                  var mySelection = app.selection[0];
                                  //Process the selection. If text or a text frame is
                                  //selected, do something; otherwise, do nothing.
                                  switch(mySelection.constructor.name){
                                            case "Text":
                                            case "InsertionPoint":
                                            case "Character":
                                            case "Word":
                                            case "Line":
                                            case "TextStyleRange":
                                            case "Paragraph":
                                            case "TextColumn":
                                            case "TextFrame":
                                                      //If the text frame is the only text frame in the story, do nothing.
                                                      if(mySelection.parentStory.textContainers.length > 1){
                                                                //Splitting the story is a two-step process: first, duplicate
                                                                //the text frames, second, delete the original text frames.
                                                                mySplitStory(mySelection.parentStory);
                                                                myRemoveFrames(mySelection.parentStory);
                                                      else{
                                                                alert("Please select a story containing more than one text frame and try again.");
                                                      break;
                                            default:
                                                      alert("Please select some text or a text frame and try again.");
                        else{
                                  alert("Please select some text or a text frame and try again.");
              else{
                        alert("Please open a document and try again.");
    function mySplitStory(myStory){
              var myTextFrame;
              //Duplicate each text frame in the story.
              for(var myCounter = myStory.textContainers.length-1; myCounter >= 0; myCounter --){
                        myTextFrame = myStory.textContainers[myCounter];
                        myTextFrame.duplicate();
    function myRemoveFrames(myStory){
              //Remove each text frame in the story. Iterate backwards to avoid invalid references.
              for(var myCounter = myStory.textContainers.length-1; myCounter >= 0; myCounter --){
                        myStory.textContainers[myCounter].remove();

    Hotfixes are special, out-of-band patches created to fix specific problems, so they are never published to Windows Update.  Often the hotfix gets incorporated into a released patch that is published on Windows Update.  If this hotfix was incorporated
    into a released patch, and you applied that patch to your system, the hotfix would see that its files are older than the latest files on the system and would give you this message.  Because the hotfix is not for general distribution, there is rarely documentation
    saying that it has been superceded.
    Generally there is a file list with a hotfix/patch that gives you the version number of the affected files.  You can go through those files to see that you have the latest files.  The problem is finding the actual patch that updated those files. 
    Without going through lots of patches, it is hard to find which patch made the hotfix obsolete.
    .:|:.:|:. tim

  • Error_27_Error occurred in deployment step 'Activate Features': Operation is not valid due to the current state of the object.

    I created a SharePoint 2013 farm solution project in Visual Studio 2013 (running on the same machine where SharePoint 2013 server is running) with
    event receiver.  I added web.config at project root level to store connection string (I'm working off external SQL DB) and got the following error during deployement:
    Error 27
    Error occurred in deployment step 'Activate Features': Operation is not valid due to the current state of the object.
    When I commented out the ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString; the error went away.  Am I missing something or not supposed to add my own App.config to SharePoint project solution? 

    Hi,
    From your description, you might want to store your connection string in web.config and there is an error during deployment.
    It is recommended to store the configuration data of SharePoint solution in either property bags or hierarchical object store.
    The links below will provide more information about this:
    http://blogs.msdn.com/b/zwsong/archive/2012/03/27/where-should-you-store-your-sharepoint-solution-s-configuration-data.aspx
    http://msdn.microsoft.com/en-us/library/ff647766.aspx
    Thanks
    Patrick Liang
    Forum Support
    Please remember to mark the replies as answers if they
    help and unmark them if they provide no help. If you have feedback for TechNet
    Subscriber Support, contact [email protected]
    Patrick Liang
    TechNet Community Support

  • The update operation is not allowed in the current state of the request

    When users have logged a request through the service manager 2012 portal and they go back in to add user input they sometimes receive a message that says " The update operation is not allowed in the current state of the request." The state of the
    request has not changed it is still Active and has not breached its service level .
    I can't seem to find any information about this error and don't know how to troubleshoot it. Any help and advice would be appreciated.
    Thanks
    Sarah

    ok, so they're adding user comments after creating the service request. looks like this:
    the first thing to check is that the user is added to the default, un-scoped "End User" security role, or the custom end user security role they are added to has a scope that includes all work items. The "user input" field adds a user comment related
    to the SR, so the ability to create user comments is required to use this field.

  • How to find the current state in web dynpro

    Hi,
       Can any one tell me how to find the current state of system (idle /not idle).
    Thanks,
    Krishna..

    Please explain further.  I don't understand how you are expecting to test for idle.  If ABAP code is being executed, then you know that the application is not idle. Only a server event could trigger code execution. Only a timedTrigger would be able to tell you that a certain amount of time has passed without activitity - although the event of the timer itself will be a server event that constitutes activity.

  • When I switch back to an ongoing application, from the switcher, it reverts to its own 'homepage' rather than the stay at the state/stage I left it at. How can I force applications to maintain the current state?

    iPhone 4S with the latest updates 8.1.3 (12B466) installed.
    When I switch back to an ongoing application, from the switcher, it reverts to its own 'homepage' rather than the stay at the state/stage I left it at.
    How can I force applications to maintain the current state?
    I am in the process of getting enough screenshots to demonstrate further.

    ios7 keeps refreshing apps after switching
    solcwd

  • WCF Service update UPS. Operation is not valid due to the current state of the object.

    I try import custom data to custom user properties from my own wcf service (on sharepoint server machine), but i got
    Message "Operation is not valid due to the current state of the object. "
    on line
    userProfile[PropertyConstants.Department].Value = "SDDDD";
    Why i cant modify property value?
    SPSecurity.RunWithElevatedPrivileges(delegate()
    using (SPSite site = new SPSite("http://portal.local"))
    SPServiceContext serviceContext = SPServiceContext.GetContext(site);
    using (var web = site.OpenWeb())
    Debug.WriteLine(web.CurrentUser); //Here AppPoolAccount user of current wcf service
    Debug.WriteLine(WindowsIdentity.GetCurrent().Name); //Here too AppPoolAccount user of current wcf service
    UserProfileManager userProfileMgr = new UserProfileManager(serviceContext);
    ProfilePropertyManager profilePropMgr = new UserProfileConfigManager(serviceContext).ProfilePropertyManager;
    ProfileSubtypePropertyManager subtypePropMgr = profilePropMgr.GetProfileSubtypeProperties("UserProfile");
    UserProfile userProfile = userProfileMgr.GetUserProfile(accountName);
    userProfile[PropertyConstants.Department].Value = "SDDDD";
    userProfile.Commit();
    My service running under domain\SPSvcAcc what have full permissions on UPS service, it's management account and UPS admin with full rights.
    If i create console app with identical code and run it under SPSvcAcc account it working without problems
    What i do wrong?

    Hi,
    pls seee if you can add threading like this below to solve the pbm
    https://social.technet.microsoft.com/Forums/office/en-US/b6d6f85c-e12b-4540-a821-690e296b7b56/operation-is-not-valid-due-to-the-current-state-of-the-object-exception-when-activating-a?forum=sharepointdevelopmentprevious
    Please remember to click 'Mark as Answer' on the answer if it helps you

  • Microsoft RMS Add-in Operation is not valid due to the current state of the object

    Microsoft Rights Management sharing application for Windows
    Microsoft Windows 7/Office 2010 Service Pack 2
    Click 'Share Protected'
    Receive the following error message 'Microsoft RMS Add-in Operation is not valid due to the current state of the object'
    Microsoft Windows 7/Office 2013 Service Pack 1
    Works fine
    Any ideas why this is not working?

    Hi lra,
    As per my understanding, I think this issue can be caused by MaxHttpCollectionKeys settings in report manager web.config file.
    For more details, please refer this similar thread to override the default value of MaxHttpCollectionKeys:
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/cb6ede72-6ed1-4379-9d3c-847c11b75b32/report-manager-operation-cannot-run-due-to-current-state-of-the-object?forum=sqlreportingservices
    Hope this helps.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • "Operation is not valid due to the current state of the object" error when trying to create a link for a shared folder in OneDrive

    I'm trying to share a folder in OneDrive with another user in my organization, and create a link so that people outside of the company can see the folder. Whenever I try to create a link I get an error that says: "Couldn't create the link sorry something
    went wrong operation is not valid due to the current state of the object" How do I resolve this?

    Hi,
    Sorry for replying late and I noticed that you posted another thread in this forum:
    http://social.technet.microsoft.com/Forums/en-US/2b8c6f54-9c59-4b37-b28f-1d49a1b7913b/operation-is-not-valid-due-to-the-current-state-of-the-object-error-when-trying-to-create-a-link?forum=officeitpro
    I've replied and kindly refer to it to see if it is helpful.
    Regards,
    Melon Chen
    TechNet Community Support

  • Restricting P_ORGIN checks to the current state of an employee

    Hello everyone,
    as part of our authorization concept, we are using the field PERSG in authorization object P_ORGIN (and P_ORGINCON) to determine whether a user has access to the infotypes of a given employee.
    In the current example, the user may access employees with a personnel group (PERSG) '1' - '9', but not 'M', because our PERSG 'M' stands for 'manager', so his P_ORGIN and P_ORGINCON are restricted to PERSG BETWEEN '1' AND '9'. Basically, this works nicely.
    However, there are cases in which an employee is promoted to manager level. His former PERSG in infotype 0001 is '1', but beginning from a certain date, his PERSG changes to 'M'. The autorization system now lets the user still see the former periods of time of this employee during which his PERSG was still '1', even though now he is 'M'. I understand that this is correct system behavior as SAP designed it. However, in our case it is undesired by the management. Once an employee has been promoted to PERSG 'M', none of his infotype periods should be visible to any user who does not have the 'M' authorization level.
    Is there a way to achieve this?

    Hello Eva,
    thank you very much, that appears to be the right track already. Trouble is, HRPAD00AUTH_TIME is very poorly documented. It has two methods "CONSIDER_SY_DATUM_EXIT" and "BEGDA_ENDDA_COMPARE_EXIT" which have documentations of their own.
    The documentation of CONSIDER_SY_DATUM_EXIT says that this method is only applicable if T528A-VALDT is set to 'X'. However, the whole table T528A does not even exist in our system?! (7.40)
    Documentation of BEGDA_ENDDA_COMPARE_EXIT leaves me pretty clueless how to interpret the IMPORTING parameters. I would have expected to be able to set the new time for which the system shall check the authorization. However, the only available export parameters allow me to set whether authorization is given or not, overriding the standard coding. So it seems that with this method I am not changing the time period for the check, but overriding the whole authorization process altogether?!
    My other hope was note 570161, but the BADI HRPAD00CHECK_TIME which is referred to there does not seem to exist in our release anymore, so I assume it is obsolete.
    Do you happen to know anything more about the BADI that would make its usage for my purpose more transparent?

  • You can not dereference (- ) a generic reference in the current statement

    Hi,
    I get the message pls see  subject. What is wrong ? Pls help..
    I have copied this code at
    https://www.sdn.sap.com/irj/scn/wiki?path=/pages/viewpage.action&pageid=72220689
    *& Report  ZHAKAN3
    REPORT  ZHAKAN3.
    * TYPE-POOLS *
    TYPE-POOLS: slis.
    DATA: i_fieldcat TYPE slis_t_fieldcat_alv,
    i_index TYPE STANDARD TABLE OF i WITH HEADER LINE,
    w_field TYPE slis_fieldcat_alv,
    p_table LIKE dd02l-tabname,
    dy_table TYPE REF TO data,
    dy_tab TYPE REF TO data,
    dy_line TYPE REF TO data.
    * FIELD-SYMBOLS *
    FIELD-SYMBOLS: <dyn_table> TYPE STANDARD TABLE,
    <dyn_wa> TYPE ANY,
    <dyn_field> TYPE ANY,
    <dyn_tab_temp> TYPE STANDARD TABLE.
    * SELECTION SCREEN *
    PARAMETERS: tabname(30) TYPE c,
    lines(5) TYPE n.
    * START-OF-SELECTION *
    START-OF-SELECTION.
    * Storing table name
    p_table = tabname.
    * Create internal table dynamically with the stucture of table name
    * entered in the selection screen
    CREATE DATA dy_table TYPE STANDARD TABLE OF (p_table).
    ASSIGN dy_table->* TO <dyn_table>.
    IF sy-subrc <> 0.
    MESSAGE i000(z_zzz_ca_messages) WITH ' No table found'.
    LEAVE TO LIST-PROCESSING.
    ENDIF.
    * Create workarea for the table
    CREATE DATA dy_line LIKE LINE OF <dyn_table>.
    ASSIGN dy_line->* TO <dyn_wa>.
    * Create another temp. table
    CREATE DATA dy_tab TYPE STANDARD TABLE OF (p_table).
    ASSIGN dy_tab->* TO <dyn_tab_temp>.
    SORT i_fieldcat BY col_pos.
    * Select data from table
    SELECT * FROM (p_table)
    INTO TABLE <dyn_table>
    UP TO lines ROWS.
    REFRESH <dyn_tab_temp>.
    * Display report
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    i_structure_name = p_table
    i_callback_user_command = 'USER_COMMAND'
    i_callback_pf_status_set = 'SET_PF_STATUS'
    TABLES
    t_outtab = <dyn_table>
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc <> 0.
    ENDIF.
    *& Form SET_PF_STATUS
    * Setting custom PF-Status
    * -->RT_EXTAB Excluding table
    FORM set_pf_status USING rt_extab TYPE slis_t_extab.
    SET PF-STATUS 'Z_STANDARD'.
    ENDFORM. "SET_PF_STATUS
    *& Form user_command
    * Handling custom function codes
    * -->R_UCOMM Function code value
    * -->RS_SELFIELD Info. of cursor position in ALV
    FORM user_command USING r_ucomm LIKE sy-ucomm
    rs_selfield TYPE slis_selfield.
    * Local data declaration
    DATA: li_tab TYPE REF TO data,
    l_line TYPE REF TO data.
    * Local field-symbols
    FIELD-SYMBOLS:<l_tab> TYPE table,
    <l_wa> TYPE ANY.
    * Create table
    CREATE DATA li_tab TYPE STANDARD TABLE OF (p_table).
    ASSIGN li_tab->* TO <l_tab>.
    * Create workarea
    CREATE DATA l_line LIKE LINE OF <l_tab>.
    ASSIGN l_line->* TO <l_wa>.
    CASE r_ucomm.
    * When a record is selected
    WHEN '&IC1'.
    * Read the selected record
    READ TABLE <dyn_table> ASSIGNING <dyn_wa> INDEX
    rs_selfield-tabindex.
    IF sy-subrc = 0.
    * Store the record in an internal table
    APPEND <dyn_wa> TO <l_tab>.
    * Fetch the field catalog info
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
    i_program_name = 'Z_DEMO_PDF_JG'
    i_structure_name = p_table
    CHANGING
    ct_fieldcat = i_fieldcat
    EXCEPTIONS
    inconsistent_interface = 1
    program_error = 2
    OTHERS = 3.
    IF sy-subrc = 0.
    * Make all the fields input enabled except key fields
    w_field-input = 'X'.
    MODIFY i_fieldcat FROM w_field TRANSPORTING input
    WHERE key IS INITIAL.
    ENDIF.
    * Display the record for editing purpose
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    i_structure_name = p_table
    it_fieldcat = i_fieldcat
    i_screen_start_column = 10
    i_screen_start_line = 15
    i_screen_end_column = 200
    i_screen_end_line = 20
    TABLES
    t_outtab = <l_tab>
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc = 0.
    * Read the modified data
    READ TABLE <l_tab> INDEX 1 INTO <l_wa>.
    * If the record is changed then track its index no.
    * and populate it in an internal table for future
    * action
    IF sy-subrc = 0 AND <dyn_wa> <> <l_wa>.
    <dyn_wa> = <l_wa>.
    i_index = rs_selfield-tabindex.
    APPEND i_index.
    ENDIF.
    ENDIF.
    ENDIF.
    * When save button is pressed
    WHEN 'SAVE'.
    * Sort the index table
    SORT i_index.
    * Delete all duplicate records
    DELETE ADJACENT DUPLICATES FROM i_index.
    LOOP AT i_index.
    * Find out the changes in the internal table
    * and populate these changes in another internal table
    READ TABLE <dyn_table> ASSIGNING <dyn_wa> INDEX i_index.
    IF sy-subrc = 0.
    APPEND <dyn_wa> TO <dyn_tab_temp>.
    ENDIF.
    ENDLOOP.
    * Lock the table
    CALL FUNCTION 'ENQUEUE_E_TABLE'
    EXPORTING
    mode_rstable = 'E'
    tabname = p_table
    EXCEPTIONS
    foreign_lock = 1
    system_failure = 2
    OTHERS = 3.
    IF sy-subrc = 0.
    * Modify the database table with these changes
    MODIFY (p_table) FROM TABLE <dyn_tab_temp>.
    REFRESH <dyn_tab_temp>.
    * Unlock the table
    CALL FUNCTION 'DEQUEUE_E_TABLE'
    EXPORTING
    mode_rstable = 'E'
    tabname = p_table.
    ENDIF.
    ENDCASE.
    rs_selfield-refresh = 'X'.
    ENDFORM. "user_command

    Hi,
    The statement should be
    li_tab->*
    not
    li_tab->\*
    I think just a typing mistake
    * TYPE-POOLS *
    TYPE-POOLS: slis.
    DATA: i_fieldcat TYPE slis_t_fieldcat_alv,
    i_index TYPE STANDARD TABLE OF i WITH HEADER LINE,
    w_field TYPE slis_fieldcat_alv,
    p_table LIKE dd02l-tabname,
    dy_table TYPE REF TO data,
    dy_tab TYPE REF TO data,
    dy_line TYPE REF TO data.
    * FIELD-SYMBOLS *
    FIELD-SYMBOLS: <dyn_table> TYPE STANDARD TABLE,
    <dyn_wa> TYPE ANY,
    <dyn_field> TYPE ANY,
    <dyn_tab_temp> TYPE STANDARD TABLE.
    * SELECTION SCREEN *
    PARAMETERS: tabname(30) TYPE c,
    lines(5) TYPE n.
    * START-OF-SELECTION *
    START-OF-SELECTION.
    * Storing table name
    p_table = tabname.
    * Create internal table dynamically with the stucture of table name
    * entered in the selection screen
    CREATE DATA dy_table TYPE STANDARD TABLE OF (p_table).
    ASSIGN dy_table->* TO <dyn_table>.
    IF sy-subrc  NE 0.
    MESSAGE i000(z_zzz_ca_messages) WITH ' No table found'.
    LEAVE TO LIST-PROCESSING.
    ENDIF.
    * Create workarea for the table
    CREATE DATA dy_line LIKE LINE OF <dyn_table>.
    ASSIGN dy_line->* TO <dyn_wa>.
    * Create another temp. table
    CREATE DATA dy_tab TYPE STANDARD TABLE OF (p_table).
    ASSIGN dy_tab->* TO <dyn_tab_temp>.
    SORT i_fieldcat BY col_pos.
    * Select data from table
    SELECT * FROM (p_table)
    INTO TABLE <dyn_table>
    UP TO lines ROWS.
    REFRESH <dyn_tab_temp>.
    * Display report
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    i_structure_name = p_table
    i_callback_user_command = 'USER_COMMAND'
    i_callback_pf_status_set = 'SET_PF_STATUS'
    TABLES
    t_outtab = <dyn_table>
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc  NE 0.
    ENDIF.
    * Setting custom PF-Status
    * \-->RT_EXTAB Excluding table
    FORM set_pf_status USING rt_extab TYPE slis_t_extab.
    SET PF-STATUS 'Z_STANDARD'.
    ENDFORM. "SET_PF_STATUS
    * Handling custom function codes
    * \-->R_UCOMM Function code value
    * \-->RS_SELFIELD Info. of cursor position in ALV
    FORM user_command USING r_ucomm LIKE sy-ucomm
    rs_selfield TYPE slis_selfield.
    * Local data declaration
    DATA: li_tab TYPE REF TO data,
    l_line TYPE REF TO data.
    * Local field-symbols
    FIELD-SYMBOLS:<l_tab> TYPE table,
    <l_wa> TYPE ANY.
    * Create table
    CREATE DATA li_tab TYPE STANDARD TABLE OF (p_table).
    ASSIGN li_tab->* TO <l_tab>.
    * Create workarea
    CREATE DATA l_line LIKE LINE OF <l_tab>.
    ASSIGN l_line->* TO <l_wa>.
    CASE r_ucomm.
    * When a record is selected
    WHEN '&IC1'.
    * Read the selected record
    READ TABLE <dyn_table> ASSIGNING <dyn_wa> INDEX
    rs_selfield-tabindex.
    IF sy-subrc = 0.
    * Store the record in an internal table
    APPEND <dyn_wa> TO <l_tab>.
    * Fetch the field catalog info
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
    i_program_name = 'Z_DEMO_PDF_JG'
    i_structure_name = p_table
    CHANGING
    ct_fieldcat = i_fieldcat
    EXCEPTIONS
    inconsistent_interface = 1
    program_error = 2
    OTHERS = 3.
    IF sy-subrc = 0.
    * Make all the fields input enabled except key fields
    w_field-input = 'X'.
    MODIFY i_fieldcat FROM w_field TRANSPORTING input
    WHERE key IS INITIAL.
    ENDIF.
    * Display the record for editing purpose
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    i_structure_name = p_table
    it_fieldcat = i_fieldcat
    i_screen_start_column = 10
    i_screen_start_line = 15
    i_screen_end_column = 200
    i_screen_end_line = 20
    TABLES
    t_outtab = <l_tab>
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc = 0.
    * Read the modified data
    READ TABLE <l_tab> INDEX 1 INTO <l_wa>.
    * If the record is changed then track its index no.
    * and populate it in an internal table for future
    * action
    IF sy-subrc = 0 AND <dyn_wa>  NE <l_wa>.
    <dyn_wa> = <l_wa>.
    i_index = rs_selfield-tabindex.
    APPEND i_index.
    ENDIF.
    ENDIF.
    ENDIF.
    * When save button is pressed
    WHEN 'SAVE'.
    * Sort the index table
    SORT i_index.
    * Delete all duplicate records
    DELETE ADJACENT DUPLICATES FROM i_index.
    LOOP AT i_index.
    * Find out the changes in the internal table
    * and populate these changes in another internal table
    READ TABLE <dyn_table> ASSIGNING <dyn_wa> INDEX i_index.
    IF sy-subrc = 0.
    APPEND <dyn_wa> TO <dyn_tab_temp>.
    ENDIF.
    ENDLOOP.
    * Lock the table
    CALL FUNCTION 'ENQUEUE_E_TABLE'
    EXPORTING
    mode_rstable = 'E'
    tabname = p_table
    EXCEPTIONS
    foreign_lock = 1
    system_failure = 2
    OTHERS = 3.
    IF sy-subrc = 0.
    * Modify the database table with these changes
    MODIFY (p_table) FROM TABLE <dyn_tab_temp>.
    REFRESH <dyn_tab_temp>.
    * Unlock the table
    CALL FUNCTION 'DEQUEUE_E_TABLE'
    EXPORTING
    mode_rstable = 'E'
    tabname = p_table.
    ENDIF.
    ENDCASE.
    rs_selfield-refresh = 'X'.
    ENDFORM. "user_command
    Regards
    Edited by: Rajvansh Ravi on Mar 2, 2009 9:52 AM

  • Error occurred in deployment step 'Activate Features': Operation is not valid due to the current state of the object.

    I recently copied a solution from one dev box to another. After pushing through a handful of other errors I hit a wall with this one. Any hints as to the human translation would be appreciated. The solution works on the original box. Also if there's
    a way to make the Forum Category list on this page smaller but with more items while making the icons and white space bigger, Microsoft would like to know. Thanks

    Hi George Takei,
    This is a common error message which is not easy to find the root cause directly.
    Here are some general checking steps:
    Check to make sure you haven’t change any objects like namespace, class name, that make feature cannot find specified class.
    Deactivate the feature on the site, reset IIS, and redeploy the solution.
    Kill the vssphost4.exe in Task Manager, to redeploy the feature.
    If the issue persists, it would be better to share the solution here to help to do troubleshooting, what’s the solution used for, is it an event receiver, feature, workflow or other type?
    Thanks,
    Qiao Wei
    TechNet Community Support

  • Operation is not valid due to the current state of the object

    We are working with the System.Transactions for transaction control. An error is happening when confirming a transaction. Even without having changed any information. The user opens a register and does not modify any information, press the Change button and generates the error. Is not processed any UPDATE, DELETE, INSERT. Only queries. Below is the error details:
    Data base: Oracle 11g
    Application Server: Windows 2003 64 bits. Client 11g 32 bits and 64 bits
    Location: System.Transactions
    StackTrace:
    at System.Transactions.TransactionState.ChangeStatePromotedCommitted(InternalTransaction tx)
    at System.Transactions.DurableEnlistmentDelegated.Committed(InternalEnlistment enlistment)
    at System.Transactions.SinglePhaseEnlistment.Committed()
    at Oracle.DataAccess.Client.PromotableTxnMgr.SinglePhaseCommit(SinglePhaseEnlistment spe)
    at System.Transactions.TransactionStateDelegatedCommitting.EnterState(InternalTransaction tx)
    at System.Transactions.TransactionStateDelegated.BeginCommit(InternalTransaction tx, Boolean asyncCommit, AsyncCallback asyncCallback, Object asyncState)
    at System.Transactions.CommittableTransaction.Commit()
    at System.Transactions.TransactionScope.InternalDispose()
    at System.Transactions.TransactionScope.Dispose()
    at FPw.InfraEstrutura.DataAccess.FPwTransacao.Dispose()
    at LG.FPw_Cad.ServicoMapeador.Servicos.FichaCad.Update(Int32 lUserId, Int32 lMatFunc, LGVariant avRegFun, LGVariant avRegATF, Double dSalario, Boolean bConsiste)

    What I meant is that it's done any kind of alteration of the tables involved, because the user does not change any of your information on the screen.
    The problem happens on a client and does not happen in our test environment.
    The version of Oracle.DataAccess both 32-bit and 64 bit is 2.112.1.0.
    What is the code in the following summary:
    1) Is created transactional context:
    Dim TxOptions As New TransactionOptions
    Dim OpcaoDeEscopo As TransactionScopeOption
    Dim Transacao As System.Transactions.TransactionScope
    TxOptions.IsolationLevel = Transactions.IsolationLevel.ReadCommitted
    OpcaoDeEscopo = TransactionScopeOption.Required
    Transacao = New TransactionScope(opcaoDeEscopo, TxOptions, EnterpriseServicesInteropOption.Full)
    2) From this point are open connections are made and query commands to the database.
    Are opened and closed connections to the database.
    3) At the time of effecting the transaction Dispose of the error happens:
    Transacao.Dispose
    Note: Our way of working has its own peculiarities, the connection pool is always disabled: ";Pooling = false". It is inserted directly in the connection string. We need to do this because the pool had memory problems turned prey.
    Therefore the process of opening and closing connections, you can leave the system slow. So to avoid open connections within the transactional context, in some cases we enforce the transaction enlist. As follows:
    Dim TransacaoCorrente As ITransaction = CType(ContextUtil.Transaction, ITransaction)
    Conexao.EnlistDistributedTransaction(TransacaoCorrente)
    Can you help us?
    Edited by: 893128 on Oct 25, 2011 9:24 AM

Maybe you are looking for

  • How to find out the view that calls a pop-up window?

    Hi, The BP_HEAD_SEARCH component is a pop-up called by several other components (Contact, Activity, etc). So I need to customize it in according to which view called it (BP_HEAD or BT126H_APPT, for instance). I see OUTER_REP_VIEW attribute, however i

  • Is it possible to mount an external hard drive as a folder?

    When the drive is connected, I would like it to show up as a folder inside the documents folder instead of a mounted drive on the desktop. I'm quite new to this mac thing, is this possible?

  • Itunes 7 and Music Video not synching

    I have just upgraded to Itunes 7.0 and automatically updated my ipod firmware to 1.2 as instructed. Two problems: 1. Now all the music video's are in Itunes in a smart playlist called music video's and none appear on the ipod. On the Ipod there is a

  • User authentication in a linux ldap server

    Anyone knows how to make user authentication of Mac OS X (10.4.7) clients in a Linux (Suse 9.2) server running LDAP?? I can't figure out how to do this. Thanks and sorry the bad english.

  • VA01 F4 selection screen do not need CR document type in list of doc.type

    Hi My requirement is following step 1: execute T.code VA01 step 2: Press F4 on Order type: you will get list of all Order doument type, (like, OR,KE,KB,KR,CR,DR and etc..) step 3: Now i don't want CR document type in list of order document type throu