Implement Different Expiry Dates on Documents in a Library - sharepoint

I need to be able to set different expiry dates for each document in a document library; some with no expiry date. What is the best approach for this? Information Policy Management or custom code? If custom code, how would I go about it, use a Site Column for the date?

If you have MOSS, using expiration policies sure seems like the way to go. As you probably know, if you don't have a date field in your library that you can go off of (even through some calculation), then you'll probably have to write custom code to determine the date. But, this custom code is used by the expiration policy.

I was eventually able to accomplish this with OOTB (out of the box) functionality. I created a document library and then created a "Custom View" for it. With the custom view, I was able to apply a rule for the expiry date (a column which I added to doc library). In the end it was pretty easy, though not very obvious :-)

Related

What format is this template string/formula field in?

I am building an integration for a client with the HelloWorks API. This is a service that allows you to create user-fillable PDF forms.
It appears that their product supports formatted/template strings/formula fields as outputs to the PDF files, as when
I create a Date field, it creates an output field with the following data:
#{format(:date, #field_XXXXX, "{0M}/{0D}/{YYYY}")}
However, I cannot find any kind of documentation as to what is the format of this template string/formula field.
In case anyone is still looking for an answer for this, this is what HelloWorks support team has to say.
As for documentation for the format, we do not have any documentation for that at this time and the ability to make those edits are going to be depreciated in the future as our product team wants to bring those capabilities to the portal without custom edits.

Changing creation time for a product

I need to change creation time of a product for my custom logic in my project for the PLP.Is it fine to alter the creation time for a product,via ImpEx?Is it recommended or can it break something else?
Creation Time is initial=true, which means it can be set only once, and only during creation. It can't be edited after that. This value is automatically set by Hybris, and I wouldn't recommend changing it.
Yes you can change it if you use forceWrite=true and use the legacy import mode (it only uses the Jalo layer).
Cf. https://help.hybris.com/1808/hcd/8bef094d86691014a87a93789935b39b.html
However this should only be used for testing purpose. In your project you'll prefer creating a custom attribute to store your own "creation date" if you absolutely need to have logic on this info.
Also, to answer your question, modifying the creation date may impact the cache management. And if you force inconsistent values (creation in the futur or after the modification date for example) you can expect weird results.
Yes, it's not recommended to change it and neither you can change with any modifiers or ImpEx. Still, if you need to change, you can use SQL query to update it directly on database level.

Liferay Structure Predefined Value

Which table in Liferay stores the predefined values given for a structure.
Also is there a facility in Liferay to populate these values dynamically using webservices?
The API used to be JournalStructureService, however, as the documentation states, this has been replaced with the Dynamic Data Display API, which, for example, you can find under DDMStructureService in version 6.2.
This gives you a hint where to find the underlying data, however, you don't want to manually write to the database. You do want to use the API to change values. Trust me. Consider the database to be an implementation detail and leave it alone - if nothing else to make your next upgrade experience easier. You should never change any values in the database manually without knowing exactly what you're doing. And, trust me, the keyword here is "exactly", and you'll fail to know all the possible side effects. Don't touch it.
As said #Olaf, depends on Liferay version you will need to use the JournalStructureService or the DDMStructureService. So, if you want to use the Liferay Service by web api you have two options the Axis api where you can obtain WSDL (domain:port/api/axis) or you can use the Json api (domain:port/api/axis). In many cases you are going to need a token to use this services.

Sharepoint 2010 advanced sort

I'm using advanced sort for a date view web part to set up a 3 part hierarchy. One of the fields is #Meeting_x0020_Name. The # sign returns all attributes for the context node, which gives me something like 3;#2014 2nd Quarter Meeting.
I don't want to display 3;# but only meeting name. How would I do that?
I'm not using code, but only the built in functions in SP.
Use this formula:
substring-after(#Meeting_x0020_Name,'#')
Unfortunately, I don't think this is going to be possible with out-of-the-box web parts in SharePoint 2010. Sorting is a bit limited already in 2010 an there is nothing built into the out-of-the-box web parts to allow you to parse out the meeting name. You may need to consider a custom solution if this is a requirement.

Export list of Sitecore items as Excel (or other formats)

I noticed that sitecore has the option of exporting users in an Excel format.
I need to have similar functionality for exporting 'participations', (a users can enlist to take part in an 'event', and if their entry is approved via a sitecore workflow, a 'participation' item is created in the content tree)
Since mostly everything in Sitecore is in essence based on items, and I want to export items to Excel, my question is - what are some of the best ways of doing this?
Questions:
Is there a way to re-use this functionality for regular items?
Would it be a good idea to create a custom admin page (any tips on doing this?) which has some custom code that reads the items from the database using the API?
are there sitecore plugins/shared source projects that can help me achieve this?
Or does anyone have a better idea? - would it be better to just store the participations in SQL? I'm mostly doing it this way because I want to make use of the 'free' functionality offers, for example workflow, but if that leads to me using anti-patterns please shoot me ;)
Link is different now: https://marketplace.sitecore.net/en/Modules/Advanced_System_Reporter.aspx
P.S. Couldn't leave a comment to original answer as I don't have enough reputation. Oh well :)
Found a most excellent shared source module which does exactly this (and much more)!
Basically it allows you to configure (and easily extend, if you need to) any kind of table based report on 'items'.
The report module shows up as an application in the sitecore menu (like the user manager tool) and comes with features such as xml,csv, xls export. It's also really easy to set up, once you get the hang of it.
http://trac.sitecore.net/AdvancedSystemReporter

Resources