CRM 2013 On-line Mail Merge Quote for Customer print totals at the bottom - dynamics-crm-online

We are creating a new Mail Merge Template and we would like the following fields to be placed after the Product listing
Please find your quote details below:
Quote ID: «Quote_ID»
Quote Discount percentage: «Quote_Discount_»
Quote Discount Amount: «Quote_Discount_Amount»
Total Detail Amount: «Total_Detail_Amount»
Total Tax: «Total_Tax»
Total Amount: «Total_Amount»
.
If so how can we do this any help would be great.
Damon

CRM's mail merge is very limited and if you want to do something more advanced, you will need to resort to a 3rd party tool to do it. You can browse the net there are several options you can choose from. We use this mail merge toolkit for .NET and it has proven to be a very flexible mail merge tool - you can even render summary fields, hyperlinks, lists, charts, images. But you will need to wrap it as a CRM add-in.

Related

How Do I Limit A Script To Execute Once Per Customer? Script Editor and Shopify

What I want:
I have created a script in the Script Editor that makes your first
line item in a cart free. I want this script to execute once per customer.
My question:
What is the syntax to limit a script to execute once per customer
through the use of the Script Editor app?
Business use case:
Without adding this functionality to my script, a customer could
checkout with 1 item free... but then they could begin shopping again
and checkout with a new cart with the first line item free again... that
means they could get 10 free items from 10 different checkouts.
Thanks for your time and thoughts!
P.S. Script is in Ruby. Also, Setting up a discount code won't work for my use case.
UPDATE
Thank you for your responses. I will be attempting these suggested updates this week and will post my results soon.
UPDATE 2
So the below suggestions and marked answer were all spot on except for one detail. The script editor keeps on running into some type of error even though the described syntax below is correct. Another stackoverflow answer suggested to use '&'.
So I ended up doing something like this:
customer = Input.cart.customer
if customer&.tags&.include?("gift_received")
...
end
This works for me. Thanks again for all your answers!
Any kind of solution could only work if Accounts are required
otherwise you can't track the history of orders.
There are two possible solutions
You create a flow that assigns a tag to a customer when they receive a gift. You check for the tag : Input.cart.customer.tags.include?('gift_received') and don't apply the discount.
If your case is just 'Gift on the first order' you can just check Input.cart.customer.orders_count > 0 and that's it.
Um. You can always just assign a little tag to the customer. For example, if they received this free item, give them a tag on their first order. Now, if they try and fool you nine more times, check for that tag. If they have it, remove the item from checkout. Boom. problem solved.
I have created a script in the Script Editor that makes your first line item in a cart free. I want this script to execute once per customer.
The best way is to flag customers using tags. You can use Shopify flows to add tags to orders containing free gifts to mark customers as the customers who received already free gifts. This will be better than checking Input.cart.customer.orders_count > 0 because it will give you more visibility in the orders & customers panel.
The approach mentioned by #Fabio Filippi is the best however it needs to be secured:
You create a flow that assigns a tag to a customer when they receive a gift. You check for the tag : Input.cart.customer.tags.include?('gift_received') and don't apply the discount.
Business use case:
Without adding this functionality to my script, a customer could checkout with 1 item free... but then they could begin shopping again and checkout with a new cart with the first line item free again... that means they could get 10 free items from 10 different checkouts.
Nothing prevents the user from creating a new account so you need to consider some verification logic that will be assigning the gift_received tag after the customer is validated.
If you want to avoid fraud I would consider using both (note that in this case we are checking if customer already bought something in the past) Input.cart.customer.orders_count > 1 and Input.cart.customer.tags.include?('gift_received') OR Input.cart.customer.tags.include?('gift_received') and Input.cart.customer.total_spent > Money.new(cents: 1000). This way you can have "eligible for gift" kind of logic. There are many ways to approach it.

vCard credentials, accreditation and associations

I'm generating some vCards for employees in my company which will be served over the web. Most of the individuals are licensed professionals. I would like to include their accreditation, associations, license numbers, etc... in their vCards.
I've been using RFC6350 and its examples as a guide. There is a specific example in sec 6.2.2 that pretty much what I want. According to the RFC's special note, the 4th and 5th elements should contain honorific prefix and suffix. I'm not sure my desired usage fits this description, however in their example, it is used in this way.
Example from RFC: N:Stevenson;John;Philip,Paul;Dr.;Jr.,M.D.,A.C.P.
The problem I'm having:
When the vCard is imported into Outlook, Outlook seems to parse the N: field to populate its internal fields:
N:{last name};{first name};{middle names};{prefix};{suffix}
When I look at the contact properties the suffix is actually being stored as the "Generation" Property.
After saving the vCard, Outlook seems to calculate the "Display as" property by combining {first name} {middle name} {last name} {generation}, which potentially creates excessively long "display as" names. So, using the RFC's example, Outlook will generate an email addressed to "John Philip,Paul Stevenson Jr.,M.D.,A.C.P. (test#example.com)" <test#example.com>. In my case: "Example User, AIA, NCARB, SEI, LEED GREEN ASSOCIATE(test#example.com)" <test#example.com>
My question is: Is there a more appropriate vCard field to store credentials that I am missing, which will not pollute Outlook's display as field OR is there a way to supply a custom "Display as" property in the .vcf that Outlook will pick up on?
I'm testing in Outlook 2016

How to stop magento from removing tiers that are more than or equal to the default price?

In magento i have my tiers set like so...
Regular Price: £8.99
Special Price: £3.75
Tiers
Buy 5-9 for £3.22 each
Buy 10-19 for £3.22 each
Buy 20-49 for £3.22 each
Buy 50-99 for £2.80 each
Buy 100 for £2.58 each
100+ Call For Pricing
With a minimum quantity set at 5 and also the regular and special price reflecting a qty > of 5.
The problem with the above being magento hides my first two tiers.
After debugging it i have found magento hides any tiers that are more than or equal to the default price / special price.
So i suppose my question is how do i stop magento from removing the tiers that are more than or equal to the price.
Thanks
Use $_tierPrices = $_product->getData('tier_price');
All of your tiers appear to be lower than the special price. Is that a typo?
Either way I think you need to look in the /app/code/core/Mage/Catalog/Model/Product/Type/Price.php file. Specifically in the getTierPrice() function.
That is pretty much where all the magic happens (and where your prices are being removed). You may have to make changes in 2 spots in this function as part of it is used for the product page and the other for the checkout process.

How to bulk extract outlook properties from every contact in distribution list?

Does anyone know how to bulk extract outlook properties from everyone inside a distribution list?
I can expand the distribution list by clicking the small + sign, but that only gives me first and last names, what I want is their aliases (which only available on outlook property)
Thanks in advance
Sorry actually I just found 1 way of doing it:
Backup and remove everyone in your contact list
Open the outlook properties of the distribution list
Add all members of the distribution list into your contact
Export your contact list into excel, and the alias will be in one of the column
Feel free to post additional answer if you have better method. Thanks

Programmatically find common European street names

I am in the middle of designing a web form for German and French users. Within this form, the users would have to type street names several times.
I want to minimize the annoyance to the user, and offer autocomplete feature based on common French and German street names.
Any idea where I can a royalty-free list?
Would your users have to type the same street name multiple times? Because you could easily prevent this by coding something that prefilled the fields.
Another option could be to use your user database as a resource. Query it for all the available street names entered by your existing users and use that to generate suggestions.
Of course this would only work if you have a considerable number of users.
[EDIT] You could have a look at OpenStreetMap with their Planet.osm dumbs (or have a look here for a dump containing data for just Europe). That is basically the OSM database with all the map information they have, including street names. It's all in an XML format and streets seem to be stored as Ways. There are tools (i.e. Osmosis) to extract the data and put it into a database, or you could write something to plough through the data and filter out the street names for your database.
Start with http://en.wikipedia.org/wiki/Category:Streets_in_Germany and http://en.wikipedia.org/wiki/Category:Streets_in_France. You may want to verify the Wikipedia copyright isn't more protective than would be suitable for your needs.
Edit (merged from my own comment): Of course, to answer the "programmatically" part of your question: figure out how to spider and scrape those Wikipedia category pages. The polite thing to do would be to cache it, rather than hitting it every time you need to get the street list; refreshing once every month or so should be sufficient, since the information is unlikely to change significantly.
You could start by pulling names via Google API (just find e.g. lat/long outer bounds - of Paris and go to the center) - but since Google limits API use, it would probably take very long to do it.
I had once contacted City of Bratislava about the street names list and they sent it to me as XLS. Maybe you could try doing that for your preferred cities.
I like Tom van Enckevort's suggestion, but I would be a little more specific that just looking inside the Planet.osm links, because most of them require the usage of some tool to deal with the supported formats (pbf, osm xml etc)
In fact, take a look at the following link
http://download.gisgraphy.com/openstreetmap/
The files there are all in .txt format and if it's only the street names that you want to use, just extract the second field (name) and you are done.
As an fyi, I didn't have any use for the French files in my project, but mining the German files resulted (after normalization) in a little more than 380K unique entries (~6 MB in size)
#dusoft might be onto something - maybe someone at a government level can help? I don't think that a simple list of street names cannot be copyrighted, nor any royalties be charged. If that is the case, maybe you could even scrape some mapping data from something like a TomTom?
The "Deutsche Post" offers a list with all street names in Germany:
http://www.deutschepost.de/dpag?xmlFile=link1015590_3877
They don't mention the price, but I reckon it's not for free.

Resources