Are you the publisher? Claim or contact us about this channel

Embed this content in your HTML


Report adult content:

click to rate:

Account: (login)

More Channels


Channel Catalog

Channel Description:

A one stop shop where the Microsoft Dynamics ecosystem can learn, share, connect and network with others within the Community. Peer to Peer discussions , product demonstrations, blogs & videos.

older | 1 | .... | 1170 | 1171 | (Page 1172) | 1173 | 1174 | newer

    0 0

    From top exhibitors like Microsoft to niche players, the PR influx in advance of this year's Big Show offers a hint at where exhibitors are working to gain traction. more

    0 0

    In the past I’ve written about the History of Microsoft CRM from it’s first 10 years. I’ve also explored how the platform evolution up until Dynamics CRM 2013 had changed the product and how we worked with it. This time I want to focus on specifically the Microsoft Cloud era.

    I started to think about the different focus areas that we’ve seen on the journey that’s taken us from the early CRM Online days into what the current roadmap for Dynamics 365 and the greater Power Platform look like. In my mind these “snap” into four logical stages that describe what the main ambition at any given time seems to have been for Microsoft’s product team:

    Why bother looking back? Well, I could insert a “those who cannot learn from history” quote here, but really it’s more about putting the present into perspective. There are still plenty of customers who’ve either stayed with Dynamics CRM on-premises (now 365 CE by name, too) or who are still viewing the online service as just a “CRM in the cloud”. Hopefully this post will help in understanding the magnitude of change that has taken place in the greater Microsoft cloud during the past few years and why it would be better for them to embrace it rather than just observe it.

    1. Parity

    The very first versions of Dynamics CRM Online in 2008 wasn’t exactly the same product that you could get by installing it on your own application servers. The limitations on features and customizability meant this was a “CRM lite” that saved you the effort of infrastructure investments and server management, but there were a lot of trade-offs. You gotta start somewhere, but obviously this wasn’t exactly up to the vision that Microsoft saw as what the cloud services should offer to their customers.

    Upon the global launch of Online we received the updated CRM 2011 version and most importantly the solution framework that after several iterations now powers the ALM story behind Power Platform. Closing down the gaps between Online and on-prem was the primary goal for product development, with the “Power of Choice” being a key selling point against server-only or cloud-only competition.

    While the customization capabilities in CRM Online were surprisingly powerful already in 2011, the gaps in actually managing the environments you had no direct access to took a longer time to close. For the enterprise customers to consider moving from fully controlled servers and databases to the MS hosted cloud, a lot of investment was needed in building self-service features for instance management – not to mention ensuring the cloud apps were reliably available and updated in a controlled manner.

    Today the flexibility of spinning up new instances, copying them for test & dev, taking backups, syncing data to Azure SQL for reporting, and many other self-service features available for admins make the cloud environment quite attractive. In exchange of giving up full control over your servers and databases, you have the luxury of not having to think about them at all. There are no servers to patch up and keep running. As for the updates, it’s now a continuous delivery of new & improved features that puts an end to the concept of an upgrade project altogether. Sure, you’ll still need to do your part to ensure customer specific customizations and integrations keep working – that’s just another service that needs a continuous delivery mindset.

    2. Integration

    Once the cloud version was sufficiently close to the on-premises Dynamics CRM server, the next stage was all about making it better than on-prem. This was the era in which Office 365 was really taking over the business productivity market, so you could say the low-hanging fruit was in tapping into these existing services in the MS Cloud and making Dynamics CRM a more attractive application through those.

    Sure, we had heard the “better together” story for Dynamics + Office already in the on-prem days, but this wasn’t exactly the way we today expect cloud apps to just work with one another. Complex server configuration tasks were surely a nice source of revenue for the IT consulting companies, since very few customers were able to know all the ins & outs of how to properly deploy an Internet Facing Deployment of your Dynamics CRM server and make it talk with other MS server products. From Microsoft’s perspective, having useful product features available for everyone in theory doesn’t scale into real world customer success if there simply isn’t enough skill out there to deploy everything the way MS engineers do it in their labs. Well, when it’s all run by MS from beginning to end, this made it a solvable problem.

    Making common online services like Exchange and SharePoint available for Dynamics CRM admins to click & configure on their own was one key part of this journey. What this Cloud + Cloud combo also meant was that new features from the latest versions of each service could be rolled out at a much faster pace than the server bits could ever follow. Oh, and since all the services were by default available via the public Internet, mobile clients became an everyday tool for accessing your CRM information.

    As the core CRM product features in the cloud became mature enough, there was a door opened for refactoring the original software designs from the server days into something more cloud native. Leveraging the next generation of Windows Server, a.k.a. Azure, meant that features like search indexing could be modernized by hooking into innovation from the neighboring product team. The boldest step was taken with V9 that finally moved the whole Dynamics 365 Customer Engagement online service on top of Azure.

    Building a new level of scalability into the cloud service also became a target in this stage. As an example, the Adxstudio Portals that MS acquired were transformed to run purely on Azure services. Yeah, this meant the on-prem Portal had to be discontinued, but on the bright side, every Dynamics 365 CE customer can now be given a free Portal instance, whereas with the old model there wouldn’t have ever been enough server capacity available to even allow free trials of the product. This deeper integration of all Dynamics 365 components and the new serverless tech from Azure made the platform ready for much bigger things to come.

    3. Expansion

    XRM was always about an extensible platform, but when sold as a CRM product rather than an application platform specifically, there were always plenty of conflicts in marketing, licensing, channel, customer expectations and so on. XRM was a reality for sure, but it didn’t “happen” in the true scale of business that it would have needed to within a huge company like Microsoft. During the MBS era, Dynamics remained firmly as a niche product in the vast Redmond portfolio and didn’t get enough attention from the market nor all the needed support from complementary product lines.

    Instead of chasing the elusive CRM vendor market share, the current Microsoft leadership appears to have a very different agenda in mind compared to their predecessors. The world is already full of CRM suites but at the same time it’s full of manual processes being stitched together by Excels and emails. The addressable market for the aPaaS (application platform as a service) and the rise of tools suitable for the hands of citizen developers have surely caught the eyes of those with P&L responsibility in Redmond over the past few years. With the immense investments made into cloud and a few rounds of organization restructuring to support it, the path for braking onto the main arena was finally opened for XRM.

    The formation of the Business Applications Group brought together not just all flavors of Dynamics but also PowerApps, Flow and Power BI. The merging of XRM with CDS last Spring turned the vision keynotes into concrete hard reality when the Dynamics 365 CE technology was introduced as the foundation for PowerApps and Flow development. Similarly, it was made clear that the future toolkit for customization and extension of Dynamics 365 CE would be PowerApps and Flow.

    The professional business application platform known from the Dynamics brand has now been harnessed to also cater for the next 10 million developers who are coming not from the Visual Studio land but rather from the crowd of power users that have been working with these traditional business apps. It’s about adopting the developer mindset but from a whole different perspective than what the term had traditionally meant. In a recent interview on Steve Mordue’s blog, Alysa Taylor (Microsoft CVP, Business Applications and Global Industry) said that what the team is now doing for Business Applications reminds her of the incubation spirit that was very much a part of the Microsoft developer division in her previous roles:

    “While Dynamics obviously is not an incubation business, it is one we are re-imagining, so it feels very much like a new business we’re bringing into the forefront of the Microsoft portfolio.”

    Now “legacy” products like Project Online are being re-architected to run on top of Power Platform and new apps from the ERP side like Dynamics 365 for Talent are also built from the same components as what we used to know as XRM. The customization story for both Office 365 and Dynamics 365 now relies on a common set of tools. Everything lives in the cloud and is built to connect with as many other clouds as possible – not just the ones with Microsoft’s logo on them.

    4. Intelligence

    So, if these three stages are the road already traveled, what is Microsoft focusing on right now? Before we get there, it’s important to realize that the aforementioned efforts for developing cloud management tools, productivity app integrations or Power Platform footprint expansion are not “done”. These tracks will all continue to take the product far beyond it’s on-prem origins, but perhaps they won’t be the biggest evolutionary force driving the development in the next few years.

    AI is the Big Bet that Microsoft is making – just like its competitors like Google are, too. In my analysis of Top 3 themes for Dynamics 365 in 2018, I lifted the AI journey as topic Nr. 3, but it wouldn’t be very surprising if the 2019 review will put it at the top spot. For it make it there, we of course need to see a lot more than just flashy marketing content & analyst generated hype on the impact of artificial intelligence for businesses of different shapes and sizes. The timeline of this transformation is still too blurry for me to place any significant personal bets, but one thing’s quite certain: it’s not a question of “if” but “when”. In the same vein as SaaS CRM was inevitable, so is SaaS AI – and that’s where the cards that MS is holding in its hand are nothing short of that “all in” moment.

    For the Microsoft cloud, the “all in” moment was in 2010, according to the marketing pitch at events like Convergence 2010. When observed right at this moment in time, SaaS AI looks like the ultimate deliverable of what the business software’s years long journey into the cloud has made possible. There’s just no way that a packaged product like “Microsoft AI Server 2019, Enterprise Edition” would have ever made sense to pursue as a commercial offering aimed at a silo implementation in a corporate server rack somewhere. Lifting the isolated Office & Dynamics services from those racks onto the common cloud infrastructure that surely is the world’s single largest business applications environment turned things completely around: now it makes sense to infuse AI in absolutely every application that runs on this cloud platform. Not only because of the seamless connectivity between the applications, but because of the ocean of data.

    “There is no AI without data” is a very accurate phrase from Steve Guggenheimer’s blog post on the AI journey that organizations need to embark on sooner rather than later. Steve talks about the challenges that have been faced with the earlier AI projects that companies tend to run as proof of concept implementations, separated from the operational business processes, with insufficient ROI generated from the initial work to justify scaling it further. To address this, we’re going to need a foundation that can serve as the common source of data for initially the BI efforts but later expanded into the AI realm. What’s also very crucial is the ability to demonstrate the benefits of AI to the wider organization as a part of their daily tasks, and this is where the SaaS AI delivered via products like Dynamics 365 comes into play. These apps won’t replace the need for customer specific software in delivering AI based insights and outcomes for processes and products unique to the company, but they’re likely to pave the way for organizational understanding of the value of more intelligent systems in every part of the business.

    Closing thoughts

    Looking at these four stages in the cloud journey, they are clearly interdependent on each other. None could not exist without the earlier stage of evolution. Each of them becomes a layer that appears to have a great impact on the potential business value that can be delivered from this software platform. The further we go, the smaller the relative footprint of any individual part like Dynamics CRM is in the greater puzzle, but the greater its role as an enabler for new products and features to come.

    (Thanks to Nick Roach for these great icons.)

    The post 4 Stages of MS Cloud Business Apps Evolution appeared first on Surviving CRM.

    0 0

    Not long ago, it was published on docs some updates on how we will be doing self-servicing of our non-production environments. There is one particular statement I want to address with this post:

    You will need to provide a combined deployable package for customizations. That is, all custom extension packages, including ISV packages, must be deployed as a single software deployable package. You will not be able to deploy one module at a time. This was always a recommended best practice and is now enforced.
    It has been recommended for a long while to always ensure any changes to the application, either updates or when adding new modules, these are services to the sandbox and then to production in one single package. And then I mean the same single package containing everything which is not already in standard. This would include:
    • ISV solutions and deliveries
    • Customer specific customizations (ie from your partner)
    • Hotfixes (relevant only for version 8.0 and older supporting individual hotfixes)
    It may seem counter-intuitive and unnecessary to do it like this. You may argue we should be able to push individual modules and updates to the sandbox and to production. Why enforce "single package"? What are the benefits of this?

    The core reason is that we are moving away from actually updating the application, but we are instead actually replacing the application. The application becomes an immutable piece of software, that does not change or is susceptible to change. 

    This means the "updated" version of the application instead is setup and runs on a new instance, replacing the previous version of the application. The new pattern will sustain and ensure the following expectations:

    Predictability - One single package having all the code and metadata, and all the module dependencies secured, ensures the same behavior every time it is used in a deployment.

    Repeatability - Repeating the same package deployment on the next environment should have little to no risk, for example when repeating the install done in sandbox when installing in production.

    Recovery & Rollback - The single package is a good known state which can let us rollback to, in case we need to recover due to deployment failure. 

    Scale-out - Reusing the same single package lets us easily and safely repeat deployment on new instances, and allowing for a safe and easy way to scale out.

    Portability - The same package can be safely used if you for whatever reason needs to relocate your installation somewhere else around the world.

    Think about all the benefits of this. It is music in my ears. 

    In theory, today, you could service your sandbox and production with individual packages. You could yourself handle the order you install the packages, to ensure not breaking dependencies. You could use a test environment to try test updated versions of packages, in order to see if they broke something in conjunction with any of the other existing packages. It is possible - but it is not recommended. 

    Reading the announcement of the new immutable pattern for self-servicing environments is great news. It may change the way you've published updates in the past, if you used to push individual "delta" packages. If you've published single packages from your build environment, you're following best practices, and the enforcement will not change how you've done things. 

    What do you think about this? Share your comments and thoughts either in the comments or on Twitter.

    0 0

    Business scenario: The organization is a hotel that manages service operations as part of their business like: Repair and maintenance of power supply systems Repair and maintenance telephone sets...(read more)

    0 0

    In this blogpost, we examine the process of hiring a new employee to salary generation in Microsoft Dynamics AX for Finance and Operation. Some of the key points this blogpost is: Defining and understanding...(read more)

    0 0

    It’s 4 pm. To my surprise a skype call from one of the customers I usually talk maybe once a month. She cut the niceties quite abruptly: “Look, I have a list of 100 customers and I need it...(read more)

    0 0

    For a few months we have known that Docker for Windows would get support for process isolation under Windows 10. Arend-Jan Kauffmann explained how to use nightly builds from Docker to get the feature early...(read more)

    0 0

    Local By FlywheelThis post is part of the series on Local by Flywheel.

    Local by Flywheel works by installing VirtualBox; if you are running any other visrtualsiation software, you need to make sure that it, and the related hypervisor, is disabled.

    In my case, I am using Hyper-V so will need to use bcdedit to stop the hypervisor via an elevated command prompt.

    The command to use is:

    Adminstrator: Command Prompt showing hypervisor successful disabled
    bcdedit /set hypervisorlaunchtype off

    Once the command has successfully completed, the machine will need to be rebooted; if a reboot is done performed, then the hypervisor will not be fully disabled and will cause problems.

    Once you’ve finished installing and shutdown Local by Flywheel, you can restart the Hyper-V hypervisor using the following command (again a reboot will be required):

    bcdedit /set hypervisorlaunchtype auto

    Click to show/hide the Local by Flywheel Series Index

    Local by Flywheel
    Who Are Flywheel?
    What is Local by Flywheel?
    Disable Other Hypervisors Before Installing Local by Flywheel

    Read original post Local by Flywheel: Disable Other Hypervisors Before Installing Local by Flywheel at azurecurve|Ramblings of a Dynamics GP Consultant

    0 0

    Out-of-the-box, you have fixed set of entities enabled for Party List fields in Appointment entity. Of which, you can select to be either in Required or Optional fields on Appointments. But, what if...(read more)

    0 0

    I am starting to get questions from fellow Microsoft Dynamics 365 end-users who are unsure whether a solution suggested by their vendor is optimal. Therefore, I am writing this article to help end-users...(read more)

    0 0

    Настоятельно рекомендуются к посещению следующие конференции по продуктам Microsoft Dynamics в 2019 году: Dates Conference name Link Location Type 24.03-27.03 Extreme365 http...(read more)

    0 0

    The current post is not about something new in 365 but a full tutorial that aims to explain the subcontracting process from start to end. It’s very common to have some part of production orders that are...(read more)

    0 0

    In the previous post, we saw how to create XML connection and using it as a source to create records in Dynamics 365 CE. In this...(read more)

    0 0

    CRM for Oil and Gas eBook

    Lubricant Marketers, are you struggling to cross-sell and upsell with your current sales techniques, or do you even have an effective process for cross-selling and upselling now?

    If you read our blog post, “How Lubricant Marketers Use CRM to Capture Share of Wallet Business”, you know that in order to effectively cross-sell and upsell, you must be aware of what products your clients need, and what they’re currently buying from your competitors, but should be buying from you.

    Sales reps with more experience in your Oil and Gas business, or the industry itself, will know if customers are buying ‘x’ from you, then they should be buying ‘y’, but less experienced reps are likely to not be as intuitive. CRM can help with that!

    CRM for Oil and Gas at Ledgeview PartnersConsider: Does everyone have access to the knowledge they need to succeed?

    If you pause to answer and think about it, the answer is likely no.

    When reps or customers transition or there are other internal changes that affect business processes, sometimes information gets lost or misinterpreted, but CRM helps eliminate confusion and keep your selling process efficient and customer information organized and fluid.

    By using Suggestive Selling in CRM, Lubricant Marketers are able to get notifications on what products or services they should be selling to customers, but, without CRM, these opportunities are easily missed or ignored.

    Lubricant Marketers can easily track beyond 9, to 12 months back with Suggestive Selling, though this is usually the sweet spot for visualization.

    Share of Wallet allows Lubricant Marketers to set up notificationsand alerts for when customers want to talk about products as well, so though you may have pitched them a product or service now and they say they won’t be ready for it until about a year down the road, you can set notifications to touch base.

    Identify where you are lacking in pipeline management with CRM, and improve your tracking methods with Share of Wallet.

    If you find it difficult to track customer touchpoints and opportunities and if you find it is preventing you from identifying your share of wallet, CRM will help solve these common Oil and Gas industry hurdles.

    Learn more about how Lubricant Marketers are using CRM to Drive Success in Ledgeview’s NEW eBook for the Oil and Gas industry!

    Download it here.

    Download Now


    0 0

    There are four components of a welcome guide: Introduction with a short title and the introduction message. This will be the start of the page to the new employee. Introduction Activities...(read more)

    0 0
  • 01/14/19--04:32: getText API behavior changed
  • Some days ago I was upgrading some JavaScript files to v9 and I noticed one of the scripts was not working correctly.
    The specific code was using the getText function in order to retrieve the label of an optionset field. The getText function used to return an empty string in Dynamics instances prior to CRM 2016, but in recent versions it returns null. If you need to handle the label in your code (like showing some alerts) the check should be like this one:

    function checkOptionsetLabel(context, fieldName) {
    var selectedLabel = context.getAttribute(fieldName).getText();
    if (selectedLabel != null) {
    // ...
    Also the official documentation has been updated to highlight the return value. Hope it helps!

    0 0

    Introduction: Angular , a  TypeScript based framework that helps to build applications that work across all the platforms. We thought of writing a blog to help the developers of Dynamics community to...(read more)

    0 0

    Quick blog on how to fix the error you get when you save a record which has some required fields on the header of the form and CRM shows the schema name instead of display name like below: it shows...(read more)

    0 0

    Last April Microsoft released the new marketing module for Microsoft Dynamics 365. The solution addresses some areas that the Microsoft team knew would be important to not only your marketing team but also your sales and service teams.

    For instance, the new solution, Dynamics 365 for Marketing, offers an integrated event management solution and better integration with LinkedIn (which Microsoft recently acquired). The designers also recognized the need to deliver better insights on marketing interactions to sales and marketing teams, while delivering seamless integration with sales and service applications.

    In recent months, we’ve seen a lot of interest in Microsoft Dynamics 365 for Marketing, and with good reason. Microsoft is well known for its familiar processes as well as for its robust functionality. Marketers appreciate its features for planning, executing, and analyzing marketing campaigns and the fact that its data comes from your existing Dynamics 365 solution allows them to get campaigns started quickly and moving ahead smoothly. You simply install the module into your Dynamics 365 solution, and you’re good to go.

    Because Dynamics 365 for Marketing allows your marketing team to share the same database available to your sales team, your teams can work together like never before. Dynamics 365 for Sales and Dynamics 365 for Marketing allows for truly collaborative innovation. It is no longer necessary to connect and sync separate databases.

    Dynamics 365 Customer Journey Tool

    An example of this cooperation can be seen with Dynamics 365 for Marketing’s ‘Customer Journey’ and ‘Campaign Orchestration’ tools. Conventionally, marketing activities have been carried on separately from sales activities. With the Customer Journey tool, you can merge sales and marketing data to give you a complete picture of your clients and where they stand in the sales pipeline. For example, perhaps you send marketing campaign emails to all your prospective clients, but you’d like to set up a system of email – phone call – email for a certain segment of prospects. With Dynamics 365 Customer Journey and the fact that marketing and sales are on the same platform, you can easily configure a custom path for individuals or groups of prospects. Perhaps the opening of a personalized email would trigger a phone call reminder for the sales team allowing them to follow up on the interest.

    Dynamics 365 Lead Scoring

    The Dynamics 365 marketing module also supports lead scoring to help you determine when a lead may be ready to become a prospect. A common point of frustration between marketing and sales teams has revolved around the validity of a lead score. If the sales team cannot determine how a lead has rated a certain score, they may not trust the quality of leads received from marketing. With Dynamics 365 for Marketing, both sales and marketing teams can have a complete view of actions taken and contacts made. The attributes that contribute to a good lead score are available for all to see.

    These are just a couple of highlights of Microsoft Dynamics 365 for Marketing. As the feature list continues to grow, you’ll likely find many more that will make your marketing and sales easier and more productive.

    If you’d like to know more about Microsoft Dynamics 365 for Marketing and what it can do for your company, contact our experts at Velosio.

    By Velosio,

    The post Dynamics 365 for Marketing: Better Collaboration for All Your Teams appeared first on CRM Software Blog | Dynamics 365.

    0 0

    Insight Works, the global leader in operational productivity improvement leveraging a depth of expertise via a proven set of NAV add-on modules, is kicking the new year off with a bang, evidenced by a bevy of exciting announcements and new Partner Program member acquisitions. Recently welcomed into the Partner Program fold was Interactive Interfaces, a Calgary, Canada-based software consultancy company specializing in customized software development, system integration and business intelligence solutions – all of which are poised to be thoroughly enhanced through the dynamic partnership with Insight Works.

    As authorized Insight Works resellers, Partner Program members gain access to domain expertise that yields not only knowledge, value and realization but the reinforcement of a dedication to provide global productivity solutions via established local dealers. What’s more, each potential partner is tirelessly researched to ensure its clients receive the same level of professionalism, expertise and care as Insight Works’ clients do.

    “Working with us in this new year is going to allow Interactive Interfaces to offer its new customers a more robust solution, while also providing supplementary value to existing ones,” states Brian Neufeld, Insight Works’ Director of Marketing. “Not only that, but Interactive Interfaces will be able to leverage the experience Insight Works has gained through countless implementations by accessing proven technologies that allow for more predictable consulting, development, integration time and much more.

    “To say this represents a win-win situation for both organizations almost borders on being superfluous.”

    In helping medium- and small-scale businesses achieve their process re-engineering goals, Interactive Interfaces performs business process re-engineering by automating companies’ processes via implementation of relevant software and IT solutions. Additionally, the organization maintains and improves current IT and software solutions for clients by analyzing up-to-date tactics with regard to technology, efficiency, cost and security, thus improving the IT/software landscape with services that are maintainable, extendable, cost-effective and secure.

    “If anything describes the Interactive Interfaces team, it’s the notion that we’re client-focused and critical thinkers,” says Interactive Interfaces’ Mayur Bharodia. “In 2019 and beyond, we are going to continue focusing on understanding clients’ problems so we can solve them, and we look forward to reaping the rewards that partnering with a company like Insight Works brings – namely, improving our solutions so that they bring maximum return-on-investment to our customers.”

    Through its Partner Program, Insight Works provides a full range of products and services dedicated to better business practices to deliver more value to partners’ customers. The company’s products are designed to enhance operational efficiency and deliver high returns with a short payback period, and include such notable solutions as Warehouse Insight, Shop Floor Insight, Advanced Inventory Count and Dynamic Ship.

    About Interactive Interfaces

    Situated in the thriving industrial hub of Calgary, Interactive Interfaces is a dynamic software consultancy company specializing in customized software development, system integration and business intelligence solutions such as reports, business warehousing and data mining. Additionally, the organization maintains and improves existing and current software and IT solutions, analyzing them from the perspectives of technology, efficiency, cost and security. To learn more visit

    About Insight Works

    Insight Works offers a comprehensive range of solutions to guide professionals through any ERP application needs, developing long-term relationships with clients through a “value-to-the-customer-first” philosophy at all points of any interaction or implementation. The company works closely with stakeholders to ensure they understand what industry pacesetters are doing, how they can adopt tailored best practices and how they can maximize their ROI and growth with the Microsoft technologies they employ.

    Insight Works also offers a range of add-on modules such as Time CollectionWarehouse Mobile SolutionsCounter SalesInventory CountShipping and Scheduling as well as webinars, live events and written articles to educate users and enhance their returns within the supply chain.

    Insight Works boasts offices in Canada and the Netherlands, comprising a complete global reseller network. For more information call (866) 440-7543 or visit

older | 1 | .... | 1170 | 1171 | (Page 1172) | 1173 | 1174 | newer