在WFFM有一個選項,這樣,當你認爲被拋棄的形式,即在自身記錄的形式輸入,並且必須通過訪問任何數據輟學報告。Sitecore的Web窗體的營銷和DMS - 沒有錄製活動,目標和輟學信息
我有,我已經打開了分析,並打開了輟學特徵的WFFM。不幸的是,我沒有看到任何數據被記錄在數據庫中,並且Dropout Report可見,但是是空的。
我從包含在WFFM文件夾中的JavaScript代碼中看到,一系列AJAX調用應該保存模糊事件上的字段 - 調用/ sitecore模塊/ web/Web Forms for Marketing/Tracking.aspx
我試着調試Javascript代碼,而是應該發佈信息到/ Sitecore的模塊/網頁/ Web窗體的營銷方法/ Tracking.aspx永遠不會被調用。你能想到這個代碼不起作用的任何原因嗎?另外,有沒有人知道這個信息應該記錄在哪張表上?它是WFFM DB中的fields表嗎?
最後,儘管我已經打開了分析這種特殊的WFFM形式和我有關聯的一個活動,並提交表單的目標,這些都不被記錄。我看到,在表單中輸入的數據被成功地存儲和數據報表顯示的是,但有關該運動,也不是沒有目標信息被記錄在數據庫中。
我甚至手動檢查直接在DMS DB運行:
select top 10
p.DateTime, p.UrlText, cp.CampaignName
,i.Url, vi.VisitId
from pages p
inner join ItemUrls i on p.ItemId = i.ItemId
inner join Visits vi on vi.VisitId = p.VisitId
inner join GeoIps g on vi.Ip = g.Ip
left join Campaigns cp on cp.CampaignId = vi.CampaignId
order by p.DateTime desc
這一個證明,哪裏的形式呈現的頁面是被擊中,但沒有運動相關聯的訪問。
然後我嘗試了以下內容:
select pe.datetime, ped.Name, pg.UrlText from PageEvents pe
inner join PageEventDefinitions ped on ped.PageEventDefinitionId = pe.PageEventDefinitionId
inner join Pages pg on pg.PageId = pe.PageId
order by pe.DateTime desc
但我沒有看到這個特殊的活動,也不適用於目標的任何條目(而我看到的條目相關的非WFFM Sitecore的項目等活動和目標)
任何意見將不勝感激!
感謝,
弗朗西斯
編輯
的sc.webform.js文件包含此方法:
_create: function() {
var self = this,
options = this.options;
if (options.tracking) {
this.element.find("input[type!='submit'], select, textarea")
.bind('focus', function (e) { self.onFocusField(e, this) })
.bind('blur change', function (e) { self.onBlurField(e, this) });
this.element.find("select")
.change(function() { $scw.webform.controls.updateAnalyticsListValue(this) });
this.element.find("input[type='checkbox'], input[type='radio']")
.click(function() { $scw.webform.controls.updateAnalyticsListValue(this) });
}
this.element.find(".scfDatePickerTextBox").each(function() { $scw.webform.controls.datePicker(this) });
},
據說這是爲了通過在形式調用sc.webform小部件初始化。它應該爲所有輸入字段,下拉菜單和文本區域綁定焦點和模糊更改事件。不幸的是,當我試圖在這個方法中放置一個斷點時,它永遠不會被調用。
第二個編輯
有趣。我想通了,整個事情應該從這個行Javascript代碼嵌入到網頁包含WFFM形式開始:
<script type="text/javascript">
$scwhead.ready(function() {
$scw('#form_A8BF483419174F97A2830E12CBCF7E4F').webform({formId: "{A8BF4834-1917-4F97-A283-0E12CBCF7E4F}",pageId: "{21C24144-B964-4FBA-8388-D9B90EBBC17C}",eventCountId: "pagecolumns_0_columncontent_0_bottomrow_0_form_A8BF483419174F97A2830E12CBCF7E4F_form_A8BF483419174F97A2830E12CBCF7E4F_eventcount",tracking: true})
});
</script>
一旦我把一個破發點這裏,我終於能夠跟蹤到_create方法的jQuery。在sc.webform.js中定義的UI小部件。調用_create的代碼實際上在jQuery.UI庫中。有點有道理,對吧?
最後,執行內部_create代碼,模糊事件被綁定到TrackEvents方法,在小部件中還規定:
_trackEvents: function(events) {
$scw.ajax({
type: 'POST',
url: "/sitecore modules/web/Web Forms for Marketers/Tracking.aspx" + location.search,
data: {track: JSON.stringify(events)},
dataType: 'json'
});
什麼沒有意義,現在是,即使我終於可以看到每當我在WFFM表單中從一個字段到另一個字段進行標記時,都會調用trackEvents(爲什麼在對我來說是陌生的之前不工作),我沒有看到WFFM DB中記錄的任何數據。我甚至嘗試在DB快速查詢:
select f.Timestamp, f.StorageName, fi.Value, fi.FieldName
from Form f
inner join Field fi on f.Id = fi.FormId
order by f.Timestamp desc, FieldName
有誰知道是Tracking.aspx應該在哪裏保存拍攝的現場信息?
您是否正確安裝了WFFM模塊?您能否確認DMS本身是通過分析報告工作的? – 2012-02-08 15:49:38
馬克,DMS 2.0工作正常。如果我將廣告系列和目標添加到除WFFM表單以外的任何其他頁面,則它們會被記錄得很好。我們剛剛從Sitecore 6.2升級到6.5並安裝了DMS 2.0(我們曾經有OMS,但沒有使用,所以我們從頭開始安裝了DMS 2.0)。我們還將WFFM升級到最新版本。 WFFM的工作原理是,它在表單提交時記錄數據庫中的內容,並在提交時執行各種操作(即保存到CRM等)。那些不起作用的東西只與DMS有關,至少這是目前看來的東西...... – 2012-02-08 16:36:43