Make Title field enforce unique values in custom list definition (SharePoint 2010) - list

I have a custom list definition, and I am trying to rename the custom 'Title' field to 'Name' and to make it enforce unique values. First, I referenced it in the custom content type (Elements.xml):
<FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title"/>
and then in the list template (Schema.xml):
<Field ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Name" Type="Text" AllowDuplicateValues="FALSE" Required="TRUE"></Field>
The field is renamed, but I can add list items with the same title. If I go in the field settings page, the Enforce unique values property is set to false. How can I enable it, what I am doing wrong?

In order to make this work you need to add:
Required="TRUE" EnforceUniqueValues="TRUE" Indexed="TRUE"
And Remove
AllowDuplicateValues
To your <Field> in both the Elements.xml and the Schema.xml of your list definition.

Related

journal_id field in account.payment is not getting override in odoo 10

I want to change the domain filter of journal_id field which is currently [('type', 'in', ('bank', 'cash'))] this. I wanna apply only [('type', '=', 'cash')]. But its not changing while I am trying to override it.
I applied xpath and replace it with my custom domain
I created the field again and applied the domain but thats too not giving me the proper result
<xpath expr="//field[#name='journal_id']" position="after">
<field name="journal_id" widget="selection"
domain=" [('employee_id.user_id','=',uid)]"/>
<xpath/>
or
`<field name="journal_id" position="attributes">
<attribute name="domain">[('type','=',cash)]</attribute>
</field>
I want to show only those journal in drop down whose type is 'cash'
Please help out in this.
There is function which is setting domain in payment and you have to find that function and override it according to your requirement.

TFS 2013 Bug Work Item Template: Hide and Un-Hide Fields Based on Another Field's Value for Additional Input Parameters

I am in the process of updating my Bug template in TFS 2013 via the Process Editor tool in Visual Studio.
I'm attempting to only display an additional field when a specific choice is selected from one of the drop-down menus. We require individuals filing bugs to select the environment in which the bug was found, i.e., Development, Test, Staging, Production. I want an additional string field to display when "Production" is selected from the Environment drop-down menu. I also want this field to be required when "Production" is selected before the item can be saved.
I'm sure this is easy to do, but, I just can't figure it out.
Any help would be fantastic, thank you!
You can have the XML of Environment field looks like:
<FieldDefinition name="EnvironmentCustom" refname="env.field" type="String">
<ALLOWEDVALUES expanditems="true">
<LISTITEM value="Development" />
<LISTITEM value="Test" />
<LISTITEM value="Staging" />
<LISTITEM value="Production" />
</ALLOWEDVALUES>
</FieldDefinition>
And make the XML of additional field looks like:
<FieldDefinition name="VarCustom" refname="var.field" type="String">
<WHEN field="env.field" value="Production">
<REQUIRED />
<ALLOWEDVALUES expanditems="true">
<LISTITEM value="good" />
<LISTITEM value="bad" />
</ALLOWEDVALUES>
</WHEN>
</FieldDefinition>
In this way, you'll see Environment field has a drop down with values "Development", "Test", "Staging", "Production", and additional field has a drop down with values "good", "bad". Once you select "Production" in Environment field, the additional field will become Required, you'll have to select a vlue for additional field before saving this work item type.
Adding:
If you don't want to a drop down under the additional field, you can remove the ALLOWEDVALUES rule, then you can type any string in it. The XML looks like:
<FieldDefinition name="VarCustom" refname="var.field" type="String">
<WHEN field="env.field" value="Production">
<REQUIRED />
</WHEN>
</FieldDefinition>
It's not able to hide/un-hide VarCustom field by using Rules, you need to customize your own work item control to achieve your requirement. You can check the links and examples about custom work item control at website below:
https://witcustomcontrols.codeplex.com/

Joomla 2.5 form field best practice for dynamic drop down list

I need a drop down list that displays the next 10 years starting with the current. I have added the form field in my .xml file this way:
<field
name="ccYear" type="sql" default="" label="Year"
query="SELECT #rownum:=#rownum+1 as rownum, YEAR(CURDATE())+#rownum value FROM #__content, (SELECT #rownum:= -1) AS a limit 10"
key_field="value"
value_field="value"
/>
This works well enough, but I feel like there might be a better way. The integer field type seems like a great candidate, but I don't know how to get the dynamic current year:
<field name="ccYear2" type="integer" label="" class="ddDate" description="" first="2013" last="2023" step="1" />
You can create your own type field, just need to create class for it,
and put it into:
com_componen/models/fields/ccyear.php
jimport('joomla.form.formfield');
class JFormFieldCcyear extends JFormField
{
protected $type = 'ccyear';
protected function getInput()
{
$options = JHTML::_('select.integerlist', date('Y'), date('Y', strtotime("+10 years")), 1, 'year', 'class="inputbox"');
return $options;
}
}
How to use:
<field name="ccyear" type="ccyear" label="Year"/>

Sharepoint Deploy new Column to list

I'm fairly new to SharePoint 2010, I've had some experience with 2007 but only debugging and fixing some small bug.
Assuming that i create a new solution for SP 2010 in VS2010 and i add a feature to create some list definitions and also some list instances of those list definition templates. These are all declared through Schema.xml =>
I deploy successfully and add a few items to my new lists.
Now i want to add a few extra columns (fields) to my lists, how will i deploy them?
I don't want to create them in code, i would like to have a up to date solution that with every new developer a simple deployment would create an up and running Dev environment.
What is the correct way to do the deployment in this case?
If you have the schema.xml file defined for the list, then you really want to add your new columns using the collection within the list definition. You also want to be sure your list is defined by a content type, allowing for reuse. So within your schema.xml file, it would look something like this:
<List xmlns:ows="Microsoft SharePoint" Title="Test List" FolderCreation="FALSE" Direction="$Resources:Direction;" Url="Lists/Test-List" BaseType="0" xmlns="http://schemas.microsoft.com/sharepoint/">
<MetaData>
<ContentTypes>
<ContentType ID="0x010068a2e063a1a74913a37ecdb61ab2c721" Name="Test" Group="Custom Content Types" Description="Test Description" Inherits="TRUE" Version="0">
<FieldRefs>
<FieldRef ID="{c2f80e7d-666e-4273-8b58-d5c8a13a9d6a}" Name="Col1" ShowInNewForm="TRUE" Required="TRUE" ShowInEditForm="TRUE"/>
<FieldRef ID="{a84d620a-d42d-455c-8ef8-7e9f1d443250}" Name="Col2" Required="TRUE" ShowInNewForm="TRUE" ShowInEditForm="TRUE"/>
<!-- Your new field refs here here -->
</FieldRefs>
</ContentType>
</ContentTypes>
<Fields>
<Field ID="{c2f80e7d-666e-4273-8b58-d5c8a13a9d6a}" Type="Text" AllowDeletion="FALSE" Description="Key" AllowDuplicateValues="FALSE" EnforceUniqueValues="TRUE" Indexed="TRUE" Name="Col1" DisplayName="Col1" Group="Custom Columns" />
<Field ID="{a84d620a-d42d-455c-8ef8-7e9f1d443250}" Type="Text" AllowDeletion="FALSE" Name="Col2" DisplayName="Col2" Group="Custom Columns" />
<!-- Your new fields here -->
</Fields>
...
</MetaData>
</List>
Don't forget to change your View as well!

SharePoint 2010 List Schema.XML not working as imagined

I am created an External List in VS and in the schema.XML file I have a few fields that I would like to change their display name, and format some dates.
We created an External List in SP, exported the wsp, and grabbed the list components of the site and added it to our project.
Here is an example of what I thought would work, but it does not.
<Field DisplayName="Date Closed" Format="DateOnly" Hidden="FALSE" Name="DateClosed" SourceID="http://schemas.microsoft.com/sharepoint/v3" StaticName="DateClosed" Type="DateTime" />
<Field DisplayName="Closed By" Hidden="FALSE" Name="ClosedBy" SourceID="http://schemas.microsoft.com/sharepoint/v3" StaticName="ClosedBy" Type="Text" />
We have a filter setup in the section which is working, so I know that the file is being used. Any insight as to why the changes I made to the field are not taking effect?