Yes, this is possible. You will have to set up a workflow with an event (I do not remember the name of the event, but you will see it, I'm sure) + set up a trigger to initiate it before publish...
Thanks for your kind reply. I know publish on date is possible by the wait until date event triggered before the content publish. Thats working. Kindly let me know how to do unpublish part. I cannot find unpublish event for this part.
Due to the nature of eZ publish, it is not possible to unpublish a published object. However, it is possible to hide (and thus "unpublish") objects. There is currently no workflow event that does this, but you can easily create one yourself if you are familiar with PHP & basic eZ internal coding.