How to have repeating columns for SharePoint list

Hi
I am working on SharePoint 2013 environment and trying to customize a SharePoint list using infopath form.
Have a list called "Future Actions" and users need to submit their actions. An user can submit
n number of Planned actions and every user will submit different number of actions.
Columns:
1. Title                                   TEXT
2. Month                                 Choice
3. Planned Actions                   TEXT
I want to capture user's actions in the same form, such that he would have option to expand the
Planned actions column to add n number of Actions.
Simply, For one Month, user should be able to define all actions in one form. and the number of planned actions will vary from user to user.
Pls suggest

Hi,
The OOTB can't provide a feature to meet your requirement.
Here is a similar thread for your reference:
http://social.msdn.microsoft.com/Forums/en-US/e475cc7f-435f-4e6e-b579-c74311d67b4e/creating-repeating-columns-in-sharepoint-2010-list
In SharePoint 2013, we can also customize a special field type using client-side rendering.
http://msdn.microsoft.com/en-us/library/office/jj220061(v=office.15).aspx
Best Regards
Dennis Guo
TechNet Community Support

Similar Messages

  • How to setup sub columns for a list?

    I've setup a team site (SP 2013 on-prem), and the team wants a list with three columns (Letter, Pleading and Priority.) They would like to select a sub column under the Priority column if it's chosen. For example, if they choose the Priority column they
    could choose "High", "Medium" or "Low".

    Hi,
    This is not possible Out Of the Box (OOB).
    Instead you can create 2 lists and relate these columns between them.
    Indul Hassan
    Microsoft Community Contributor
    http://www.indulhassan.com
    You Snooze.. You Lose !!

  • How to create a special view for sharepoint list A and deploy this view to specific user personal view?

    How to create a public view for sharepoint list A and deploy this view to specific user personal view? Is that possible OOTB?

    Views cannot be exported or moved. Can you elaborate your requirement?
    --Cheers

  • How to create new scope for SharePoint calendar?

    How to create new scope for SharePoint calendar?
    I have a calendar list to which I want to create following scopes-
    Annual View
    Half Year 1 (Jan-June)
    Half Year 2 (Jul-Dec)
    Quarter 1 (Jan-Mar)
    Quarter 2 (Apr-Jun)
    Quarter 3 (Jul-Sep)
    Quarter 4 (Oct-Dec)
    How this can be created. Any help appriciated. Thanks.

    Hi Pratima,
    Can you please see below link and code snippet for how to
     format date in gridview.
    http://www.aspdotnet-suresh.com/2011/05/how-to-set-date-format-in-gridview.html
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <title>Gridvew Date format</title>
    </head>
    <body>
    <form id="form1" runat="server">
    <div>
    <asp:GridView runat="server" ID="gvdetails" DataSourceID="dsdetails" AllowPaging="true" AllowSorting="true" AutoGenerateColumns="false">
    <RowStyle BackColor="#EFF3FB" />
    <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
    <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
    <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
    <AlternatingRowStyle BackColor="White" />
    <Columns>
    <asp:BoundField DataField="Date1" HeaderText="Date1" HtmlEncode="false" DataFormatString="{0:s}" />
    <asp:BoundField DataField="Date2" HeaderText="Date2" HtmlEncode="false" DataFormatString="{0:D}" />
    <asp:BoundField DataField="Date3" HeaderText="Date3" HtmlEncode="false" DataFormatString="{0:m}" />
    <asp:BoundField DataField="Date4" HeaderText="Date4" HtmlEncode="false" DataFormatString="{0:d}" />
    <asp:BoundField DataField="Total" HeaderText="Total" HtmlEncode="false" DataFormatString="{0:C2}" />
    </Columns>
    </asp:GridView>
    <asp:SqlDataSource ID="dsdetails" runat="server" SelectCommand="select * from DateFormat" ConnectionString="<%$ConnectionStrings:dbconnection %>"></asp:SqlDataSource>
    </div>
    </form>
    </body>
    </html>
    Hope this will help you.
    Regards
    Soni K

  • How to Filter a DVWP for other list items with same name?

    I have 2 lists, Clients & Engagements.
    The Engagements list has a lookup field to the Clients list (to the Title).
    The Engagements list often has more than on listing (job) for the same client at one time. I am trying to create a DisplayForm on the Engagements list that will also include a DVWP that will list all other items in the Engagements list that have
    the same Client Name ([Title]).
    I tried to use a parameter but not sure which one or if that is correct way? I have looked at the Query String but don't see anything in there to relate the other items together.
    The other option is I could use a Workflow to copy the [ID] column from the Clients list into a [ClientsID] column in the Engagement list but I figure there is an easier way since I already have a lookup column linking the two lists.
    Any help or direction would be appreciated.
    Stunpals - Disclaimer: This posting is provided "AS IS" with no warranties.

    Sudip, this is probably me not understanding the correct terminology for each type of webpart it seems in my reading I have either not understood the reference or the writer had them mixed up.
    Just to clarify I am using SharePoint Foundation 2010.
    I have attached a few screenshots so you can see what I am referring to, so we can avoid any confusion or misused terminology. I created a new test site and 2 new lists so I don't have to block out client data.I have created 2 lists Clients & Jobs. The
    jobs has a lookup to the Clients list. I have been trying to create 1 new display form on each list.
    ***Jobs**
    I want to open the DispForm for the job but also at the bottom of the display list all other jobs with the same client name. (seems straight forward)
    I have inserted a DVWP for the Jobs list and when I try to use a connection the filter list has blank columns for both lists.
    While focused on the upper display form section, I use the "Add Connection"  button and select
    "Send Row of Data To",
    Webpart on this page
    Target webpart=Jobs(1), Target Action=Get Filter Values From
    And the columns are blank and can not be changed or selected
    If I start over, still focused on the top Display webpart and select but select Get Filter Value from the columns are then active but obviously this is backwards from what I am trying to do.
    If I try to follow the Get Filter values from while selecting the bottom DVWP that was inserted, again the columns come up blank.
    I have used connections successfully on different pages and even on this page but not in the fashion I am attempting now.
    This is why I thought I could/should be using/passing a value in the query string then use filtering. I have used the ID in the query string previously but that will not work in this scenario.
    I also considering a similar DispForm from the Clients list showing all Jobs for the open client but have the same issue. This would likely be a more appropriate view but I am interested in seeing if both can be done.
    Honestly my gut is saying filtering and query strings is how I should be doing this but again I am no expert. That's where I started a few weeks ago but despite the numerous guides I have found to do this I still can't get it to work. There is either
    missing instructions or skipped steps or it was done in a different version of SPD and I can not find the tab, feature, etc anywhere even after googling and reading.
    Stunpals - Disclaimer: This posting is provided "AS IS" with no warranties.

  • Group by on more than 2 columns in SharePoint List

    Hi,
    Is there any way to use Group-by on more than 2 columns? I know there is a way using SPD which I have implemented as well, however it makes the page READ-ONLY. 
    Any other way? May be using custom code?

    Try this
    http://chanakyajayabalan.wordpress.com/2010/03/15/group-by-for-more-than-two-columns-in-sharepoint-list/
    http://social.msdn.microsoft.com/Forums/sharepoint/en-US/05fbde73-efdb-40dc-a206-55d56caa21d4/make-group-by-for-3-or-more-then-3-columns-in-sharepoint-2010-list?forum=sharepointdevelopmentprevious
    http://techtrainingnotes.blogspot.in/2011/01/sharepoint-group-by-on-more-than-2.html

  • How get values of columns for selected rows in SortingTable

    Hi,
    is possible to get values of more columns for selected rows? I have SortingTable that have 1st column loaded from list and 2nd and 3rd columns are text areas where user must write some text. I need way how to get values from all three columns for selected rows.
    My table looks like this:
    System name I User Account I  User Password
    system1 ...............jblack ............. passw1
    system2 ...............pdowe..............p@ssw
    system3 ...............ekie................. pas123
    Column System name is loaded from list, columns User Account and User Password are Text class. How can I get values for all three columns in case that I select e.g. system1 or system1 & system2?
    I read [this post|http://forums.sun.com/thread.jspa?forumID=764&threadID=5220609] but there is described selection only for one column.
    Code of my SortingTable is following:
    <Field name='tblDalsiSystemy'>
                   <Display class='SortingTable'>
                       <Property name='align' value='center'/>
                       <Property name='sortEnable' value='false'/>
                       <Property name='selectEnable' value='true'/>
                       <Property name='pageSize' value='5'/>
                       <Property name='pageButtonAlign' value='center'/>
                       <Property name='columns'>
                           <List>
                               <String>System name</String>
                               <String>User Account</String>
                      <String>User Password</String>
                           </List>
                       </Property>
                   </Display>
                   <FieldLoop for='y' in='lstSystemList'>               
                     <Field name='SystemName'>
                         <Display class='SortingTable$Row'>
                             <Property name='key'>
                                 <ref>lstSystemList</ref>
                             </Property>
                         </Display>
                         <Display class='Label'>
                             <Property name='align' value='center'/>
                             <Property name='value'>
                                 <ref>y</ref>                            
                             </Property>
                         </Display>
                     </Field>
                     <Field name='UserAccount'>
                         <Display class='SortingTable$Row'>                        
                         </Display>
                         <Display class='Text'>
                             <Property name='size' value='10'/>
                             <Property name='value'>                            
                             </Property>
                         </Display>
                     </Field>
               <Field name='UserPassword'>
                         <Display class='SortingTable$Row'>                        
                         </Display>
                         <Display class='Text'>
                             <Property name='size' value='10'/>
                             <Property name='value'>                            
                             </Property>
                         </Display>
                     </Field>
                   </FieldLoop>              
               </Field>Getting value is performed by:
    <ref>tblDalsiSystemy.selected</ref>Any help?
    Thanks
    Petr

    Hi Ivan,
    thanks for your advice - it works.
    Here is my final code:
    <Field name='tblDalsiSystemy'>
                   <Display class='SortingTable'>
                       <Property name='align' value='center'/>
                       <Property name='sortEnable' value='false'/>
                       <Property name='selectEnable' value='true'/>
                       <Property name='pageSize' value='5'/>
                       <Property name='pageButtonAlign' value='center'/>
                       <Property name='columns'>
                           <List>
                               <String>System name</String>
                               <String>User Account</String>
                      <String>User Password</String>
                           </List>
                       </Property>
                   </Display>
                   <FieldLoop for='y' in='lstSystemList'>               
                     <Field name='SystemName'>
                         <Display class='SortingTable$Row'>
                             <Property name='key'>
                                 <ref>lstSystemList</ref>
                             </Property>
                         </Display>
                         <Display class='Label'>
                             <Property name='align' value='center'/>
                             <Property name='value'>
                                 <ref>y</ref>                            
                             </Property>
                         </Display>
                     </Field>
                     <Field name='Account[$(y)].login'>
                         <Display class='SortingTable$Row'/>
                         <Display class='Text'>
                             <Property name='size' value='10'/>
                             <Property name='value'>                           
                             </Property>
                         </Display>
                     </Field>
                     <Field name='Account[$(y)].passwd'>
                         <Display class='SortingTable$Row'/>
                         <Display class='Text'>
                             <Property name='size' value='10'/>
                             <Property name='value'>
                             </Property>
                         </Display>
                     </Field>
                   </FieldLoop>              
               </Field>Maybe it could be helpful for somebody another :-)
    Petr

  • How can I repeat a for loop, once it's terms has been fulfilled???

    Well.. I've posted 2 different exceptions about this game today, but I managed to fix them all by myself, but now I'm facing another problem, which is NOT an error, but just a regular question.. HOW CAN I REPEAT A FOR LOOP ONCE IT HAS FULFILLED IT'S TERMS OF RUNNING?!
    I've been trying many different things, AND, the 'continue' statement too, and I honestly think that what it takes IS a continue statement, BUT I don't know how to use it so that it does what I want it too.. -.-'
    Anyway.. Enought chit-chat. I have a nice functional game running that maximum allows 3 apples in the air in the same time.. But now my question is: How can I make it create 3 more appels once the 3 first onces has either been catched or fallen out the screen..?
    Here's my COMPLETE sourcecode, so if you know just a little bit of Java you should be able to figure it out, and hopefully you'll be able to tell me what to do now, to make it repeat my for loop:
    Main.java:
    import java.applet.*;
    import java.awt.*;
    @SuppressWarnings("serial")
    public class Main extends Applet implements Runnable
         private Image buffering_image;
         private Graphics buffering_graphics;
         private int max_apples = 3;
         private int score = 0;
         private GameObject player;
         private GameObject[] apple = new GameObject[max_apples];
         private boolean move_left = false;
         private boolean move_right = false;
        public void init()
            load_content();
            setBackground(Color.BLACK);
         public void run()
              while(true)
                   if(move_left)
                        player.player_x -= player.movement_speed;
                   else if(move_right)
                        player.player_x += player.movement_speed;
                   for(int i = 0; i < max_apples; i++)
                       apple.apple_y += apple[i].falling_speed;
                   repaint();
                   prevent();
                   collision();
              try
              Thread.sleep(20);
              catch(InterruptedException ie)
              System.out.println(ie);
         private void prevent()
              if(player.player_x <= 0)
              player.player_x = 0;     
              else if(player.player_x >= 925)
              player.player_x = 925;     
         private void load_content()
         MediaTracker media = new MediaTracker(this);
         player = new GameObject(getImage(getCodeBase(), "Sprites/player.gif"));
         media.addImage(player.sprite, 0);
         for(int i = 0; i < max_apples; i++)
         apple[i] = new GameObject(getImage(getCodeBase(), "Sprites/apple.jpg"));
         try
         media.waitForAll();     
         catch(Exception e)
              System.out.println(e);
         public boolean collision()
              for(int i = 0; i < max_apples; i++)
              Rectangle apple_rect = new Rectangle(apple[i].apple_x, apple[i].apple_y,
    apple[i].sprite.getWidth(this),
    apple[i].sprite.getHeight(this));
              Rectangle player_rect = new Rectangle(player.player_x, player.player_y,
    player.sprite.getWidth(this),
    player.sprite.getHeight(this));
              if(apple_rect.intersects(player_rect))
                   if(apple[i].alive)
                   score++;
                   apple[i].alive = false;
                   if(!apple[i].alive)
                   apple[i].alive = false;     
         return true;
    public void update(Graphics g)
    if(buffering_image == null)
    buffering_image = createImage(getSize().width, getSize().height);
    buffering_graphics = buffering_image.getGraphics();
    buffering_graphics.setColor(getBackground());
    buffering_graphics.fillRect(0, 0, getSize().width, getSize().height);
    buffering_graphics.setColor(getForeground());
    paint(buffering_graphics);
    g.drawImage(buffering_image, 0, 0, this);
    public boolean keyDown(Event e, int i)
         i = e.key;
    if(i == 1006)
    move_left = true;
    else if(i == 1007)
         move_right = true;
              return true;     
    public boolean keyUp(Event e, int i)
         i = e.key;
    if(i == 1006)
    move_left = false;
    else if(i == 1007)
         move_right = false;
    return true;
    public void paint(Graphics g)
    g.drawImage(player.sprite, player.player_x, player.player_y, this);
    for(int i = 0; i < max_apples; i++)
         if(apple[i].alive)
              g.drawImage(apple[i].sprite, apple[i].apple_x, apple[i].apple_y, this);
    g.setColor(Color.RED);
    g.drawString("Score: " + score, 425, 100);
    public void start()
    Thread thread = new Thread(this);
    thread.start();
    @SuppressWarnings("deprecation")
         public void stop()
         Thread thread = new Thread(this);
    thread.stop();
    GameObject.java:import java.awt.*;
    import java.util.*;
    public class GameObject
    public Image sprite;
    public Random random = new Random();
    public int player_x;
    public int player_y;
    public int movement_speed = 15;
    public int falling_speed;
    public int apple_x;
    public int apple_y;
    public boolean alive;
    public GameObject(Image loaded_image)
         player_x = 425;
         player_y = 725;
         sprite = loaded_image;
         falling_speed = random.nextInt(10) + 1;
         apple_x = random.nextInt(920) + 1;
         apple_y = random.nextInt(100) + 1;
         alive = true;
    And now all I need is you to answer my question! =)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    package forums;
    import java.util.Random;
    import javax.swing.Timer;
    import javax.imageio.ImageIO;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.io.*;
    public class VimsiesRetardedAppleGamePanel extends JPanel implements KeyListener
      private static final long serialVersionUID = 1L;
      private static final int WIDTH = 800;
      private static final int HEIGHT = 600;
      private static final int MAX_APPLES = 3;
      private static final Random RANDOM = new Random();
      private int score = 0;
      private Player player;
      private Apple[] apples = new Apple[MAX_APPLES];
      private boolean moveLeft = false;
      private boolean moveRight = false;
      abstract class Sprite
        public final Image image;
        public int x;
        public int y;
        public boolean isAlive = true;
        public Sprite(String imageFilename, int x, int y) {
          try {
            this.image = ImageIO.read(new File(imageFilename));
          } catch (IOException e) {
            e.printStackTrace();
            throw new RuntimeException("Bailing out: Can't load images!");
          this.x = x;
          this.y = y;
          this.isAlive = true;
        public Rectangle getRectangle() {
          return new Rectangle(x, y, image.getWidth(null), image.getHeight(null));
      class Player extends Sprite
        public static final int SPEED = 15;
        public Player() {
          super("C:/Java/home/src/images/player.jpg", WIDTH/2, 0);
          y = HEIGHT-image.getHeight(null)-30;
      class Apple extends Sprite
        public int fallingSpeed;
        public Apple() {
          super("C:/Java/home/src/images/apple.jpg", 0, 0);
          reset();
        public void reset() {
          this.x = RANDOM.nextInt(WIDTH-image.getWidth(null));
          this.y = RANDOM.nextInt(300);
          this.fallingSpeed = RANDOM.nextInt(8) + 3;
          this.isAlive = true;
      private final Timer timer = new Timer(200,
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            repaint();
      public VimsiesRetardedAppleGamePanel() {
        this.player = new Player();
        for(int i=0; i<MAX_APPLES; i++) {
          apples[i] = new Apple();
        setBackground(Color.BLACK);
        setFocusable(true); // required to generate key listener events.
        addKeyListener(this);
        timer.setInitialDelay(1000);
        timer.start();
      public void keyPressed(KeyEvent e)  {
        if (e.getKeyCode() == e.VK_LEFT) {
          moveLeft = true;
          moveRight = false;
        } else if (e.getKeyCode() == e.VK_RIGHT) {
          moveRight = true;
          moveLeft = false;
      public void keyReleased(KeyEvent e) {
        moveRight = false;
        moveLeft = false;
      public void keyTyped(KeyEvent e) {
        // do nothing
      public void paintComponent(Graphics g) {
        super.paintComponent(g);
        //System.err.println("DEBUG: moveLeft="+moveLeft+", moveRight="+moveRight);
        if ( moveLeft ) {
          player.x -= player.SPEED;
          if (player.x < 0) {
            player.x = 0;
        } else if ( moveRight ) {
          player.x += player.SPEED;
          if (player.x > getWidth()) {
            player.x = getWidth();
        //System.err.println("DEBUG: player.x="+player.x);
        Rectangle playerRect = player.getRectangle();
        for ( Apple apple : apples ) {
          apple.y += apple.fallingSpeed;
          Rectangle appleRect = apple.getRectangle();
          if ( appleRect.intersects(playerRect) ) {
            if ( apple.isAlive ) {
              score++;
              apple.isAlive = false;
        g.drawImage(player.image, player.x, player.y, this);
        for( Apple apple : apples ) {
          if ( apple.isAlive ) {
            g.drawImage(apple.image, apple.x, apple.y, this);
        g.setColor(Color.RED);
        g.drawString("Score: " + score, WIDTH/2-30, 10);
      private static void createAndShowGUI() {
        JFrame frame = new JFrame("Vimsies Retarded Apple Game");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(new VimsiesRetardedAppleGamePanel());
        frame.pack();
        frame.setSize(WIDTH, HEIGHT);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
      public static void main(String[] args) {
        SwingUtilities.invokeLater(
          new Runnable() {
            public void run() {
              createAndShowGUI();
    }Hey Vimsie, try resetting a dead apple and see what happens.

  • Build XML for Custom Nested Accordian (like Tree View Structure) for SharePoint List Data

    Expected output in Xml:
    <?xml version="1.0" encoding="utf-8" ?>
    - <TopRoot>
    - <Root id="1" Name="Department">
    - <Type id="2" Name="IT">
    - <SubType id="3" Name="Technology">
      <SubSubType id="4" Name="Sharepoint" />
      <SubSubType id="5" Name="ASP.NET" />
      <SubSubType id="6" Name="HTML 5" />
      </SubType>
      </Type>
    </Root>
    </TopRoot>
    List Details:
    list details for storing category / sub category data and code to build tree structure for the same.
    1.Create Custom List named “CategoryDetails”:
    2.Create Column “Category Name” of type single line of text. Make it as required field and check Yes for Enforce Unique values.
    3.Create column “Parent Category” of type lookup. under Additional Column Settings.
    Get information dropdown, select “CategoryDetails”.
    4.Choice column ["SRTypeName"] 1.Root,2.SRTYPE,3.SubSRTYPE, 4.SUBSUBSRTYPE
    In this column dropdown, select “Category Name”:  
    Referance:
    http://www.codeproject.com/Tips/627580/Build-Tree-View-Structure-for-SharePoint-List-Data    -fine but don't want tree view just generate xml string
    i just follwed above link it work perferfectly fine for building tree view but i don't want server control.
    Expected Result:
    My ultimate goal is to generate xml string like above format without building tree view.
    I want to generate xml using web service and using xml i could convert into nested Tree View Accordian in html.
    I developed some code but its not working to generate xml /string.
    My modified Code:
    public const string DYNAMIC_CAML_QUERY =
            "<Where><IsNull><FieldRef Name='{0}' /></IsNull></Where>";
            public const string DYNAMIC_CAML_QUERY_GET_CHILD_NODE =
            "<Where><Eq><FieldRef Name='{0}' /><Value Type='LookupMulti'>{1}</Value></Eq></Where>";
            protected void Page_Load(object sender, EventArgs e)
                if (!Page.IsPostBack)
                 string TreeViewStr= BuildTree();
                 Literal1.Text = TreeViewStr;
            StringBuilder sbRoot= new StringBuilder();
            protected string BuildTree()
                SPList TasksList;
                SPQuery objSPQuery;
                StringBuilder Query = new StringBuilder();
                SPListItemCollection objItems;
                string DisplayColumn = string.Empty;
                string Title = string.Empty;
                string[] valueArray = null;
                try
                    using (SPSite site = new SPSite(SPContext.Current.Web.Url))
                        using (SPWeb web = site.OpenWeb())
                            TasksList = SPContext.Current.Web.Lists["Service"];
                            if (TasksList != null)
                                objSPQuery = new SPQuery();
                                Query.Append(String.Format(DYNAMIC_CAML_QUERY, "Parent_x0020_Service_x0020_Id"));
                                objSPQuery.Query = Query.ToString();
                                objItems = TasksList.GetItems(objSPQuery);
                                if (objItems != null && objItems.Count > 0)
                                    foreach (SPListItem objItem in objItems)
                                        DisplayColumn = Convert.ToString(objItem["Title"]);
                                        Title = Convert.ToString(objItem["Title"]);
                                        int rootId=objItem["ID"].ToString();
                                        sbRoot.Append("<Root id="+rootId+"
    Name="+Title+">");
                                        string SRAndSUBSRTpe = CreateTree(Title, valueArray,
    null, DisplayColumn, objItem["ID"].ToString());
                                        sbRoot.Append(SRAndSUBSRTpe);
                                        SRType.Clear();//make SRType Empty
                                        strhtml.Clear();
                                    SRType.Append("</Root>");
                catch (Exception ex)
                    throw ex;
                return SRType.ToString();
             StringBuilder strhtml = new StringBuilder();
            private string CreateTree(string RootNode, string[] valueArray,
          List<SPListItem> objNodeCollection, string DisplayValue, string KeyValue)
                try
                    strhtml.Appends(GetSRType(KeyValue, valueArray, objNodeCollection);
                catch (Exception ex)
                    throw ex;
                return strhtml;
            StringBuilder SRType = new StringBuilder();
            private string GetSRType(string RootNode,
            string[] valueArray, List<SPListItem> objListItemColn)
                SPQuery objSPQuery;
                SPListItemCollection objItems = null;
                List<SPListItem> objNodeListItems = new List<SPListItem>();
                objSPQuery = new SPQuery();
                string objNodeTitle = string.Empty;
                string objLookupColumn = string.Empty;
                StringBuilder Query = new StringBuilder();
                SPList objTaskList;
                SPField spField;
                string objKeyColumn;
                string SrTypeCategory;
                try
                    objTaskList = SPContext.Current.Web.Lists["Service"];
                    objLookupColumn = "Parent_x0020_Service_x0020_Id";//objTreeViewControlField.ParentLookup;
                    Query.Append(String.Format
                    (DYNAMIC_CAML_QUERY_GET_CHILD_NODE, objLookupColumn, RootNode));
                    objSPQuery.Query = Query.ToString();
                    objItems = objTaskList.GetItems(objSPQuery);
                    foreach (SPListItem objItem in objItems)
                        objNodeListItems.Add(objItem);
                    if (objNodeListItems != null && objNodeListItems.Count > 0)
                        foreach (SPListItem objItem in objNodeListItems)
                            RootNode = Convert.ToString(objItem["Title"]);
                            objKeyColumn = Convert.ToString(objItem["ID"]);
                            objNodeTitle = Convert.ToString(objItem["Title"]);
                            SrTypeCategory= Convert.ToString(objItem["SRTypeName"]);
                           if(SrTypeCategory =="SRtYpe")
                              SRType.Append("<Type  id="+objKeyColumn+" Name="+RootNode+ ">");
                             if (!String.IsNullOrEmpty(objNodeTitle))
                              SRType.Append(GetSRType(objKeyColumn, valueArray, objListItemColn));
                          if(SrTypeCategory =="SRSubTYpe")
                              SRType.Append("<SRSubType  id="+objKeyColumn+" Name="+RootNode+
    ">");  
                             if (!String.IsNullOrEmpty(objNodeTitle))
                              SRType.Append(GetSRType(objKeyColumn, valueArray, objListItemColn));
                          if(SrTypeCategory =="SubSubTYpe")
                              SRType.Append("<SubSubType  id="+objKeyColumn+" Name="+RootNode +"
    ></SubSubType");  
                        SRType.Append("</SubType>");
                        SRType.Append("</Type>");
                catch (Exception ex)
                    throw ex;
                return SRType.ToString();
                // Call method again (recursion) to get the child items

    Hi,
    According to your post, my understanding is that you want to custom action for context menu in "Site Content and Structure" in SharePoint 2010.
    In "SiteManager.aspx", SharePoint use MenuItemTemplate class which represent a control that creates an item in a drop-down menu.
    For example, to create or delete the ECB menu for a list item in
    "Site Content and Structure", we can follow the steps below:
    To add the “My Like” menu, we can add the code below:      
    <SharePoint:MenuItemTemplate
    UseShortId=false
    id="OLListItemLike"
    runat="server"
    Text="My Like"
    ImageUrl="/_layouts/images/DelItem.gif"
    ClientOnClickNavigateUrl="https://www.google.com.hk/"
    />
    To remove the “Delete” menu, we can comment the code below:
    <SharePoint:MenuItemTemplate
    UseShortId=false
    id="OLListItemDelete"
    runat="server"
    Text="<%$Resources:cms,SmtDelete%>"
    ImageUrl="/_layouts/images/DelItem.gif"
    ClientOnClickScript="%SmtObjectDeleteScript%"
    />            
    The result is as below:
    More information:
    MenuItemTemplate Class (Microsoft.SharePoint.WebControls)
    MenuItemTemplate.ClientOnClickScript property (Microsoft.SharePoint.WebControls)
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • HOW TO: Add /manipulate columns for a GridControl

    HOW TO: Add /manipulate columns for a GridControl when the columns (attributes) are from different entity objects.
    This HOWTO describes the basic steps of using attributes from different entity objects for a GridControl.
    One way you can create a GridControl which contain attributes from different entity objects is to create a view object and base it on the entity objects which contain
    the desired attributes.
    Here are the basic steps:
    1.Create a new view object (or use an existing view object) by selecting File>New from the menu, clicking the Business Components tab and double-clicking
    on the View Object icon.
    2.In the View Object wizard change the name to something meaningful.
    3.Select the entity objects you will base your view object on.
    4.Nivigate to the attribute screen and select the attributes you would like to include in your view object from each entity object. At this point you can also create
    a new attribute by clicking the "New" button. The new attribute can be a concatenation of other attributes, derived from a calculation etc.
    5.In the query panel of the View Object wizard, click "Expert mode" and enter a query statement. You write complex queries such as decoding a set of attribute
    values.
    6.Add your newly to your newly created view object to the application module by double-clicking on the application module in the navigation pane and selecting
    your view object from the list.
    7.Create a new row set.
    8.Bind row set to a query by editing their queryinfo property and selecting your view object and its attributes from the queryInfo pane.
    9.Create a GridControl and bind it to the row set by editing the dataItemName property of the GridControl. Since the GridControl is bound at the row set level
    all of the related attributes are automatically added.
    null

    Michael,
    Are you intending this as a commercial solution or a work around?
    To take an existing equivalent, one would build a view in the database tailored for each grid in an Oracle Forms application. Or a separate query layered over tables for each form/grid in a Delphi or Access application? Even if it is ninety nine percent the same over half a dozen forms/grids?
    And now you've added a whole slew of "slightly different" rowSetInfos to maintain.
    So if you wanted to add a column that needs to appear everywhere... you've just increased the workload multi-fold?
    That would be a management nightmare, wouldn't it? Not to mention yet more performance cost and a slower system?
    Hmmmm..... I'm not sure I like where this is headed... someone needs to do some convincing...
    null

  • How to have Secure Connection for File Adapter.Pls help

    Hi All,
    For File to File Scenario
    How to have Secure Connection for File Adapter.
    Pls send links/blogs explaining this scenario.
    Regards

    hi rich
    go through these links
    FTPs connection failed - error ".. certificate rejected by ChainVerifier"
    Re: What is SFTP, FTI channels
    http://help.sap.com/saphelp_erp2005/helpdata/en/e3/94007075cae04f930cc4c034e411e1/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/frameset.htm
    FTPS implementation question.
    http://help.sap.com/saphelp_nw04s/helpdata/en/43/0e16bfd7b021aee10000000a1553f6/frameset.htm
    Server certificate rejected by ChainVerifier:FTPS server(Points Guaranteed)
    /people/krishna.moorthyp/blog/2007/07/31/sftp-vs-ftps-in-sap-pi
    File adapter
    thanks
    Kunaal

  • How to hide ,unhide columns  in ALV List

    Hi all,
    How to hide ,unhide columns  in ALV List..
    Plz guide me.
    Thanks in advance..
    Albert

    Hi Joseph,
    Check the following thread:
    Hide Unhide columns of ALV grid Report.
    Regards,
    Archana

  • How to determine pricing procedure for invoice list

    Hi ,
    Could you pl let me know "How to determine pricing procedure for invoice list"
    All other things are available i.e.
    Create Condition Tables
    Maintain access sequences
    Maintain pricing procedures
    Define condition types
    Basically how the pricing procedure will be assigned for the Invoice list.
    br
    pinky

    Hi Pinky,
    Create a billing doc type by coping std.(ZF1)
    Assign invoice list to billing type Zf1
    Now maintain a document pricing procedure (for Eg: Z )
    Assign this to billing type in pricing control - document pricing procedure.
    Now maintain the pricing procedure determination as per the sales area /doc pp/cust pp.
    Also in copy control in VTFL maintain pricing type as " B".
    REgards,
    Krishna O

  • I want to buy an iphone 5 in san francisco, do i have to wait for a list or something?

    do i have to wait for a list or something to buy my iphone 5?

    Nope. If they have them in stock, then you can get one, and if they don't, try again later. No list.

  • Open Hyperlink column in sharepoint list in Modal dialog box without redirecting to any page.

    Please help me to achieve:
    open Hyperlink column in SharePoint list in Modal dialog box without redirecting to any page.

    You can use the JSLink to achieve it:
    link
    [custom.development]

Maybe you are looking for

  • Can't Restore Ipod...error message

    I presume I need to restore my 5th gen Ipod as I can't sync it with itunes. However I also can't restore it. I get a 1418 error message, also had a -50 error message too. It has worked once since i got it, i synced it with a mates computer. But I can

  • Please help with importing and using imovie and idvd

    Hi, Please forgive my lack of knowledge. I previously had a mini dv camcorder that was so easy to use with imovie hd. Now that I have switched to an HD Usb 2.0 camcorder that has built in 16gb memory and memory cards, I have had such a great deal of

  • What is Condition records in tcode NACR?

    Hi all, I started with NACE and went to NACR somehow... Please explain in layman terms what is condition records and is it related to EDI/IDocs? Also and if possible point me to related files or threads. Thanks, Charles.

  • Firefox 3.6.9. will not let me add any new bookmarks, even after uninstalling and reinstalling. I would like to be able to bookmark new pages, please help.

    Regardless of whether I try bookmarking using ⌘D or the star on the right of the address bar or using the drop down Bookmarks tab, Firefox will not bookmark the page. It doesn't matter what page I am trying to bookmark, I can't bookmark any of them.

  • New DW CS6 Update

    What the hell Adobe? You do this "update" and now my workspace is gone that I custom created. Fine I can fairly easily fix that even though you screwed it up. BUT... But now I look to add items to my Favorites Menu bar and you REMOVED a bunch of item