birt reports resources - eclipse

I have a folder containing lots of birt reports.
I have to open one report, modify it in an rcp application.
I want to copy from the original workspace all the resources related to the report i am working on.
All the resources , for all the reports and in a big folder ..how can i find out witch ones my report depends on, so i can copy them.
After i make the changes, i will deploy on jboss, the modified report, so that is why i need all the reports resources, so my reports show all in jboss.
Is it the way to do it ? Is there a simpler way ?
Thanks

Is it the way to do it ?
Depending on what kind of relation is between report design and resources, you could try to find them in rptdesign xml source.
For example I have a report with some images - their locations are referenced by <expression name="uri" type="constant">my_image.png</expression> tags, so i probably will find them manually using expression like <expression name="uri". I would try also simple .png, .jpg patterns to find them, if I knew what kind of files they are.
Next, libraries are listed in Outline view. They are also searchable in rptdesign xml.
Next, some resouces are defined as report properties: Property Editor -> Resources -> Properties files, Jar files, Javascript files. Also listed in rptdesign xml.
Is there a simpler way ?
I'm afraid, it isn't. If it is repetitive work, some script or xsl transformation on xml would do the job.
And be carefull with libraries - they can have their own dependencies.

Related

Importing source files and folders into IAR Workbench

I have a cup of source files in a certain folder structure in my file system. I want to use this structure for a project in the IAR Workbench. Thinking of Eclipse, that could be so easy! But in the IAR Workbench, the folders will become to "Groups", which are only kind of virtual folders. The Workbench doesn't care about folders.
Is there some easy and fast way to import them?
Up to now I have to add the groups manually each and then add the files to the groups, and that's really annoying!
Is there maybe a tool to generate a proper project file (*.ewp) out of a file/folder structure path?
This would help me a lot!
You should have a look at IAR Project/Add Project Connection command.
Although IAR doesn't seem to have any public documentation on the xml syntax, or at least I couldn't find any, you can find Infineon DAVE (Config.xml) and Freescale PE (ProjectInfo.xml) files if you search around. These can be used as examples to figure out the syntax on how to write your own xml files in one of these interfaces, to allow you to specify where all your c, h, assembly and library files are from where ever they may be in your file system. They also allow you to define preprocessor includes for compiler/assembler, and DAVE allows you to define a path variable, which is also very useful.
See: https://mcuoneclipse.com/2013/11/01/iar-arm-v6-7-comes-with-improved-processor-expert-support/
I have modified a DAVE Config.xml file and found it EXTREMELY useful for managing and migrating even just a handful of project files. For example to upgrade to a new release with all files having a new directory root, you just change a single line in the xml file (defining the new root), and all source files, compiler includes etc are all updated to the new level. No more manually editing the preprocessor includes or replacing all the files in the project. And no more fiddling around with ../../ file system hierarchy navigation stuff, you just specify directly (or indirectly via a path to) where the files are, no more relative from where your project happens to be. VERY NICE.
IAR should consider opening this up (documenting) for general users, as it is very useful for project management and migration. While at it they should also consider generalizing the xml syntax a little bit and allow for definition of IAR group heading names, specifying linker file name, and definitely allowing multiple xml files to be included (connected) (so that subprojects can be easily added or removed without effecting the other subproject definition files) and a few basic things like that.
If they where to do a bang up job on this, they might consider allowing most/all aspects of IAR project configuration that might be required by the subproject, to be defined in these xml files, and then entire (sub)projects could just be plopped down anywhere and be up an running extremely quickly (OK, just let me dream a bit :)
For anyone who happens upon this you may want to check out https://github.com/IARSystems/project-migration-tools. They have a tool for pulling in file trees here.

Is TFS Source Control really feasible for Dynamics CRM?

I'd really like to get a CRM solution under source control but there are a lot of issues. I was excited to see the SolutionPackager tool - thinking MS finally gave us a way to do this. However the tools to export the solution, extract it to files and check it into source control are not integrated. I'm working on a C# project that ties everything together because it's easier to work with the APIs in a single C# solution than deal with a combination of command line utilities such as tf.exe, PowerShell commandlets and plain old .cmd files.
Source files for plugins and Silverlight pages are easy to deal with but I'm looking to get all of the customizations under source control. SolutionPackager works well for tracking customizations made in the CRM interface, but fails in a lot of other areas. I want to create VS solutions for my web resources and reports but I have issues with the VS project and solution structures. SolutionPackager expects to find things where it puts them for repackaging and I'm sure it would not like to see a bunch of .sln, .csproj and .vspscc files interspersed with them.
I figured putting the VS solutions in a separate folder would be the answer but it's not easy. If I create a project for my web resources and try to put my existing .html, .css and .js files into it it wants to copy those into the project folder. I have to remember to use "Add As Link" each time. Worse yet, if I try to do the same with SSRS reports, the "Add As Link" feature isn't even available.
Has anyone done this successfully? I'm open to any suggestions.
I have seen below link but i have not get chance to implement it.when i have try it will post information.
http://blogs.msdn.com/b/crm/archive/2013/05/17/release-alm-for-microsoft-dynamics-crm-2011-crm-solution-lifecycle-management.aspx

How to download all salesforce.com report metadata for extremely large orgs?

I need to download all reports for an org with a huge number of reports. If I try to download them all with Eclipse I hit the max retrieve limit.
I can get everything I need by manually selecting a small subset of reports using the 'Add Package Components' eclipse wizard, and repeatedly retrieving them all. However, given it takes a long time for each retrieve this is an extraordinarily laborious process. Does anyone have any better ways to handle this? Perhaps something ANT based?
Yeah, the ant deployment tool is the way to go. It has good documentation and can handle extremely large orgs.
One trick that I use in big orgs: for metadata components that don't support "*" in the package.xml file (e.g. reports), you can use the "project contents" wizard in Eclipse to build your package.xml for you using the checkboxes (just make sure you don't say "Yes" to downloading the whole shebang), and then copy that Eclipse-created package.xml to your SF ant tool directory.

Should I put my output files in source control?

I've been asked to put every single file in my project under source control, including the database file (not the schema, the complete file).
This seems wrong to me, but I can't explain it. Every resource I find about source control tells me not to put generated output files in a source control system. And I understand, it's not "source" files.
However, I've been presented with the following reasoning:
Who cares? We have plenty of bandwidth.
I don't mind having to resolve a conflict each time I get the latest revision, it's just one click
It's so much more convenient than having to think about good ignore files
Also, if I have to add an external DLL file in the bin folder now, I can't forget to put it in source control, as the bin folder is not being ignored now.
The simple solution for the last bullet-point is to add the file in a libraries folder and reference it from the project.
Please explain if and why putting generated output files under source control is wrong.
You haven't explained what "the database file" is.
I would certainly include 3rd party libraries in source control, as they're necessarily for the build and it's good to have a way of reproducing a build at a later time with the library versions you used at that particular moment. But yes, those libraries should be included from a "libraries" folder rather than the output directory.
I wouldn't generally include my own libraries built from the sources elsewhere in the same repository - although I have been in situations where that's been worth doing, where some projects didn't use the "latest and greatest" version of a common library, but just occasionally updated.
The most important practical argument I'd give against including everything, in a world where disk, processor and network are considered free and instantaneous, is that it makes it harder to tell what really changed for any given commit. It's easier to look down a list of 3 source files than 3 source files and 150 binaries from the obj/bin directories.
Generated output files (in general) are "dangerous" in a VCS because:
what you need to version is how to regenerate them: the day you will need to actually update them, chances are you won't remember how to do it
they can contain some private generated file which make them work on the committer desktop, but not on a client one ("works on my machine" TM syndrome)
some generated file are not easily stored in delta (binary especially), making them consuming lots of space (and the topic of cleaning that space will come-up someday...)
External libraries are not generated directly by your project, and can be put in a VCS, although external repositories like a public Maven repo are better at this kind of management.
Do we also put compiled object files such as class files, executables, DLLs build from our source? What about when we're doing serious volume testing and that database becomes many gigabytes or terabytes in size?
The clue is in the name: it's Source Code Management System.
I can understand the simplicity of put eveything in, it's more likely that developer doesn't forget some important file. But if you're doing regular automated builds then surely that gets picked up anyway?
I think the key phrase is here:
It's so much more convenient than
having to think about good ignore
files
Are you explicitly forbiden from having good ignore files? My guess is that already you are excluding .exe and .class (or whatever) files. Suppose you did take the trouble to exclude your database would that be a problem? Why? It's a concious action that you are chosing to take for the commone good. In Eclipse it's a couple of seconds work to add a new file type to the workspace's CVS ignore rules for all projects.
A rule of "No Ignore Files" is almost self-evidently absurd. Once you have the freedom the have some ignore files then why not just use them intelligently to exclude the DB? Who is inconveninced? Only yourself, if anyone, and you're prepared to do the extra work.

Sandcastle Distinguishes Between Debug and Release Builds?

I fired up Sandcastle Help File Builder today to generate documentation for my solution, which has around a dozen projects in it. Since I only want to generate documentation for, and run Sandcastle after, a Release build (which excludes all my test projects), I selected "Release" at the top of the window, just like in VS. Sandcastle appropriately looks for the gen'd XML files in my \bin\release subfolders for each project. However, it errors out when it cannot find DLL's for my test projects. It apparently sees those projects in the solution file, but doesn't realize I don't have builds for them in Release. I tried de-selecting them in the "API Filter" property, but this doesn't change anything.
How can I get Sandcastle to ignore those projects?
SHFB is nice, I've been using it recently. It turns out that there are a number of ways you can specify documentation sources. One way is by selecting the solution, as you seem to have done. You can also choose the project files for just the projects you are interested in documenting. You can even choose the resulting assemblies as sources.
Try changing the docu source from the solution to just the projects you are interested in. It doesn't quite answer your question, but it is a workaround, since you fairly likely have no need to document your test projects.