New parameter on addRemoteStore() datastore's Type - datastore

In Wakanda Enterprise 2.2.1, when I try to connect to a remote 4D datastore, I get this error:
The datastore's type "wakanda" is not available
The object passed to addRemoteStore() to get the remote datastore is:
{
hostname: "myserver:8050",
jsFile: "targetDS.js",
password: "mypassword",
ssl: false,
timeout: 15,
type: "4D",
user: "myuser"
}

Solution found:
This turns out to be related to licensing. In addition to 4D Mobile connector, addRemoteStore() also requires Wakanda connector to access 4D datastore.
The method is working as in V1 with the added Wakanda connector license. Please feel free to reach out to Wakanda support or your 4D sales rep for the updated license.
Updated post:
I tested in V 2.2.1 and received the same error. The same code in v1.1.5 works without any error.
Wakanda documentation including v1 to v2 migration notes do not report changes in addRemoteStore().
I reported this on GitHub issues as a bug. The engineering team will look into this. You can track the status using the following link: https://github.com/Wakanda/wakanda-issues/issues/221
-----------------------Original Post----------------------------
Is this solution upgraded or new?
In 2.2.1 local model and remote model have their own set of model files including a config.waConfig, which defines the configurations of 4D Mobile connection. The main model has to be local and remote model needs to be a new model:
Please check if you have that file in your Remote model for 4D Mobile and whether its values conflict with values passed to addRemoteStore().

Related

SNMP table with V3 pysnmp - reg

I am trying to create the SNMP table with SNMP v3. I followed this documentation and was able to create SNMP table using v2c and get response. When I tried modifying the user registration part to support V3 there was no response to the manager.
Link followed: https://pysnmp.readthedocs.io/en/latest/examples/v3arch/asyncore/agent/cmdrsp/agent-side-mib-implementations.html
Topic:
Implementing conceptual table
I modified this part
to
But the code worked in v2c and not in V3

How can I set up Sitecore Commerce Demo Site (Sitecore.Demo.Retail) to exclude configuration errors?

When I set up the sitecore demo retail site (source - https://github.com/Sitecore/Sitecore.Demo.Retail), I encountered with several problems related to Sitecore Commerce configurations and Sitecore Engine Configurations. I will divide this issues:
I got the following error while running the install-commerce-server.ps1 script on step 5 (Commerce Server Configuration)
I got error 'HTTP Error 502.5 - Process Failure' by URL - http://habitat.commerceengine.dev.local:5000/api/$metadata
On 'reatil.dev.local' site I got error 'Could not find property 'shopName' on object of type: Sitecore.Commerce.Engine.Connect.CommerceEngineConfiguration', when I tried to go on any page with products
I encountered with some errors of Sitecore Commerce Applications (Merchandising Manager, Pricing & Promotions) in Sitecore Experience Platform
However, I have resolved this issues and I hope that this info will be useful for set up of Sitecore Demo Retail site (https://github.com/Sitecore/Sitecore.Demo.Retail).
I have repeated instuctions for install of Sitecore.Demo.Retail and fixed related issues:
This issue had discussed in https://github.com/Sitecore/Sitecore.Demo.Retail/issues/81. You need to check file 'Server2012_FeaturesRequired.txt' like it stated in issued-81. Then you must check file csconfig.xml (path for me - 'c:\Projects\Sitecore.Demo.Retail\install'). I had bad SQL connection to MSSQL Server, which was default. Here example of working variant:
By another way you can run Commerce Server Configurator manually by 'CSConfig.exe /f' (path for me - 'c:\Program Files (x86)\Commerce Server 11\'). Then you can load xml-configuration and set and test SQL connection:
This issue appeared on my environment, because i had wrong SQL connections (by default) in Commerce Engine project in Sitecore.Demo.Retail solution. You must to change all connections in the following files Global.json, Habitat.CommerceAuthoring-1.0.0.json, Habitat.CommerceShops-1.0.0.json.
!!!Don't afraid to check appropriate configs in deployed solution
This error is appeared due the wrong tags (storefront) in 'commerceEngineConfiguration' tag. You need to remove this tags in Sitecore.Demo.Retail.config file. Working variant for example in showConfig.aspx:
You should to check connection strings in file Z.Sitecore.Commerce.UX.Shared.config (path for me - c:\websites\habitat.dev.local\Website\App_Config\Include). By default I had 'localhost:5000/...'

PowerBI Embedded: Datasource has no credentials, unable to Patch the gateway

I wanted to test out PowerBI embedded so I downloaded the the sample app that is able to publish a pbix file and to embed it.
So I created the easiest PowerBI file one is able to make with Azure SQL, using the DirectQuery option, as underlying data source.
I succesfully imported the PowerBI file in my workspace collection
I changed the connection string of my PowerBI file succesfully
After that the code to patch the gateway with the username and password credentials fails
Then when I tried to view the embedded report I got this error.
I believe the connectionstring is in the correct format because it was updated succesfully. I also already tried to point it to another SQL database and then the error shows the other SQL database in the error message.
1) I thought this could be because the Gateway does not get the credentials that I gave it is that correct?
2) Does someone know how can I fix this?
Thanks in advance!
As #Cuong Le stated, this was a Microsoft Issue at first.
When the problem was fixed I still received a BadRequest exception. After trying to update the credentials with the PowerBI-CLI the problem became clearer. I needed to grant rights for Azure IP addresses to the relevant SQL database. Once I did that I was able to update the credentials. Unfortunately PowerBI API SDK's exception messages are not as good as the PowerBI-CLI messages. I also tried it with PowerBI API SDK and it also worked.
The exception message I got was the following:
[ powerbi ] {"error":{"code":"DM_GWPipeline_Gateway_DataSourceAccessError","pbi.error":{"code":"DM_GWPipeline_Gateway_DataSourceAccessError","parameters":{},"details":[{"code":"DM_ErrorDetailNameCode_UnderlyingErrorCode","detail":{"type":1,"value":"-2146232060"}},{"code":"DM_ErrorDetailNameCode_UnderlyingErrorMessage","detail":{"type":1,"value":"Cannot open server 'engiep-dev-weeu-sql' requested by the login. Client with IP address 'xx.xx.xx.213' is not allowed to access the server. To enable access, use the Windows Azure Management Portal or run sp_set_firewall_rule on the master database to create a firewall rule for this IP address or address range. It may take up to five minutes for this change to take effect."}},{"code":"DM_ErrorDetailNameCode_UnderlyingHResult","detail":{"type":1,"value":"-2146232060"}},{"code":"DM_ErrorDetailNameCode_UnderlyingNativeErrorCode","detail":{"type":1,"value":"40615"}}]}}}
The correct connectionstring format to use is:
Data Source=yourDataSource;Initial Catalog=yourDataBase;User ID=yourUser;Password=yourPass;
(Don't use quotes anywhere.)
I was experiencing the same issue. Also it is an open issue on github.
Attached Image :
enter image description here
To solve this, I used the PowerBI Cli 1.0.4 from NPM. And used Update Connection Operation,(remember to add -d).
powerbi update-connection -c [workspace name] -k [access key] -w [workspace id] -d [dataset id] -s "Data Source=xxx.database.windows.net;Initial Catalog=xxx;User ID=xxx;Password=xxx"
If it fails do it(Update-Connection Operation) again.
The issue happens since sometimes datasource credentials are not carried over to the workspace.
In the case of reports that use direct query, credentials are never brought with the pbix as an import is done. All private info are stripped out.
Hope this helps!
Thanks

How to change client schema during provisioning?

I'm rushing (never a good thing) to get Sync Framework up and running for a "offline support" deadline on my project. We have a SQL Express 2008 instance on our server and then will deploy SQLCE to the clients. Clients will only sync with server, no peer-to-peer.
So far I have the following working:
Server schema setup
Scope created and tested
Server provisioned
Client provisioned w/ table creation
I've been very impressed with the relative simplicity of all of this. Then I realized the following:
Schema created through client provisioning to SQLCE does not setup default values for uniqueidentifier types.
FK constraints are not created on client
Here is the code that is being used to create the client schema (pulled from an example I found somewhere online)
static void Provision()
{
SqlConnection serverConn = new SqlConnection(
"Data Source=xxxxx, xxxx; Database=xxxxxx; " +
"Integrated Security=False; Password=xxxxxx; User ID=xxxxx;");
// create a connection to the SyncCompactDB database
SqlCeConnection clientConn = new SqlCeConnection(
#"Data Source='C:\SyncSQLServerAndSQLCompact\xxxxx.sdf'");
// get the description of the scope from the SyncDB server database
DbSyncScopeDescription scopeDesc = SqlSyncDescriptionBuilder.GetDescriptionForScope(
ScopeNames.Main, serverConn);
// create CE provisioning object based on the scope
SqlCeSyncScopeProvisioning clientProvision = new SqlCeSyncScopeProvisioning(clientConn, scopeDesc);
clientProvision.SetCreateTableDefault(DbSyncCreationOption.CreateOrUseExisting);
// starts the provisioning process
clientProvision.Apply();
}
When Sync Framework creates the schema on the client I need to make the additional changes listed earlier (default values, constraints, etc.).
This is where I'm getting confused (and frustrated):
I came across a code example that shows a SqlCeClientSyncProvider that has a CreatingSchema event. This code example actually shows setting the RowGuid property on a column which is EXACTLY what I need to do. However, what is a SqlCeClientSyncProvider?! This whole time (4 days now) I've been working with SqlCeSyncProvider in my sync code. So there is a SqlCeSyncProvider and a SqlCeClientSyncProvider?
The documentation on MSDN is not very good in explaining what either of these.
I've further confused whether I should make schema changes at provision time or at sync time?
How would you all suggest that I make schema changes to the client CE schema during provisioning?
SqlCeSyncProvider and SqlCeClientSyncProvider are different.
The latter is what is commonly referred to as the offline provider and this is the provider used by the Local Database Cache project item in Visual Studio. This provider works with the DbServerSyncProvider and SyncAgent and is used in hub-spoke topologies.
The one you're using is referred to as a collaboration provider or peer-to-peer provider (which also works in a hub-spoke scenario). SqlCeSyncProvider works with SqlSyncProvider and SyncOrchestrator and has no corresponding Visual Studio tooling support.
both providers requires provisioning the participating databases.
The two types of providers provisions the sync objects required to track and apply changes differently. The SchemaCreated event applies to the offline provider only. This get's fired the first time a sync is initiated and when the framework detects that the client database has not been provisioned (create user tables and the corresponding sync framework objects).
the scope provisioning used by the other provider dont apply constraints other than the PK. so you will have to do a post-provisioning step to apply the defaults and constraints yourself outside of the framework.
While researching solutions without using SyncAgent I found that the following would also work (in addition to my commented solution above):
Provision the client and let the framework create the client [user] schema. Now you have your tables.
Deprovision - this removes the restrictions on editing the tables/columns
Make your changes (in my case setting up Is RowGuid on PK columns and adding FK constraints) - this actually required me to drop and add a column as you can't change the "Is RowGuid" property an existing columns
Provision again using DbSyncCreationOption.CreateOrUseExisting

Connect Adobe Flex To Arcgis Service?

I'm trying to connect my flex app to my Arcgis webservices. I tried using the connect to webservice interface. But I keep getting this error.
There was an error during service
introspection. WSDLException:
faultCode=PARSER_ERROR: Problem
parsing
'http://localhost/ArcGIS/rest/services/geodata/MapServer'.:
org.xml.sax.SAXParseException: The
element type "link" must be terminated
by the matching end-tag "/link".
My web service looks like this
ArcGIS Services Directory Home >
geodata (MapServer) Help | API
Reference geodata (MapServer) View In:
ArcMap ArcGIS Explorer ArcGIS
JavaScript Google Earth ArcGIS.com
Map
View Footprint In: Google Earth
Service Description:
Map Name: Layers
Legend
All Layers and Tables
Layers:
Geocoding_Result layer (0)
Tables:
Description:
Copyright Text:
Spatial Reference: 4326
Single Fused Map Cache: false
Intial Extent:
XMin: -95.901360470612
YMin: 29.4513469530748
XMax: -95.1472749640384
YMax: 30.045474927951
Spatial Reference: 4326
Full Extent:
XMin: -100.3273442
YMin: 29.451583
XMax: -94.8230278
YMax: 31.250677
Spatial Reference: 4326
Units: esriDecimalDegrees
Supported Image Format Types:
PNG24,PNG,JPG,DIB,TIFF,EMF,PS,PDF,GIF,SVG,SVGZ,AI,BMP
Document Info:
Title:
Author:
Comments:
Subject:
Category:
Keywords:
Credits:
Supported Interfaces: REST SOAP
Supported Operations: Export Map
Identify Find
Maybe you already know... but if you are trying to connect to an ArcGIS Server using Flex you might be interested in the ArcGIS API for Flex - http://links.esri.com/flex - it will take care of most of that for you.
Antarr,
It's a little hard to tell from your question what exactly you are trying to do. But here are a couple possibilities:
1) It looks like you might be trying to add a reference to this service via Flash Builder's "Connect to Web Service" dialog, which you would use for a SOAP web service, but not for the REST endpoint you note above (http://localhost/ArcGIS/rest/services/geodata/MapServer). If you are intending to use the REST endpoints, then you need to use the appropriate ESRI ArcGIS API for Flex class (for example DynamicMapServiceLayer or Locator) for whatever you are trying to do (generate a map image, geocode addresses, etc). Look at the ESRI help on the Flex API for more information:
http://help.arcgis.com/en/webapi/flex/apiref/index.html
2) If you are intending to use the ESRI SOAP API then you do want to use Flash Builder's "Connect to Web Service" dialog, but then you must use the SOAP service endpoint, which would be something like: http://localhost/ArcGIS/services/geodata//MapServer?wsdl (though I don't know why you'd want to do this since the Flex API is really designed to be used with ESRI's REST service endpoints).
3) The only layer in your service is called "Geocoding_Result" - is that an actual feature layer or just a temporary output from a geocoding operation done with ArcMap? I am not sure whether a temporary result would work when published as a service.
See if any of these suggestions help. If not, then clarify what you are trying to do and perhaps I can give you more specific assistance.